From 1c82571504174fba279276a80ea8dac28a674c1e Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期四, 24 十月 2024 12:30:45 +0800
Subject: [PATCH] 优化了泵计算属性和计算结果缓存问题

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/02-pump/HydroPumpPropertyViewModel.cs |  103 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 101 insertions(+), 2 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/02-pump/HydroPumpPropertyViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/02-pump/HydroPumpPropertyViewModel.cs
index 563eb7e..58ec2bd 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/02-pump/HydroPumpPropertyViewModel.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/02-pump/HydroPumpPropertyViewModel.cs
@@ -5,7 +5,7 @@
     /// <summary>
     /// 姘存车灞炴�ц鍥�
     /// </summary>
-    public class HydroPumpPropertyViewModel : HydroLinkPropertyViewModel
+    public class HydroPumpPropertyViewModel : HydroLinkPropertyViewModel, IHydroCalcuPumpResult
     {
         /// <summary>
         /// 
@@ -203,6 +203,92 @@
 
 
         /// <summary>
+        /// 娴侀噺
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("娴侀噺")]
+        [PropertyOrder(10001)]
+        [DisplayUnit("m鲁/h")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(false)]
+        public override double? CalcuFlow { get; set; }
+
+        /// <summary>
+        /// 娴侀��
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("娴侀��")]
+        [PropertyOrder(10002)]
+        [DisplayUnit("m/s")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(false)]
+        public override double? CalcuVelocity { get; set; }
+
+        /// <summary>
+        /// 姘村ご鎹熷け
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("姘村ご鎹熷け")]
+        [PropertyOrder(10003)]
+        [DisplayUnit("m")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(false)]
+        public override double? CalcuHeadLoss { get; set; }
+
+
+        /// <summary>
+        /// 娴侀噺
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("娴侀噺")]
+        [PropertyOrder(11001)]
+        [DisplayUnit("m鲁/h")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(true)]
+        public double? CalcuQ { get; set; }
+
+        /// <summary>
+        /// 鎵▼
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("鎵▼")]
+        [PropertyOrder(11002)]
+        [DisplayUnit("m")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(true)]
+        public double? CalcuH { get; set; }
+
+        /// <summary>
+        /// 鍔熺巼
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("鍔熺巼")]
+        [PropertyOrder(11003)]
+        [DisplayUnit("kW")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(true)]
+        public double? CalcuP { get; set; }
+
+        /// <summary>
+        /// 鏁堢巼
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("鏁堢巼")]
+        [PropertyOrder(11004)]
+        [DisplayUnit("%")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        [Browsable(true)]
+        public double? CalcuE { get; set; }
+
+
+        /// <summary>
         /// 鏇存柊灞炴��
         /// </summary>
         public override void UpdateProperty(HydroParterInfo rhs, List<HydroParterInfo> allParterList)
@@ -237,7 +323,20 @@
             }
         }
 
-
+        /// <summary>
+        /// 鏇存柊璁$畻灞炴��
+        /// </summary>
+        public override void UpdateCalcuProperty(IHydroCalcuResult rhs)
+        {
+            base.UpdateCalcuProperty(rhs);
+            if (rhs is IHydroCalcuPumpResult calcuPumpProperty)
+            {
+                this.CalcuQ = calcuPumpProperty.CalcuQ.HasValue ? Math.Round(calcuPumpProperty.CalcuQ.Value, 1) : null;
+                this.CalcuH = calcuPumpProperty.CalcuH.HasValue ? Math.Round(calcuPumpProperty.CalcuH.Value, 2) : null;
+                this.CalcuP = calcuPumpProperty.CalcuP.HasValue ? Math.Round(calcuPumpProperty.CalcuP.Value, 1) : null;
+                this.CalcuE = calcuPumpProperty.CalcuE.HasValue ? Math.Round(calcuPumpProperty.CalcuE.Value, 1) : null;
+            }
+        }
 
     }
 }

--
Gitblit v1.9.3