using Yw.Model;
|
|
namespace Yw.WinFrmUI
|
{
|
/// <summary>
|
/// 压力表属性视图
|
/// </summary>
|
public class HydroPressmeterPropertyViewModel : HydroJunctionPropertyViewModel
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public HydroPressmeterPropertyViewModel() : base() { }
|
|
/// <summary>
|
///
|
/// </summary>
|
public HydroPressmeterPropertyViewModel(Yw.Model.HydroPressmeterInfo rhs) : base(rhs)
|
{
|
this.CurrentPress = rhs.CurrentPress.HasValue ? Math.Round(rhs.CurrentPress.Value, 2) : null;
|
this.UpdatePropStatus(nameof(this.CurrentPress), rhs, nameof(rhs.CurrentPress));
|
}
|
|
/// <summary>
|
/// 压力
|
/// </summary>
|
[Category("数据")]
|
[DisplayName("压力")]
|
[DisplayUnit("m")]
|
[PropertyOrder(1001)]
|
[Browsable(true)]
|
public double? CurrentPress { get; set; }
|
|
/// <summary>
|
/// 自由压力
|
/// </summary>
|
[Category("计算结果")]
|
[DisplayName("自由压力")]
|
[PropertyOrder(10001)]
|
[DisplayUnit("m")]
|
[IsHydroCalcuPro(true)]
|
[ShowEditor(false)]
|
[Browsable(false)]
|
public override double? CalcuPress { get; set; }
|
|
/// <summary>
|
/// 绝对压力
|
/// </summary>
|
[Category("计算结果")]
|
[DisplayName("绝对压力")]
|
[PropertyOrder(10002)]
|
[DisplayUnit("m")]
|
[IsHydroCalcuPro(true)]
|
[ShowEditor(false)]
|
[Browsable(false)]
|
public override double? CalcuHead { get; set; }
|
|
/// <summary>
|
/// 需水量
|
/// </summary>
|
[Category("计算结果")]
|
[DisplayName("需水量")]
|
[PropertyOrder(10003)]
|
[DisplayUnit("m³/h")]
|
[IsHydroCalcuPro(true)]
|
[ShowEditor(false)]
|
[Browsable(false)]
|
public override double? CalcuDemand { get; set; }
|
|
/// <summary>
|
/// 压力
|
/// </summary>
|
[Category("计算结果")]
|
[DisplayName("压力")]
|
[PropertyOrder(11001)]
|
[DisplayUnit("m")]
|
[IsHydroCalcuPro(true)]
|
[ShowEditor(false)]
|
[Browsable(true)]
|
public double? CalcuPr { get; set; }
|
|
/// <summary>
|
/// 更新属性
|
/// </summary>
|
public override void UpdateProperty(HydroParterInfo rhs, List<HydroParterInfo> allParterList)
|
{
|
base.UpdateProperty(rhs, allParterList);
|
if (rhs is Yw.Model.HydroPressmeterInfo hydroPressmeterInfo)
|
{
|
this.CurrentPress = hydroPressmeterInfo.CurrentPress;
|
this.UpdatePropStatus(nameof(this.CurrentPress), hydroPressmeterInfo, nameof(hydroPressmeterInfo.CurrentPress));
|
}
|
}
|
|
/// <summary>
|
/// 更新计算属性
|
/// </summary>
|
public override void UpdateCalcuProperty(IHydroCalcuResult rhs)
|
{
|
base.UpdateCalcuProperty(rhs);
|
if (rhs is IHydroCalcuPressmeterResult calcuPressmeterProperty)
|
{
|
this.CalcuPr = calcuPressmeterProperty.CalcuPr.HasValue ? Math.Round(calcuPressmeterProperty.CalcuPr.Value, 2) : null;
|
}
|
}
|
|
}
|
}
|