using DevExpress.XtraEditors; using System; using System.Windows.Forms; using ZJ_BYD.Common; using ZJ_BYD.DB; using ZJ_BYD.Model; using ZJ_BYD.Untils; namespace ZJ_BYD.UserControls.MachineType { public partial class EditMachineType : XtraForm { public EditMachineType(int id = 0) { InitializeComponent(); if (id > 0) { GetMachineTypeById(id); } } private void GetMachineTypeById(int id) { var model = MachineTypeHelper.QueryActiveMachines().First(m => m.Id == id); if (model != null) { this.lblId.Text = model.Id.ToString(); this.txtMachineTypeCode.Text = model.MachineTypeCode; this.txtMachineTypeName.Text = model.MachineTypeName; } } private void btnCancel_Click(object sender, EventArgs e) { this.Close(); } private void btnSave_Click(object sender, EventArgs e) { int row; var t_MachineType = new T_MachineType(); var flag = this.RegexSave(new Control[] { txtMachineTypeCode, txtMachineTypeName }, out _); if (!flag) { return; } splashScreenManager1.ShowWaitForm(); if (string.IsNullOrWhiteSpace(lblId.Text)) { t_MachineType.IpcId = Program.CurrentIpcId; t_MachineType.LineCode = Program.CurrentLineCode; t_MachineType.MachineTypeCode = this.txtMachineTypeCode.Text.Trim(); t_MachineType.MachineTypeName = this.txtMachineTypeName.Text.Trim(); t_MachineType.CreatedBy = CurrentUser.UserName; t_MachineType.CreatedTime = DateTime.Now; if (CheckIsExistMachineTypeCode(t_MachineType.IpcId, t_MachineType.LineCode, t_MachineType.MachineTypeCode)) { XtraMessageBox.Show("机型编码已存在!"); splashScreenManager1.CloseWaitForm(); return; } row = MachineTypeHelper.AddMachineType(t_MachineType); } else { t_MachineType.Id = int.Parse(lblId.Text); t_MachineType.IpcId = Program.CurrentIpcId; t_MachineType.LineCode = Program.CurrentLineCode; t_MachineType.MachineTypeCode = this.txtMachineTypeCode.Text.Trim(); t_MachineType.MachineTypeName = this.txtMachineTypeName.Text.Trim(); t_MachineType.UpdatedBy = CurrentUser.UserName; t_MachineType.UpdatedTime = DateTime.Now; if (CheckIsExistMachineTypeCode(t_MachineType.IpcId, t_MachineType.LineCode, t_MachineType.MachineTypeCode, t_MachineType.Id)) { XtraMessageBox.Show("机型编码已存在!"); splashScreenManager1.CloseWaitForm(); return; } row = MachineTypeHelper.UpdateMachineType(t_MachineType); } if (row <= 0) { XtraMessageBox.Show("操作失败!"); splashScreenManager1.CloseWaitForm(); return; } XtraMessageBox.Show("操作成功!"); DialogResult = DialogResult.OK; splashScreenManager1.CloseWaitForm(); this.Close(); } /// /// 校验机型编码是否存在 /// /// /// /// /// /// private bool CheckIsExistMachineTypeCode(string ipcId, string lineCode, string machineTypeCode, int id = 0) { var model = MachineTypeHelper.QueryActiveMachines() .Where(m => m.IpcId == ipcId && m.LineCode == lineCode && m.MachineTypeCode == machineTypeCode) .WhereIF(id > 0, m => m.Id != id) .First(); return model != null; } } }