From db26311246d1c1cecadf4a22dc44ffa570ee40f2 Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期二, 07 一月 2025 11:35:55 +0800
Subject: [PATCH] 批量修改数据同步修改

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/02-tank/SetHydroTankDlg.cs |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 54 insertions(+), 5 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/02-tank/SetHydroTankDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/02-tank/SetHydroTankDlg.cs
index 9b4953b..dc02013 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/02-tank/SetHydroTankDlg.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/02-tank/SetHydroTankDlg.cs
@@ -16,24 +16,37 @@
         /// </summary>
         public event Action<List<Yw.Model.HydroTankInfo>> ReloadDataEvent;
 
-        //鎵�鏈夋瀯浠跺垪琛�
-        private List<Yw.Model.HydroTankInfo> _allVisualList = null;
+        private List<Yw.Model.HydroTankInfo> _allVisualList = null;//鎵�鏈夋瀯浠跺垪琛�
+        private HydroChangeHelper _changeHelper = null;//鏀瑰彉杈呭姪绫�
+        private HydroPropStatusHelper _propStatusHelper = null;//灞炴�х姸鎬佽緟鍔╃被
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(Yw.Model.HydroTankInfo parter)
+        public void SetBindingData
+            (
+                Yw.Model.HydroTankInfo parter,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             var allParterList = parter == null ? null : new List<Yw.Model.HydroTankInfo>() { parter };
-            SetBindingData(allParterList);
+            SetBindingData(allParterList, changeHelper, propStatusHelper);
         }
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(List<Yw.Model.HydroTankInfo> allParterList)
+        public void SetBindingData
+            (
+                List<Yw.Model.HydroTankInfo> allParterList,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             _allVisualList = allParterList;
+            _changeHelper = changeHelper;
+            _propStatusHelper = propStatusHelper;
             if (_allVisualList != null && _allVisualList.Count == 1)
             {
                 var visual = _allVisualList.First();
@@ -42,6 +55,7 @@
                 this.txtMinLevel.EditValue = visual.MinLevel;
                 this.txtMaxLevel.EditValue = visual.MaxLevel;
                 this.txtDN.EditValue = visual.DN;
+                this.txtMinVol.EditValue = visual.MinVol;
             }
         }
 
@@ -57,28 +71,63 @@
             double? minLevel = this.txtMinLevel.EditValue == null ? null : double.Parse(this.txtMinLevel.EditValue.ToString());
             double? maxLevel = this.txtMaxLevel.EditValue == null ? null : double.Parse(this.txtMaxLevel.EditValue.ToString());
             double? dn = this.txtDN.EditValue == null ? null : double.Parse(this.txtDN.EditValue.ToString());
+            double? minVol = this.txtMinVol.EditValue == null ? null : double.Parse(this.txtMinVol.EditValue.ToString());
             _allVisualList.ForEach(x =>
             {
                 if (poolElev.HasValue)
                 {
+                    if (x.PoolElev != poolElev.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.PoolElev), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.PoolElev = poolElev.Value;
                 }
                 if (initLevel.HasValue)
                 {
+                    if (x.InitLevel != initLevel.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.InitLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.InitLevel = initLevel.Value;
                 }
                 if (minLevel.HasValue)
                 {
+                    if (x.MinLevel != minLevel.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.MinLevel = minLevel.Value;
                 }
                 if (maxLevel.HasValue)
                 {
+                    if (x.MaxLevel != maxLevel.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MaxLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.MaxLevel = maxLevel.Value;
                 }
                 if (dn.HasValue)
                 {
+                    if (x.DN != dn.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.DN), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.DN = dn.Value;
                 }
+                if (minVol.HasValue)
+                {
+                    if (x.MinVol != minVol.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinVol), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
+                    x.MinVol = minVol.Value;
+                }
             });
             this.ReloadDataEvent?.Invoke(_allVisualList);
             this.DialogResult = DialogResult.OK;

--
Gitblit v1.9.3