using Yw.Model; namespace Yw.WinFrmUI { /// /// 阀门属性视图 /// public class HydroValvePropertyViewModel : HydroLinkPropertyViewModel { /// /// /// public HydroValvePropertyViewModel() { } /// /// /// public HydroValvePropertyViewModel(Yw.Model.HydroValveInfo rhs) : base(rhs) { this.Material = rhs.Material; this.UpdatePropStatus(nameof(this.Material), rhs, nameof(rhs.Material)); this.Diameter = rhs.Diameter; this.UpdatePropStatus(nameof(this.Diameter), rhs, nameof(rhs.Diameter)); this.MinorLoss = rhs.MinorLoss; this.UpdatePropStatus(nameof(this.MinorLoss), rhs, nameof(rhs.MinorLoss)); this.ValveType = rhs.ValveType; this.UpdatePropStatus(nameof(this.ValveType), rhs, nameof(rhs.ValveType)); this.OpeningDegree = rhs.OpeningDegree; this.UpdatePropStatus(nameof(this.OpeningDegree), rhs, nameof(rhs.OpeningDegree)); this.ValveSetting = rhs.ValveSetting; this.UpdatePropStatus(nameof(this.ValveSetting), rhs, nameof(rhs.ValveSetting)); } /// /// 阀门状态 /// [Category("数据")] [DisplayName("阀门状态")] [PropertyOrder(13)] [Browsable(true)] [TypeConverter(typeof(HydroValveStatusConverter))] public override string LinkStatus { get; set; } /// /// 材料 /// [Category("数据")] [DisplayName("材料")] [PropertyOrder(100)] [Browsable(true)] public string Material { get; set; } /// /// 直径 /// [Category("数据")] [DisplayName("直径")] [PropertyOrder(101)] [Browsable(true)] [DisplayUnit("mm")] public double Diameter { get; set; } /// /// 局阻系数 /// [Category("数据")] [DisplayName("局阻系数")] [PropertyOrder(102)] [Browsable(true)] public double MinorLoss { get; set; } /// /// 阀门类型 /// [Category("数据")] [DisplayName("阀门类型")] [PropertyOrder(103)] [Browsable(true)] [TypeConverter(typeof(HydroValveTypeConverter))] public string ValveType { get; set; } /// /// 阀门开度 /// [Category("数据")] [DisplayName("阀门开度")] [PropertyOrder(104)] [Browsable(true)] public double OpeningDegree { get; set; } /// /// 阀门设置 /// [Category("数据")] [DisplayName("阀门设置")] [PropertyOrder(105)] [IsHydroCurvePro(HydroCurve.ValveQL)] [Browsable(true)] public string ValveSetting { get; set; } /// /// 更新属性 /// public override void UpdateProperty(HydroParterInfo rhs, List allParterList) { base.UpdateProperty(rhs, allParterList); if (rhs is Yw.Model.HydroValveInfo hydroValveInfo) { this.Material = hydroValveInfo.Material; this.UpdatePropStatus(nameof(this.Material), hydroValveInfo, nameof(hydroValveInfo.Material)); this.Diameter = hydroValveInfo.Diameter; this.UpdatePropStatus(nameof(this.Diameter), hydroValveInfo, nameof(hydroValveInfo.Diameter)); this.MinorLoss = hydroValveInfo.MinorLoss; this.UpdatePropStatus(nameof(this.MinorLoss), hydroValveInfo, nameof(hydroValveInfo.MinorLoss)); this.ValveType = hydroValveInfo.ValveType; this.UpdatePropStatus(nameof(this.ValveType), hydroValveInfo, nameof(hydroValveInfo.ValveType)); this.OpeningDegree = hydroValveInfo.OpeningDegree; this.UpdatePropStatus(nameof(this.OpeningDegree), hydroValveInfo, nameof(hydroValveInfo.OpeningDegree)); this.ValveSetting = hydroValveInfo.ValveSetting; this.UpdatePropStatus(nameof(this.ValveSetting), hydroValveInfo, nameof(hydroValveInfo.ValveSetting)); } } } }