lixiaojun
2024-12-09 616652a5ae2deb9439ffd3cbb9d972c0a8990bc5
WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/01-source/02-tank/00-core/HydroTankViewModel.cs
@@ -40,9 +40,10 @@
        /// </summary>
        [Category("数据")]
        [DisplayName("池底标高")]
        [Display(Name = "池底标高(m)")]
        [PropertyOrder(1001)]
        [DisplayUnit("m")]
        [Display(Name = "池底标高(m)")]
        [HydroMarkPro]
        [PropertyOrder(1001)]
        [Browsable(true)]
        public double PoolElev { get; set; }
@@ -51,9 +52,10 @@
        /// </summary>
        [Category("数据")]
        [DisplayName("初始水位")]
        [Display(Name = "初始水位(m)")]
        [PropertyOrder(1002)]
        [DisplayUnit("m")]
        [Display(Name = "初始水位(m)")]
        [HydroMarkPro]
        [PropertyOrder(1002)]
        [Browsable(true)]
        public double InitLevel { get; set; }
@@ -62,9 +64,10 @@
        /// </summary>
        [Category("数据")]
        [DisplayName("最低水位")]
        [Display(Name = "最低水位(m)")]
        [PropertyOrder(1003)]
        [DisplayUnit("m")]
        [Display(Name = "最低水位(m)")]
        [HydroMarkPro]
        [PropertyOrder(1003)]
        [Browsable(true)]
        public double MinLevel { get; set; }
@@ -73,9 +76,10 @@
        /// </summary>
        [Category("数据")]
        [DisplayName("最高水位")]
        [Display(Name = "最高水位(m)")]
        [PropertyOrder(1004)]
        [DisplayUnit("m")]
        [Display(Name = "最高水位(m)")]
        [HydroMarkPro]
        [PropertyOrder(1004)]
        [Browsable(true)]
        public double MaxLevel { get; set; }
@@ -84,9 +88,10 @@
        /// </summary>
        [Category("数据")]
        [DisplayName("公称直径")]
        [Display(Name = "公称直径(m)")]
        [PropertyOrder(1005)]
        [DisplayUnit("m")]
        [Display(Name = "公称直径(m)")]
        [HydroMarkPro]
        [PropertyOrder(1005)]
        [Browsable(true)]
        public double DN { get; set; }
@@ -95,9 +100,10 @@
        /// </summary>
        [Category("数据")]
        [DisplayName("最小容积")]
        [Display(Name = "最小容积(m³)")]
        [PropertyOrder(1006)]
        [DisplayUnit("m³")]
        [Display(Name = "最小容积(m³)")]
        [HydroMarkPro]
        [PropertyOrder(1006)]
        [Browsable(true)]
        public double MinVol { get; set; }
@@ -108,7 +114,8 @@
        [DisplayName("容积曲线")]
        [Display(Name = "容积曲线")]
        [PropertyOrder(1007)]
        [IsHydroCurvePro(HydroCurve.Tank)]
        [HydroCurvePro(HydroCurve.Tank, HydroCurveType.CurveVol)]
        [ShowEditorInView(true)]
        [Browsable(true)]
        public string Curve
        {
@@ -129,7 +136,8 @@
        [DisplayName("容积曲线")]
        [Display(Name = "容积曲线")]
        [PropertyOrder(1008)]
        [IsHydroCurvePro(HydroCurve.TankVol)]
        [HydroCurvePro(HydroCurve.TankVol, HydroCurveType.CurveVol)]
        [ShowEditorInView(true)]
        [Browsable(false)]
        public string VolCurve { get; set; }
@@ -173,7 +181,29 @@
            this.UpdatePropStatus(nameof(this.OverFlow), this.Vmo, nameof(this.Vmo.OverFlow));
        }
        /// <summary>
        ///
        /// </summary>
        public override void UpdateVmoProperty()
        {
            base.UpdateVmoProperty();
            this.Vmo.PoolElev = Math.Round(this.PoolElev, 4);
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.PoolElev), this, nameof(this.PoolElev));
            this.Vmo.InitLevel = Math.Round(this.InitLevel, 4);
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.InitLevel), this, nameof(this.InitLevel));
            this.Vmo.MinLevel = Math.Round(this.MinLevel, 4);
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.MinLevel), this, nameof(this.MinLevel));
            this.Vmo.MaxLevel = Math.Round(this.MaxLevel, 4);
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.MaxLevel), this, nameof(this.MaxLevel));
            this.Vmo.DN = Math.Round(this.DN, 4);
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.DN), this, nameof(this.DN));
            this.Vmo.MinVol = Math.Round(this.MinVol, 4);
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.MinVol), this, nameof(this.MinVol));
            this.Vmo.VolCurve = this.VolCurve;
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.VolCurve), this, nameof(this.VolCurve));
            this.Vmo.OverFlow = this.OverFlow;
            this.Vmo.UpdatePropStatus(nameof(this.Vmo.OverFlow), this, nameof(this.OverFlow));
        }