From ad1a5544539174ad4ec0beeddef96fa17e4f32fc Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期二, 21 一月 2025 12:38:17 +0800
Subject: [PATCH] 增加阀门匹配水头损失曲线列表

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/08-fourlink/SetHydroFourlinkDlg.cs |   43 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 38 insertions(+), 5 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/08-fourlink/SetHydroFourlinkDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/08-fourlink/SetHydroFourlinkDlg.cs
index 1972925..1772578 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/08-fourlink/SetHydroFourlinkDlg.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/08-fourlink/SetHydroFourlinkDlg.cs
@@ -15,24 +15,37 @@
         /// </summary>
         public event Action<List<Yw.Model.HydroFourlinkInfo>> ReloadDataEvent;
 
-        //鎵�鏈夋瀯浠跺垪琛�
-        private List<Yw.Model.HydroFourlinkInfo> _allVisualList = null;
+        private List<Yw.Model.HydroFourlinkInfo> _allVisualList = null;//鎵�鏈夋瀯浠跺垪琛�
+        private HydroChangeHelper _changeHelper = null;//鏀瑰彉杈呭姪绫�
+        private HydroPropStatusHelper _propStatusHelper = null;//灞炴�х姸鎬佽緟鍔╃被
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(Yw.Model.HydroFourlinkInfo visual)
+        public void SetBindingData
+            (
+                Yw.Model.HydroFourlinkInfo visual,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             var allVisualList = visual == null ? null : new List<Yw.Model.HydroFourlinkInfo>() { visual };
-            SetBindingData(allVisualList);
+            SetBindingData(allVisualList, changeHelper, propStatusHelper);
         }
 
         /// <summary>
         /// 缁戝畾鏁版嵁
         /// </summary>
-        public void SetBindingData(List<Yw.Model.HydroFourlinkInfo> allVisualList)
+        public void SetBindingData
+            (
+                List<Yw.Model.HydroFourlinkInfo> allVisualList,
+                HydroChangeHelper changeHelper = null,
+                HydroPropStatusHelper propStatusHelper = null
+            )
         {
             _allVisualList = allVisualList;
+            _changeHelper = changeHelper;
+            _propStatusHelper = propStatusHelper;
             if (_allVisualList != null && _allVisualList.Count == 1)
             {
                 var visual = _allVisualList.First();
@@ -59,18 +72,38 @@
             {
                 if (elev.HasValue)
                 {
+                    if (x.Elev != elev.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.Elev), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.Elev = elev.Value;
                 }
                 if (minorLoss.HasValue)
                 {
+                    if (x.MinorLoss != minorLoss.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinorLoss), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.MinorLoss = minorLoss.Value;
                 }
                 if (!string.IsNullOrEmpty(material))
                 {
+                    if (x.Material != material)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.Material), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.Material = material;
                 }
                 if (caliber.HasValue)
                 {
+                    if (x.Caliber != caliber.Value)
+                    {
+                        _changeHelper.Append(x, eChangeType.Update);
+                        _propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.Caliber), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}閫氳繃璁剧疆缁勪欢淇敼");
+                    }
                     x.Caliber = caliber.Value;
                 }
             });

--
Gitblit v1.9.3