From bef933e7e166b085ba7e46e38ea62d9ae0129ec6 Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期一, 20 一月 2025 10:47:23 +0800
Subject: [PATCH] 远程API模式阶段性提交

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs |   59 +++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 47 insertions(+), 12 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs
index 53818d3..7c8c16a 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs
@@ -40,34 +40,54 @@
             get { return _allList != null && _allList.Count > 0; }
         }
 
-        //鎵�鏈夊垪琛�
-        private List<HydroFlowmeterViewModel> _allList = null;
-        //鎵�鏈夌粦瀹氬垪琛�
-        private List<HydroFlowmeterViewModel> _allBindingList = null;
+
+        private List<HydroFlowmeterViewModel> _allList = null;//鎵�鏈夊垪琛�
+        private List<HydroFlowmeterViewModel> _allBindingList = null;//鎵�鏈夌粦瀹氬垪琛�
+        private HydroChangeHelper _changeHelper = null;//鏀瑰彉杈呭姪绫�
+        private HydroPropStatusHelper _propStatusHelper = null;//灞炴�х姸鎬佽緟鍔╃被
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo)
+        public void SetBindingData
+            (
+                Yw.Model.HydroModelInfo hydroInfo,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
-            SetBindingData(hydroInfo, allCalcuResultVisualDict: null);
+            SetBindingData(hydroInfo, allCalcuResultVisualDict: null, changeHelper, propStatusHelper);
         }
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, List<HydroCalcuVisualResult> allCalcuResultList)
+        public void SetBindingData
+            (
+                Yw.Model.HydroModelInfo hydroInfo,
+                List<HydroCalcuVisualResult> allCalcuResultList,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             var allCalcuResultVisualDict = allCalcuResultList?.ToDictionary(x => x.Code);
-            SetBindingData(hydroInfo, allCalcuResultVisualDict);
+            SetBindingData(hydroInfo, allCalcuResultVisualDict, changeHelper, propStatusHelper);
         }
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(HydroModelInfo hydroInfo, Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict)
+        public void SetBindingData
+            (
+                HydroModelInfo hydroInfo,
+                Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             _allList = new List<HydroFlowmeterViewModel>();
+            _changeHelper = changeHelper;
+            _propStatusHelper = propStatusHelper;
             if (hydroInfo != null && hydroInfo.Flowmeters != null && hydroInfo.Flowmeters.Count > 0)
             {
                 foreach (var visual in hydroInfo.Flowmeters)
@@ -87,9 +107,16 @@
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(List<HydroVisualViewModel> allVisualViewModelList)
+        public void SetBindingData
+            (
+                List<HydroVisualViewModel> allVisualViewModelList,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             _allList = new List<HydroFlowmeterViewModel>();
+            _changeHelper = changeHelper;
+            _propStatusHelper = propStatusHelper;
             allVisualViewModelList?.ForEach(x =>
             {
                 if (x.Vmo.Catalog == Yw.Hydro.ParterCatalog.Flowmeter)
@@ -244,9 +271,13 @@
                 return;
             }
             var dlg = new SetHydroFlowmeterDlg();
-            dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList());
+            dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList(), _changeHelper, _propStatusHelper);
             dlg.ReloadDataEvent += (list) =>
             {
+                if (list == null || list.Count < 1)
+                {
+                    return;
+                }
                 _allBindingList.ForEach(x => x.UpdateProperty());
                 this.hydroFlowmeterViewModelBindingSource.ResetBindings(false);
                 var allVisualViewModelList = _allBindingList.Select(x => x as HydroVisualViewModel).ToList();
@@ -269,9 +300,13 @@
             if (e.Column == this.colSet)
             {
                 var dlg = new SetHydroFlowmeterDlg();
-                dlg.SetBindingData(row.Vmo);
+                dlg.SetBindingData(row.Vmo, _changeHelper, _propStatusHelper);
                 dlg.ReloadDataEvent += (list) =>
                 {
+                    if (list == null || list.Count < 1)
+                    {
+                        return;
+                    }
                     row.UpdateProperty();
                     this.gridView1.RefreshRow(e.RowHandle);
                     this.HydroChangedViewEvent?.Invoke(new List<HydroVisualViewModel>() { row });

--
Gitblit v1.9.3