From f1fac249aec3a5390152fa2a9a13e8da98283c3b Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期五, 20 十二月 2024 18:19:21 +0800 Subject: [PATCH] 水池修改 --- WinFrmUI/HStation.WinFrmUI.Assets.Core/14-tank/02-main/EditAssetsTankMainDlg.cs | 137 +++++++++++++++++++++++++++------------------ 1 files changed, 81 insertions(+), 56 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Assets.Core/14-tank/02-main/EditAssetsTankMainDlg.cs b/WinFrmUI/HStation.WinFrmUI.Assets.Core/14-tank/02-main/EditAssetsTankMainDlg.cs index b3b12f8..365dbf8 100644 --- a/WinFrmUI/HStation.WinFrmUI.Assets.Core/14-tank/02-main/EditAssetsTankMainDlg.cs +++ b/WinFrmUI/HStation.WinFrmUI.Assets.Core/14-tank/02-main/EditAssetsTankMainDlg.cs @@ -1,98 +1,123 @@ -锘縰sing DevExpress.Utils; -using DevExpress.XtraEditors.Controls; +锘縰sing DevExpress.XtraEditors; using HStation.Vmo; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Yw; -namespace HStation.WinFrmUI.Assets +namespace HStation.WinFrmUI { public partial class EditAssetsTankMainDlg : DevExpress.XtraEditors.XtraForm { public EditAssetsTankMainDlg() { InitializeComponent(); - // this.treeList1.InitialMultiColSettings(); this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; + this.layoutControl1.SetupLayoutControl(); + this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent; } - private Vmo.AssetsTankMainVmo _TankVmo = null; + /// <summary> + /// 杩斿洖鏁版嵁浜嬩欢 + /// </summary> + public event Action<HStation.Vmo.AssetsTankMainVmo> ReloadDataEvent; - private List<Vmo.AssetsTankCoefficientVmo> _AssetsTankCoefficient; + private HStation.Vmo.AssetsTankMainVmo _vmo = null; - public async void SetBindingData(Vmo.AssetsTankMainVmo TankVmo) + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> + public async void SetBindingData(HStation.Vmo.AssetsTankMainVmo vmo) { - var bll = new BLL.AssetsTankCoefficient(); - _AssetsTankCoefficient = await bll.GetAll(); - this.TankCoefficientViewModelBindingSource.DataSource = _AssetsTankCoefficient; - - _TankVmo = TankVmo; - this.TextEditName.Text = _TankVmo.Name; - this.DescriptionTextEdit.Text = _TankVmo.Description; - this.TextEditKeyWord.Text = string.Join(",", _TankVmo.KeyWord); - this.selectFlagsPopupCtrl1.SetBindingData<AssetsFlags>(_TankVmo.Flags); - this.textEditDN.Text = _TankVmo.DN.ToString(); - this.textEditMinLevel.Text = _TankVmo.MinLevel.ToString(); - this.textEditMaxLevel.Text = _TankVmo.MaxLevel.ToString(); - this.textEditMinVol.Text = _TankVmo.MinVol.ToString(); - this.textEditVoerFlow.Checked = _TankVmo.OverFlow; + if (vmo == null) + { + return; + } + _vmo = new Vmo.AssetsTankMainVmo(vmo); + this.txtName.EditValue = vmo.Name; + this.txtKeyWord.EditValue = HStation.Service.Assets.KeyWordHelper.ToString(vmo.KeyWords); + var flags = await BLLFactory<Yw.BLL.SysFlag>.Instance.GetBySysType(HStation.Assets.DataType.TankMain); + this.setFlagsEditCtrl1.SetBindingData(flags?.Select(x => x.Name).ToList(), vmo.Flags); + this.txtTagName.EditValue = vmo.TagName; + this.txtDescription.EditValue = vmo.Description; + this.txtDN.Text = vmo.DN.ToString(); + this.txtMinLevel.Text = vmo.MinLevel.ToString(); + this.txtMaxLevel.Text = vmo.MaxLevel.ToString(); + this.txtMinVol.Text = vmo.MinVol.ToString(); + this.textEditVoerFlow.Checked = vmo.OverFlow; } - public event Func<Vmo.AssetsTankMainVmo, Task<bool>> ReloadDataEvent = null; - - //鏁版嵁楠岃瘉 - private bool Valid() + //楠岃瘉 + private async Task<bool> Valid() { this.dxErrorProvider1.ClearErrors(); - if (string.IsNullOrEmpty(TextEditName.Text.Trim())) + if (string.IsNullOrEmpty(this.txtName.Text.Trim())) { - this.dxErrorProvider1.SetError(this.TextEditName, "蹇呭~椤�"); + this.dxErrorProvider1.SetError(this.txtName, "蹇呭~椤�"); return false; + } + var tagname = this.txtTagName.Text.Trim(); + if (!string.IsNullOrEmpty(tagname)) + { + if (await BLLFactory<HStation.BLL.AssetsTankMain>.Instance.IsExistTagNameExceptID(tagname, _vmo.ID)) + { + this.dxErrorProvider1.SetError(this.txtTagName, "閲嶅"); + return false; + } } return true; } - //瀹屾垚 - private async void BtnOk_ClickAsync(object sender, EventArgs e) + //纭畾 + private async void GeneralOkAndCancelCtrl1_OkEvent() { - if (!(Valid())) + if (_vmo == null) + { return; - _TankVmo.Description = DescriptionTextEdit.Text.Trim(); - _TankVmo.Name = TextEditName.Text.Trim(); - _TankVmo.KeyWord = TextEditKeyWord.Text.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList(); - _TankVmo.Flags = this.selectFlagsPopupCtrl1.SelectedFlags; - if (double.TryParse(this.textEditDN.Text, out double DN)) - { - _TankVmo.DN = DN; } - if (double.TryParse(this.textEditMinLevel.Text, out double MinLevel)) + if (!await Valid()) { - _TankVmo.MinLevel = MinLevel; + return; } - if (double.TryParse(this.textEditMaxLevel.Text, out double MaxLevel)) + _vmo.Name = this.txtName.Text.Trim(); + _vmo.KeyWords = HStation.Service.Assets.KeyWordHelper.ToList(this.txtKeyWord.Text.Trim()); + _vmo.Flags = this.setFlagsEditCtrl1.SelectedFlagList; + _vmo.TagName = this.txtTagName.Text.Trim(); + _vmo.Description = this.txtDescription.Text.Trim(); + if (double.TryParse(this.txtDN.Text, out double DN)) { - _TankVmo.MaxLevel = MaxLevel; + _vmo.DN = DN; } - if (double.TryParse(this.textEditMinVol.Text, out double MinVol)) + if (double.TryParse(this.txtMinLevel.Text, out double MinLevel)) { - _TankVmo.MinVol = MinVol; + _vmo.MinLevel = MinLevel; } - _TankVmo.OverFlow = this.textEditVoerFlow.Checked; - if (await this.ReloadDataEvent.Invoke(_TankVmo)) + if (double.TryParse(this.txtMaxLevel.Text, out double MaxLevel)) { - TipFormHelper.ShowSucceed("淇敼鎴愬姛!"); + _vmo.MaxLevel = MaxLevel; } - else + if (double.TryParse(this.txtMinVol.Text, out double MinVol)) { - TipFormHelper.ShowSucceed("淇敼澶辫触!"); + _vmo.MinVol = MinVol; } + _vmo.OverFlow = this.textEditVoerFlow.Checked; + + var bol = await BLLFactory<HStation.BLL.AssetsTankMain>.Instance.Update(_vmo); + if (!bol) + { + TipFormHelper.ShowError("鏇存柊澶辫触锛�"); + return; + } + var vmo = await BLLFactory<HStation.BLL.AssetsTankMain>.Instance.GetByID(_vmo.ID); + this.ReloadDataEvent?.Invoke(vmo); this.DialogResult = DialogResult.OK; this.Close(); - } - - private void treeList1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e) - { - var vm = this.treeList1.GetCurrentViewModel(_AssetsTankCoefficient); - if (vm == null) - return; - this.TextEditMinorLoss.Text = vm.MinorLoss.ToString(); } } } \ No newline at end of file -- Gitblit v1.9.3