From 907a1579fecf2c160852cf99b3ea77c08eb481cc Mon Sep 17 00:00:00 2001
From: Shuxia Ning <NingShuxia0927@outlook.com>
Date: 星期二, 17 十二月 2024 09:44:04 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/03-junction/00-core/HydroJunctionViewModel.cs |   51 ++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 46 insertions(+), 5 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/03-junction/00-core/HydroJunctionViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/03-junction/00-core/HydroJunctionViewModel.cs
index 29dea97..57d57cc 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/03-junction/00-core/HydroJunctionViewModel.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/03-junction/00-core/HydroJunctionViewModel.cs
@@ -3,7 +3,7 @@
     /// <summary>
     /// 杩炴帴鑺傜偣
     /// </summary>
-    public class HydroJunctionViewModel : HydroNodeViewModel
+    public class HydroJunctionViewModel : HydroNodeViewModel, IHydroCalcuJunctionResult
     {
         /// <summary>
         /// 
@@ -23,8 +23,6 @@
             this.UpdatePropStatus(nameof(this.Demand), rhs, nameof(rhs.Demand));
             this.DemandPattern = rhs.DemandPattern;
             this.UpdatePropStatus(nameof(this.DemandPattern), rhs, nameof(rhs.DemandPattern));
-
-            this.Vmo = rhs;
         }
 
 
@@ -66,16 +64,33 @@
         [Category("鏁版嵁")]
         [DisplayName("闇�姘存ā寮�")]
         [Display(Name = "闇�姘存ā寮�")]
-        [IsHydroPatternPro(HydroPattern.Demand)]
+        [HydroPatternPro(HydroPattern.Demand)]
         [PropertyOrder(2004)]
         [Browsable(false)]
         public virtual string DemandPattern { get; set; }
 
         /// <summary>
+        /// 鍘嬪姏
+        /// </summary>
+        [Category("璁$畻缁撴灉")]
+        [DisplayName("鍘嬪姏")]
+        [Display(Name = "鍘嬪姏(m)")]
+        [DisplayUnit("m")]
+        [HydroCalcuPro]
+        [PropertyOrder(11002)]
+        [ShowEditor(false)]
+        [Browsable(true)]
+        public virtual double? CalcuPr { get; set; }
+
+        /// <summary>
         /// 
         /// </summary>
         [Browsable(false)]
-        public new Yw.Model.HydroJunctionInfo Vmo { get; set; }
+        public new Yw.Model.HydroJunctionInfo Vmo
+        {
+            get { return _vmo as Yw.Model.HydroJunctionInfo; }
+            set { _vmo = value; }
+        }
 
         /// <summary>
         /// 
@@ -93,7 +108,33 @@
             this.UpdatePropStatus(nameof(this.DemandPattern), this.Vmo, nameof(this.Vmo.DemandPattern));
         }
 
+        /// <summary>
+        /// 
+        /// </summary>
+        public override void UpdateVmoProperty()
+        {
+            base.UpdateVmoProperty();
+            this.Vmo.Elev = this.Elev;
+            this.Vmo.UpdatePropStatus(nameof(this.Vmo.Elev), this, nameof(this.Elev));
+            this.Vmo.MinorLoss = this.MinorLoss;
+            this.Vmo.UpdatePropStatus(nameof(this.Vmo.MinorLoss), this, nameof(this.MinorLoss));
+            this.Vmo.Demand = this.Demand;
+            this.Vmo.UpdatePropStatus(nameof(this.Vmo.Demand), this, nameof(this.Demand));
+            this.Vmo.DemandPattern = this.DemandPattern;
+            this.Vmo.UpdatePropStatus(nameof(this.Vmo.DemandPattern), this, nameof(this.DemandPattern));
+        }
 
+        /// <summary>
+        /// 鏇存柊璁$畻灞炴��
+        /// </summary>
+        public override void UpdateCalcuProperty(HydroCalcuVisualResult rhs)
+        {
+            base.UpdateCalcuProperty(rhs);
+            if (rhs is HydroCalcuJunctionResult calcuJunctionResult)
+            {
+                this.CalcuPr = calcuJunctionResult.CalcuPr.HasValue ? Math.Round(calcuJunctionResult.CalcuPr.Value, 2) : null;
+            }
+        }
 
 
     }

--
Gitblit v1.9.3