From 4cb1f00f84d160f97afd0fb86cf600e1be667dd5 Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期四, 17 十月 2024 11:22:15 +0800
Subject: [PATCH] 水力组件更新

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs |  129 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 129 insertions(+), 0 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs
new file mode 100644
index 0000000..0e8a258
--- /dev/null
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs
@@ -0,0 +1,129 @@
+锘縰sing Yw.Model;
+
+namespace Yw.WinFrmUI
+{
+    /// <summary>
+    /// 绠℃灞炴�ц鍥�
+    /// </summary>
+    public class HydroLinkPropertyViewModel : HydroParterPropertyViewModel, IHydroCalcuLinkResult
+    {
+        /// <summary>
+        /// 
+        /// </summary>
+        public HydroLinkPropertyViewModel() : base() { }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public HydroLinkPropertyViewModel(Yw.Model.HydroLinkInfo rhs) : base(rhs)
+        {
+            this.StartCode = rhs.StartCode;
+            this.UpdatePropStatus(nameof(this.StartCode), rhs, nameof(rhs.StartCode));
+            this.EndCode = rhs.EndCode;
+            this.UpdatePropStatus(nameof(this.EndCode), rhs, nameof(rhs.EndCode));
+            this.LinkStatus = HydroLinkStatusHelper.GetStatusName(rhs.LinkStatus);
+            this.UpdatePropStatus(nameof(this.LinkStatus), rhs, nameof(rhs.LinkStatus));
+        }
+
+        /// <summary>
+        /// 涓婃父鑺傜偣
+        /// </summary>
+        [Category("鍩虹淇℃伅")]
+        [DisplayName("涓婃父鑺傜偣")]
+        [PropertyOrder(11)]
+        [Browsable(true)]
+        [ShowEditor(false)]
+        public string StartCode { get; set; }
+
+        /// <summary>
+        /// 涓嬫父鑺傜偣
+        /// </summary>
+        [Category("鍩虹淇℃伅")]
+        [DisplayName("涓嬫父鑺傜偣")]
+        [PropertyOrder(12)]
+        [Browsable(true)]
+        [ShowEditor(false)]
+        public string EndCode { get; set; }
+
+        /// <summary>
+        /// 绠℃鐘舵��
+        /// </summary>
+        [Category("鏁版嵁")]
+        [DisplayName("绠℃鐘舵��")]
+        [PropertyOrder(13)]
+        [Browsable(true)]
+        public virtual string LinkStatus { get; set; }
+
+        /// <summary>
+        /// 娴侀噺
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("娴侀噺")]
+        [PropertyOrder(10001)]
+        [Browsable(true)]
+        [DisplayUnit("m鲁/h")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        public double? CalcuFlow { get; set; }
+
+        /// <summary>
+        /// 娴侀��
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("娴侀��")]
+        [PropertyOrder(10002)]
+        [Browsable(true)]
+        [DisplayUnit("m/s")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        public double? CalcuVelocity { get; set; }
+
+        /// <summary>
+        /// 姘村ご鎹熷け
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("姘村ご鎹熷け")]
+        [PropertyOrder(10003)]
+        [Browsable(true)]
+        [DisplayUnit("m")]
+        [IsHydroCalcuPro(true)]
+        [ShowEditor(false)]
+        public double? CalcuHeadLoss { get; set; }
+
+        /// <summary>
+        /// 鏇存柊灞炴��
+        /// </summary>
+        /// <param name="rhs"></param>
+        /// <param name="allParterList"></param>
+        public override void UpdateProperty(HydroParterInfo rhs, List<HydroParterInfo> allParterList)
+        {
+            base.UpdateProperty(rhs, allParterList);
+            if (rhs is Yw.Model.HydroLinkInfo hydroLinkInfo)
+            {
+                this.StartCode = hydroLinkInfo.StartCode;
+                this.UpdatePropStatus(nameof(this.StartCode), hydroLinkInfo, nameof(hydroLinkInfo.StartCode));
+                this.EndCode = hydroLinkInfo.EndCode;
+                this.UpdatePropStatus(nameof(this.EndCode), hydroLinkInfo, nameof(hydroLinkInfo.EndCode));
+                this.LinkStatus = HydroLinkStatusHelper.GetStatusName(hydroLinkInfo.LinkStatus);
+                this.UpdatePropStatus(nameof(this.LinkStatus), hydroLinkInfo, nameof(hydroLinkInfo.LinkStatus));
+            }
+        }
+
+        /// <summary>
+        /// 鏇存柊璁$畻灞炴��
+        /// </summary>
+        /// <param name="rhs"></param>
+        public override void UpdateCalcuProperty(IHydroCalcuResult rhs)
+        {
+            base.UpdateCalcuProperty(rhs);
+            if (rhs is IHydroCalcuLinkResult calcuLinkProperty)
+            {
+                this.CalcuFlow = calcuLinkProperty.CalcuFlow ?? Math.Round(calcuLinkProperty.CalcuFlow.Value, 1);
+                this.CalcuVelocity = calcuLinkProperty.CalcuVelocity ?? Math.Round(calcuLinkProperty.CalcuVelocity.Value, 2);
+                this.CalcuHeadLoss = calcuLinkProperty.CalcuHeadLoss ?? Math.Round(calcuLinkProperty.CalcuHeadLoss.Value, 2);
+            }
+        }
+
+
+    }
+}

--
Gitblit v1.9.3