lixiaojun
2024-10-24 1c82571504174fba279276a80ea8dac28a674c1e
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;
            }
        }
    }
}