From c22cc4c60e9ff156fc25b39a5c024cc758df354b Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期一, 30 十二月 2024 09:40:51 +0800
Subject: [PATCH] 水力模块联动修改

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs |   98 +++++++-----------------------------------------
 1 files changed, 15 insertions(+), 83 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs
index cceae08..3a6682c 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs
@@ -97,89 +97,13 @@
             vm.CurveName = $"瑁呯疆绾�";
             vm.Color = Color.Black;
 
-            var startSourceMonitor = _allMonitorList?
-                .Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
-                { HStation.Xhs.Flags.姘存簮,HStation.Xhs.Flags.濮嬬,HStation.Xhs.Flags.榛樿});
-            if (startSourceMonitor == null)
-            {
-                startSourceMonitor = _allMonitorList?
-                .Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
-                { HStation.Xhs.Flags.姘存簮,HStation.Xhs.Flags.濮嬬});
-            }
-            if (startSourceMonitor != null)
-            {
-                var startSourceCalcuResult = _allCalcuResultVisualDict?.GetValue(startSourceMonitor.Relation);
-                if (startSourceCalcuResult != null)
-                {
-                    var startHead = startSourceCalcuResult.GetCalcuValue(startSourceMonitor.PropName);
-                    if (startHead.HasValue)
-                    {
-                        var endSourceMonitor = _allMonitorList?
-                                    .Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
-                                    { HStation.Xhs.Flags.姘存簮,HStation.Xhs.Flags.鏈,HStation.Xhs.Flags.榛樿});
-                        if (endSourceMonitor == null)
-                        {
-                            endSourceMonitor = _allMonitorList?
-                                        .Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
-                                        { HStation.Xhs.Flags.姘存簮,HStation.Xhs.Flags.鏈});
-                        }
-                        if (endSourceMonitor != null)
-                        {
-                            var endSouceCalcuResult = _allCalcuResultVisualDict?.GetValue(endSourceMonitor.Relation);
-                            if (endSouceCalcuResult != null)
-                            {
-                                var endHead = endSouceCalcuResult.GetCalcuValue(endSourceMonitor.PropName);
-                                if (endHead.HasValue)
-                                {
-                                    vm.StartH = Math.Round(endHead.Value - startHead.Value, 2);
-                                }
-                            }
-                        }
-                    }
+            var head = _hydroInfo.GetHead();
+            var pipeQ = _hydroInfo.GetPipeQ(_allCalcuResultVisualDict);
+            var pipeH = _hydroInfo.GetPipeHead(_allCalcuResultVisualDict);
 
-                }
-            }
-
-            var outPipeFlowMonitor = _allMonitorList?.Matching(HydroVisualCalcuProp.CalcuFlow, new List<string>()
-                            { HStation.Xhs.Flags.鎬荤,HStation.Xhs.Flags.鍑哄彛,HStation.Xhs.Flags.榛樿});
-            if (outPipeFlowMonitor == null)
-            {
-                outPipeFlowMonitor = _allMonitorList?.Matching(HydroVisualCalcuProp.CalcuFlow, new List<string>()
-                        { HStation.Xhs.Flags.鎬荤,HStation.Xhs.Flags.鍑哄彛});
-            }
-            if (outPipeFlowMonitor != null)
-            {
-                var outPipeFlowCalcuResult = _allCalcuResultVisualDict?.GetValue(outPipeFlowMonitor.Relation);
-                if (outPipeFlowCalcuResult != null)
-                {
-                    var outPipeFlow = outPipeFlowCalcuResult.GetCalcuValue(outPipeFlowMonitor.PropName);
-                    if (outPipeFlow.HasValue)
-                    {
-                        vm.PipeQ = Math.Round(outPipeFlow.Value, 1);
-                    }
-                }
-            }
-
-            var outPipeHeadMonitor = _allMonitorList?.Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
-                            { HStation.Xhs.Flags.鎬荤,HStation.Xhs.Flags.鍑哄彛,HStation.Xhs.Flags.榛樿});
-            if (outPipeHeadMonitor == null)
-            {
-                outPipeHeadMonitor = _allMonitorList?.Matching(HydroVisualCalcuProp.CalcuHead, new List<string>()
-                            { HStation.Xhs.Flags.鎬荤,HStation.Xhs.Flags.鍑哄彛});
-            }
-
-            if (outPipeHeadMonitor != null)
-            {
-                var outPipeHeadCalcuResult = _allCalcuResultVisualDict?.GetValue(outPipeHeadMonitor.Relation);
-                if (outPipeHeadCalcuResult != null)
-                {
-                    var outPipeHead = outPipeHeadCalcuResult.GetCalcuValue(outPipeHeadMonitor.PropName);
-                    if (outPipeHead.HasValue)
-                    {
-                        vm.PipeH = Math.Round(outPipeHead.Value, 2);
-                    }
-                }
-            }
+            vm.StartH = head;
+            vm.PipeQ = pipeQ ?? 0;
+            vm.PipeH = pipeH ?? 0;
 
             if (_hydroInfo.Pumps != null && _hydroInfo.Pumps.Count > 0)
             {
@@ -204,7 +128,7 @@
                             vmItem.E = calcuResult.CalcuE;
                         }
                         vmItem.Hz = Math.Round(pump.SpeedRatio * pump.RatedHz, 1);
-                        vmItem.N = pump.RatedN.HasValue ? Math.Round(pump.SpeedRatio * pump.RatedN.Value, 1) : 0;
+                        vmItem.N = pump.RatedN > 0 ? Math.Round(pump.SpeedRatio * pump.RatedN, 1) : 0;
 
 
                         var curveqh = _hydroInfo.Curves?.Find(x => x.Code == pump.CurveQH);
@@ -275,6 +199,14 @@
             this.pumpWorkingViewChart1.SetChartAxis();
         }
 
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="fileName"></param>
+        public void ExportToImage(string fileName)
+        {
+            this.pumpWorkingViewChart1.ExportToImage(fileName);
+        }
 
     }
 }

--
Gitblit v1.9.3