using Yw.Model;
|
|
namespace Yw.WinFrmUI
|
{
|
/// <summary>
|
/// 流量计属性视图
|
/// </summary>
|
public class HydroFlowmeterPropertyViewModel : HydroJunctionPropertyViewModel, IHydroCalcuFlowmeterResult
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public HydroFlowmeterPropertyViewModel() : base() { }
|
|
/// <summary>
|
///
|
/// </summary>
|
public HydroFlowmeterPropertyViewModel(Yw.Model.HydroFlowmeterInfo rhs) : base(rhs)
|
{
|
this.CurrentFlow = rhs.CurrentFlow;
|
this.UpdatePropStatus(nameof(this.CurrentFlow), rhs, nameof(rhs.CurrentFlow));
|
}
|
|
|
/// <summary>
|
/// 流量
|
/// </summary>
|
[Category("数据")]
|
[DisplayName("流量")]
|
[PropertyOrder(1001)]
|
[Browsable(true)]
|
public double? CurrentFlow { get; set; }
|
|
/// <summary>
|
/// 流量
|
/// </summary>
|
[Category("计算结果")]
|
[DisplayName("流量")]
|
[PropertyOrder(11001)]
|
[DisplayUnit("m³/h")]
|
[IsHydroCalcuPro(true)]
|
[ShowEditor(false)]
|
[Browsable(true)]
|
public double? CalcuQ { get; set; }
|
|
|
/// <summary>
|
/// 更新属性
|
/// </summary>
|
public override void UpdateProperty(HydroParterInfo rhs, List<HydroParterInfo> allParterList)
|
{
|
base.UpdateProperty(rhs, allParterList);
|
if (rhs is Yw.Model.HydroFlowmeterInfo hydroFlowmeterInfo)
|
{
|
this.CurrentFlow = hydroFlowmeterInfo.CurrentFlow;
|
this.UpdatePropStatus(nameof(this.CurrentFlow), hydroFlowmeterInfo, nameof(hydroFlowmeterInfo.CurrentFlow));
|
}
|
}
|
|
/// <summary>
|
/// 更新计算属性
|
/// </summary>
|
public override void UpdateCalcuProperty(IHydroCalcuResult rhs)
|
{
|
base.UpdateCalcuProperty(rhs);
|
if (rhs is IHydroCalcuFlowmeterResult calcuFlowmeterProperty)
|
{
|
this.CalcuQ = calcuFlowmeterProperty.CalcuQ.HasValue ? Math.Round(calcuFlowmeterProperty.CalcuQ.Value, 1) : null;
|
}
|
}
|
|
}
|
}
|