DeviceManager/TsSFCDevice.Client.Launch/sysConfig/pageJumpCheckEdit.cs
2024-08-06 14:11:07 +08:00

101 lines
3.8 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Windows.Forms;
using DevExpress.XtraBars;
using DevExpress.XtraBars.ToolbarForm;
using DevExpress.XtraEditors;
using TsSFCDevice.Client.Launch.Common;
using DeviceRepair.Models;
using DeviceRepair.Utils;
using DevExpress.XtraEditors.DXErrorProvider;
namespace TsSFCDevice.Client.Launch.sysConfig
{
public partial class pageJumpCheckEdit : ToolbarForm
{
public DeviceInformationInfo CurrentDeviceInfo = null;
public DateTime? CheckDate { get { return (ipsCheckDate.EditValue + "").IsNull() ? null : (DateTime?)Convert.ToDateTime(ipsCheckDate.EditValue); } }
public pageJumpCheckEdit()
{
InitializeComponent();
}
private void ipsEquipmentID_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
if (e.Button.Kind == DevExpress.XtraEditors.Controls.ButtonPredefines.Clear)
{
CurrentDeviceInfo = null;
((sender as ButtonEdit)).EditValue = "";
}
else
{
using (pageDeivceView view = new pageDeivceView())
{
view.Text = "设备选择";
if (view.ShowDialog(this) == DialogResult.OK)
{
CurrentDeviceInfo = view.CurrentDeviceInfo;
ipsEquipmentID.EditValue = $"{view.CurrentDeviceInfo.EquipmentName}({view.CurrentDeviceInfo.EquipmentID})";
}
}
}
}
private void btnCommit_ItemClick(object sender, ItemClickEventArgs e)
{
try
{
InitializeValidationProvider();
if (dxValidationProvider1.Validate())
{
if (CurrentDeviceInfo == null)
throw new ArgumentException("校验的设备不能为空!");
if (!CheckDate.HasValue)
throw new ArgumentException("校验时间不能为空!");
if (CheckDate.Value < new DateTime(2000, 01, 01))
throw new ArgumentException("校验时间最小为2000年01月01日");
if (CheckDate.Value > new DateTime(2999, 12, 31))
throw new ArgumentException("校验时间最大为2999年12月31日");
this.DialogResult = DialogResult.OK;
}
}
catch (Exception ex)
{
XtraMessageBoxHelper.Error(ex.Message);
}
}
/// <summary>
/// 初始化验证控件
/// </summary>
private void InitializeValidationProvider()
{
try
{
dxValidationProvider1.RemoveControlError(ipsEquipmentID);
dxValidationProvider1.RemoveControlError(ipsCheckDate);
dxValidationProvider1 = new DXValidationProvider();
//实例化一个必填规则,错误提示为:该字段不能为空
ConditionValidationRule required = new ConditionValidationRule("RequiredRule", ConditionOperator.IsNotBlank) { ErrorText = $"字段不能为空" };
required.ErrorText = "请先选择设备";
dxValidationProvider1.SetValidationRule(ipsEquipmentID, required);
dxValidationProvider1.SetIconAlignment(ipsEquipmentID, ErrorIconAlignment.MiddleLeft);
required.ErrorText = "请选择校验日期";
dxValidationProvider1.SetValidationRule(ipsCheckDate, required);
dxValidationProvider1.SetIconAlignment(ipsCheckDate, ErrorIconAlignment.MiddleLeft);
}
catch (Exception ex)
{
XtraMessageBoxHelper.Error(ex.Message);
}
}
}
}