From 4cb1f00f84d160f97afd0fb86cf600e1be667dd5 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期四, 17 十月 2024 11:22:15 +0800 Subject: [PATCH] 水力组件更新 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs | 129 +++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 129 insertions(+), 0 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs new file mode 100644 index 0000000..0e8a258 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-property/03-link/00-core/HydroLinkPropertyViewModel.cs @@ -0,0 +1,129 @@ +锘縰sing Yw.Model; + +namespace Yw.WinFrmUI +{ + /// <summary> + /// 绠℃灞炴�ц鍥� + /// </summary> + public class HydroLinkPropertyViewModel : HydroParterPropertyViewModel, IHydroCalcuLinkResult + { + /// <summary> + /// + /// </summary> + public HydroLinkPropertyViewModel() : base() { } + + /// <summary> + /// + /// </summary> + public HydroLinkPropertyViewModel(Yw.Model.HydroLinkInfo rhs) : base(rhs) + { + this.StartCode = rhs.StartCode; + this.UpdatePropStatus(nameof(this.StartCode), rhs, nameof(rhs.StartCode)); + this.EndCode = rhs.EndCode; + this.UpdatePropStatus(nameof(this.EndCode), rhs, nameof(rhs.EndCode)); + this.LinkStatus = HydroLinkStatusHelper.GetStatusName(rhs.LinkStatus); + this.UpdatePropStatus(nameof(this.LinkStatus), rhs, nameof(rhs.LinkStatus)); + } + + /// <summary> + /// 涓婃父鑺傜偣 + /// </summary> + [Category("鍩虹淇℃伅")] + [DisplayName("涓婃父鑺傜偣")] + [PropertyOrder(11)] + [Browsable(true)] + [ShowEditor(false)] + public string StartCode { get; set; } + + /// <summary> + /// 涓嬫父鑺傜偣 + /// </summary> + [Category("鍩虹淇℃伅")] + [DisplayName("涓嬫父鑺傜偣")] + [PropertyOrder(12)] + [Browsable(true)] + [ShowEditor(false)] + public string EndCode { get; set; } + + /// <summary> + /// 绠℃鐘舵�� + /// </summary> + [Category("鏁版嵁")] + [DisplayName("绠℃鐘舵��")] + [PropertyOrder(13)] + [Browsable(true)] + public virtual string LinkStatus { get; set; } + + /// <summary> + /// 娴侀噺 + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("娴侀噺")] + [PropertyOrder(10001)] + [Browsable(true)] + [DisplayUnit("m鲁/h")] + [IsHydroCalcuPro(true)] + [ShowEditor(false)] + public double? CalcuFlow { get; set; } + + /// <summary> + /// 娴侀�� + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("娴侀��")] + [PropertyOrder(10002)] + [Browsable(true)] + [DisplayUnit("m/s")] + [IsHydroCalcuPro(true)] + [ShowEditor(false)] + public double? CalcuVelocity { get; set; } + + /// <summary> + /// 姘村ご鎹熷け + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("姘村ご鎹熷け")] + [PropertyOrder(10003)] + [Browsable(true)] + [DisplayUnit("m")] + [IsHydroCalcuPro(true)] + [ShowEditor(false)] + public double? CalcuHeadLoss { get; set; } + + /// <summary> + /// 鏇存柊灞炴�� + /// </summary> + /// <param name="rhs"></param> + /// <param name="allParterList"></param> + public override void UpdateProperty(HydroParterInfo rhs, List<HydroParterInfo> allParterList) + { + base.UpdateProperty(rhs, allParterList); + if (rhs is Yw.Model.HydroLinkInfo hydroLinkInfo) + { + this.StartCode = hydroLinkInfo.StartCode; + this.UpdatePropStatus(nameof(this.StartCode), hydroLinkInfo, nameof(hydroLinkInfo.StartCode)); + this.EndCode = hydroLinkInfo.EndCode; + this.UpdatePropStatus(nameof(this.EndCode), hydroLinkInfo, nameof(hydroLinkInfo.EndCode)); + this.LinkStatus = HydroLinkStatusHelper.GetStatusName(hydroLinkInfo.LinkStatus); + this.UpdatePropStatus(nameof(this.LinkStatus), hydroLinkInfo, nameof(hydroLinkInfo.LinkStatus)); + } + } + + /// <summary> + /// 鏇存柊璁$畻灞炴�� + /// </summary> + /// <param name="rhs"></param> + public override void UpdateCalcuProperty(IHydroCalcuResult rhs) + { + base.UpdateCalcuProperty(rhs); + if (rhs is IHydroCalcuLinkResult calcuLinkProperty) + { + this.CalcuFlow = calcuLinkProperty.CalcuFlow ?? Math.Round(calcuLinkProperty.CalcuFlow.Value, 1); + this.CalcuVelocity = calcuLinkProperty.CalcuVelocity ?? Math.Round(calcuLinkProperty.CalcuVelocity.Value, 2); + this.CalcuHeadLoss = calcuLinkProperty.CalcuHeadLoss ?? Math.Round(calcuLinkProperty.CalcuHeadLoss.Value, 2); + } + } + + + } +} -- Gitblit v1.9.3