From a2ad15911dcde2d45cd546d5b8d7fb791f7afafd Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期二, 17 十二月 2024 09:04:18 +0800
Subject: [PATCH] 优化计算属性

---
 WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/02-visual/HydroVisualViewModel.cs |   55 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 30 insertions(+), 25 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/02-visual/HydroVisualViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/02-visual/HydroVisualViewModel.cs
index 3e0519e..567d6b9 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/02-visual/HydroVisualViewModel.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/02-visual/HydroVisualViewModel.cs
@@ -3,7 +3,7 @@
     /// <summary>
     /// 姘村姏鍙缁勪欢
     /// </summary>
-    public class HydroVisualViewModel : HydroParterViewModel
+    public class HydroVisualViewModel : HydroParterViewModel, IHydroCalcuVisualResult
     {
         /// <summary>
         /// 
@@ -15,63 +15,68 @@
         /// </summary>
         public HydroVisualViewModel(Yw.Model.HydroVisualInfo rhs, Yw.Model.HydroModelInfo hydroInfo) : base(rhs, hydroInfo)
         {
-            this.FlowDirection = rhs.FlowDirection;
-            this.UpdatePropStatus(nameof(this.FlowDirection), rhs, nameof(rhs.FlowDirection));
-            this.FlowDirectionX = rhs.FlowDirectionX;
+            this.FlowDirectionX = HydroFlowDirectionHelper.GetName(rhs.FlowDirectionX);
             this.UpdatePropStatus(nameof(this.FlowDirectionX), rhs, nameof(rhs.FlowDirectionX));
-            this.FlowDirectionY = rhs.FlowDirectionY;
+            this.FlowDirectionY = HydroFlowDirectionHelper.GetName(rhs.FlowDirectionY);
             this.UpdatePropStatus(nameof(this.FlowDirectionY), rhs, nameof(rhs.FlowDirectionY));
-
-            this.Vmo = rhs;
         }
 
-        /// <summary>
-        /// 娴佸悜
-        /// </summary>
-        [Category("鎷撴墤缁撴瀯")]
-        [DisplayName("娴佸悜")]
-        [PropertyOrder(101)]
-        [Browsable(true)]
-        public virtual int FlowDirection { get; set; }
 
         /// <summary>
         /// X娴佸悜
         /// </summary>
         [Category("鎷撴墤缁撴瀯")]
         [DisplayName("X娴佸悜")]
-        [PropertyOrder(102)]
+        [HydroFlowDirectionPro]
+        [PropertyOrder(101)]
         [Browsable(true)]
-        public virtual int FlowDirectionX { get; set; }
+        [TypeConverter(typeof(HydroFlowDirectionConverter))]
+        public virtual string FlowDirectionX { get; set; }
 
         /// <summary>
         /// Y娴佸悜
         /// </summary>
         [Category("鎷撴墤缁撴瀯")]
         [DisplayName("Y娴佸悜")]
-        [PropertyOrder(103)]
+        [HydroFlowDirectionPro]
+        [PropertyOrder(102)]
         [Browsable(true)]
-        public virtual int FlowDirectionY { get; set; }
+        [TypeConverter(typeof(HydroFlowDirectionConverter))]
+        public virtual string FlowDirectionY { get; set; }
 
         /// <summary>
         /// vmo
         /// </summary>
         [Browsable(false)]
-        public new Yw.Model.HydroVisualInfo Vmo { get; set; }
+        public new Yw.Model.HydroVisualInfo Vmo
+        {
+            get { return _vmo as Yw.Model.HydroVisualInfo; }
+            set { _vmo = value; }
+        }
 
         /// <summary>
-        /// 
+        /// 鏇存柊灞炴��
         /// </summary>
         public override void UpdateProperty()
         {
             base.UpdateProperty();
-            this.FlowDirection = this.Vmo.FlowDirection;
-            this.UpdatePropStatus(nameof(this.FlowDirection), this.Vmo, nameof(this.Vmo.FlowDirection));
-            this.FlowDirectionX = this.Vmo.FlowDirectionX;
+            this.FlowDirectionX = HydroFlowDirectionHelper.GetName(this.Vmo.FlowDirectionX);
             this.UpdatePropStatus(nameof(this.FlowDirectionX), this.Vmo, nameof(this.Vmo.FlowDirectionX));
-            this.FlowDirectionY = this.Vmo.FlowDirectionY;
+            this.FlowDirectionY = HydroFlowDirectionHelper.GetName(this.Vmo.FlowDirectionY);
             this.UpdatePropStatus(nameof(this.FlowDirectionY), this.Vmo, nameof(this.Vmo.FlowDirectionY));
         }
 
+        /// <summary>
+        /// 鏇存柊 Vmo 灞炴��
+        /// </summary>
+        public override void UpdateVmoProperty()
+        {
+            base.UpdateVmoProperty();
+            this.Vmo.FlowDirectionX = HydroFlowDirectionHelper.GetCode(this.FlowDirectionX);
+            this.Vmo.UpdatePropStatus(nameof(this.Vmo.FlowDirectionX), this, nameof(this.FlowDirectionX));
+            this.Vmo.FlowDirectionY = HydroFlowDirectionHelper.GetCode(this.FlowDirectionY);
+            this.Vmo.UpdatePropStatus(nameof(this.Vmo.FlowDirectionY), this, nameof(this.FlowDirectionY));
+        }
 
 
     }

--
Gitblit v1.9.3