From b2b2686f9c49e9ce7c27fffaf76347b38f03f0aa Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 15 一月 2025 11:34:20 +0800 Subject: [PATCH] 增加水泵改变监测和调整上下游监测 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/04-resistance/00-core/HydroResistanceViewModel.cs | 119 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 92 insertions(+), 27 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/04-resistance/00-core/HydroResistanceViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/04-resistance/00-core/HydroResistanceViewModel.cs index dc970d3..e0f31eb 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/04-resistance/00-core/HydroResistanceViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/04-resistance/00-core/HydroResistanceViewModel.cs @@ -3,7 +3,7 @@ /// <summary> /// 缁勪欢瑙嗗浘 /// </summary> - public class HydroResistanceViewModel : HydroLinkViewModel + public class HydroResistanceViewModel : HydroLinkViewModel, IHydroCalcuResistanceResult { /// <summary> /// @@ -16,26 +16,18 @@ public HydroResistanceViewModel(Yw.Model.HydroResistanceInfo rhs, Yw.Model.HydroModelInfo hydroInfo) : base(rhs, hydroInfo) { this.LinkStatus = HydroResistanceStatusHelper.GetStatusName(rhs.LinkStatus); - this.UpdatePropStatus(nameof(this.LinkStatus), rhs, nameof(rhs.LinkStatus)); 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.CurveQL = rhs.CurveQL; - this.UpdatePropStatus(nameof(this.CurveQL), rhs, nameof(rhs.CurveQL)); - - this.Vmo = rhs; } /// <summary> - /// 寮�鍏崇姸鎬� + /// 妯″紡 /// </summary> [Category("鏁版嵁")] - [DisplayName("寮�鍏崇姸鎬�")] - [Display(Name = "寮�鍏崇姸鎬�")] - [Description("[榛樿]浣跨敤姘村ご鎹熷け鏇茬嚎锛沎寮�鍚痌浣跨敤灞�闃荤郴鏁�")] + [DisplayName("妯″紡")] + [Display(Name = "妯″紡")] [PropertyOrder(103)] [Browsable(true)] [TypeConverter(typeof(HydroResistanceStatusConverter))] @@ -74,9 +66,9 @@ /// </summary> [Category("鏁版嵁")] [DisplayName("姘村ご鎹熷け鏇茬嚎")] - [HydroCurvePro(HydroCurve.ResistanceQL, HydroCurveType.CurveQL)] + [HydroCurvePro(HydroCurve.Resistance, HydroCurveType.CurveQL)] [PropertyOrder(1004)] - [Browsable(true)] + [Browsable(false)] public virtual string Curve { get @@ -95,15 +87,84 @@ [Category("鏁版嵁")] [DisplayName("姘村ご鎹熷け鏇茬嚎")] [PropertyOrder(1005)] - [HydroCurvePro(HydroCurve.ResistanceQL, HydroCurveType.CurveQL)] + [HydroCurvePro(HydroCurve.Resistance, HydroCurveType.CurveQL)] + [Browsable(true)] + public virtual string CurveQL { get; set; } + + /// <summary> + /// 娌跨▼鎹熷け + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("娌跨▼鎹熷け")] + [Display(Name = "娌跨▼鎹熷け(m)")] + [PropertyOrder(19009)] + [DisplayUnit("m")] + [HydroCalcuPro] + [ShowEditor(false)] [Browsable(false)] - public string CurveQL { get; set; } + public override double? CalcuFrictionLoss { get; set; } + + /// <summary> + /// 娴侀噺 + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("娴侀噺")] + [DisplayUnit("m鲁/h")] + [Display(Name = "娴侀噺(m鲁/h)")] + [PropertyOrder(11001)] + [HydroCalcuPro] + [ShowEditor(false)] + [Browsable(true)] + public virtual double? CalcuQ { get; set; } + + /// <summary> + /// 杩涘彛鍘嬪姏 + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("杩涘彛鍘嬪姏")] + [DisplayUnit("m")] + [Display(Name = "杩涘彛鍘嬪姏(m)")] + [PropertyOrder(11002)] + [HydroCalcuPro] + [ShowEditor(false)] + [Browsable(true)] + public virtual double? CalcuPr1 { get; set; } + + /// <summary> + /// 鍑哄彛鍘嬪姏 + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("鍑哄彛鍘嬪姏")] + [DisplayUnit("m")] + [Display(Name = "鍑哄彛鍘嬪姏(m)")] + [PropertyOrder(11003)] + [HydroCalcuPro] + [ShowEditor(false)] + [Browsable(true)] + public virtual double? CalcuPr2 { get; set; } + + /// <summary> + /// 灞�閮ㄦ崯澶� + /// </summary> + [Category("璁$畻缁撴灉")] + [DisplayName("灞�閮ㄦ崯澶�")] + [DisplayUnit("m")] + [Display(Name = "灞�閮ㄦ崯澶�(m)")] + [PropertyOrder(19008)] + [HydroCalcuPro] + [ShowEditor(false)] + [Browsable(true)] + public override double? CalcuMinorLoss { get; set; } /// <summary> /// /// </summary> [Browsable(false)] - public new Yw.Model.HydroResistanceInfo Vmo { get; set; } + public new Yw.Model.HydroResistanceInfo Vmo + { + get { return _vmo as Yw.Model.HydroResistanceInfo; } + set { _vmo = value; } + } /// <summary> /// @@ -112,15 +173,10 @@ { base.UpdateProperty(); this.LinkStatus = HydroResistanceStatusHelper.GetStatusName(this.Vmo.LinkStatus); - this.UpdatePropStatus(nameof(this.LinkStatus), this.Vmo, nameof(this.Vmo.LinkStatus)); this.Material = this.Vmo.Material; - this.UpdatePropStatus(nameof(this.Material), this.Vmo, nameof(this.Vmo.Material)); this.Diameter = this.Vmo.Diameter; - this.UpdatePropStatus(nameof(this.Diameter), this.Vmo, nameof(this.Vmo.Diameter)); this.MinorLoss = this.Vmo.MinorLoss; - this.UpdatePropStatus(nameof(this.MinorLoss), this.Vmo, nameof(this.Vmo.MinorLoss)); this.CurveQL = this.Vmo.CurveQL; - this.UpdatePropStatus(nameof(this.CurveQL), this.Vmo, nameof(this.Vmo.CurveQL)); } /// <summary> @@ -130,15 +186,24 @@ { base.UpdateVmoProperty(); this.Vmo.LinkStatus = HydroResistanceStatusHelper.GetStatusCode(this.LinkStatus); - this.Vmo.UpdatePropStatus(nameof(this.Vmo.LinkStatus), this, nameof(this.LinkStatus)); this.Vmo.Material = this.Material; - this.Vmo.UpdatePropStatus(nameof(this.Vmo.Material), this, nameof(this.Material)); this.Vmo.Diameter = this.Diameter; - this.Vmo.UpdatePropStatus(nameof(this.Vmo.Diameter), this, nameof(this.Diameter)); this.Vmo.MinorLoss = this.MinorLoss; - this.Vmo.UpdatePropStatus(nameof(this.Vmo.MinorLoss), this, nameof(this.MinorLoss)); this.Vmo.CurveQL = this.CurveQL; - this.Vmo.UpdatePropStatus(nameof(this.Vmo.CurveQL), this, nameof(this.CurveQL)); + } + + /// <summary> + /// 鏇存柊璁$畻灞炴�� + /// </summary> + public override void UpdateCalcuProperty(HydroCalcuVisualResult rhs) + { + base.UpdateCalcuProperty(rhs); + if (rhs is HydroCalcuResistanceResult calcuResistanceProperty) + { + this.CalcuQ = calcuResistanceProperty.CalcuQ.HasValue ? Math.Round(calcuResistanceProperty.CalcuQ.Value, 1) : null; + this.CalcuPr1 = calcuResistanceProperty.CalcuPr1.HasValue ? Math.Round(calcuResistanceProperty.CalcuPr1.Value, 2) : null; + this.CalcuPr2 = calcuResistanceProperty.CalcuPr2.HasValue ? Math.Round(calcuResistanceProperty.CalcuPr2.Value, 2) : null; + } } -- Gitblit v1.9.3