lixiaojun
2025-02-19 aaac84e4ed86d089c01c5b180e4249db73cc78d7
WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/03-node/03-junction/03-meter/HydroMeterViewModel.cs
@@ -3,7 +3,7 @@
    /// <summary>
    /// 水表视图
    /// </summary>
    public class HydroMeterViewModel : HydroJunctionViewModel
    public class HydroMeterViewModel : HydroJunctionViewModel, IHydroCalcuMeterResult
    {
        /// <summary>
        /// 
@@ -15,14 +15,44 @@
        /// </summary>
        public HydroMeterViewModel(Yw.Model.HydroMeterInfo rhs, Yw.Model.HydroModelInfo hydroInfo) : base(rhs, hydroInfo)
        {
            this.Vmo = rhs;
        }
        /// <summary>
        /// 流量
        /// </summary>
        [Category("计算结果")]
        [DisplayName("流量")]
        [DisplayUnit("m³/h")]
        [Display(Name = "流量(m³/h)")]
        [HydroCalcuPro]
        [PropertyOrder(11001)]
        [ShowEditor(false)]
        [Browsable(true)]
        public virtual double? CalcuQ { get; set; }
        /// <summary>
        /// 
        /// </summary>
        [Browsable(false)]
        public new Yw.Model.HydroMeterInfo Vmo { get; set; }
        public new Yw.Model.HydroMeterInfo Vmo
        {
            get { return _vmo as Yw.Model.HydroMeterInfo; }
            set { _vmo = value; }
        }
        /// <summary>
        /// 更新计算属性
        /// </summary>
        public override void UpdateCalcuProperty(HydroCalcuVisualResult rhs)
        {
            base.UpdateCalcuProperty(rhs);
            if (rhs is HydroCalcuMeterResult calcuMeterResult)
            {
                this.CalcuQ = calcuMeterResult.CalcuQ.HasValue ? Math.Round(calcuMeterResult.CalcuQ.Value, 1) : null;
            }
        }
    }
}