From 0f99d4d12f2eae29bbe343f4b3131f2faeccda5d Mon Sep 17 00:00:00 2001 From: Shuxia Ning <NingShuxia0927@outlook.com> Date: 星期二, 14 一月 2025 17:31:20 +0800 Subject: [PATCH] 泵曲线修改 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/01-pipe/00-core/HydroPipeViewModel.cs | 166 +++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 129 insertions(+), 37 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/01-pipe/00-core/HydroPipeViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/01-pipe/00-core/HydroPipeViewModel.cs index fe49c0c..eadfc1c 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/01-pipe/00-core/HydroPipeViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/04-viewmodel/04-link/01-pipe/00-core/HydroPipeViewModel.cs @@ -1,11 +1,9 @@ -锘縰sing Yw.Model; - -namespace Yw.WinFrmUI +锘縩amespace Yw.WinFrmUI { /// <summary> /// 绠¢亾瑙嗗浘 /// </summary> - public class HydroPipeViewModel : HydroLinkViewModel + public class HydroPipeViewModel : HydroLinkViewModel, IHydroCalcuPipeResult { /// <summary> /// @@ -18,34 +16,19 @@ public HydroPipeViewModel(Yw.Model.HydroPipeInfo rhs, Yw.Model.HydroModelInfo hydroInfo) : base(rhs, hydroInfo) { this.Material = rhs.Material; - this.UpdatePropStatus(nameof(this.Material), rhs, nameof(rhs.Material)); this.Diameter = Math.Round(rhs.Diameter, 0); - this.UpdatePropStatus(nameof(this.Diameter), rhs, nameof(rhs.Diameter)); this.Length = Math.Round(rhs.Length, 4); - this.UpdatePropStatus(nameof(this.Length), rhs, nameof(rhs.Length)); this.Roughness = rhs.Roughness; - this.UpdatePropStatus(nameof(this.Roughness), rhs, nameof(rhs.Roughness)); this.MinorLoss = rhs.MinorLoss; - this.UpdatePropStatus(nameof(this.MinorLoss), rhs, nameof(rhs.MinorLoss)); - this.Vmo = rhs; } /// <summary> - /// 绠¢亾鐘舵�� + /// 鏉愯川 /// </summary> [Category("鏁版嵁")] - [DisplayName("绠¢亾鐘舵��")] - [PropertyOrder(13)] - [Browsable(true)] - [TypeConverter(typeof(HydroPipeStatusConverter))] - public override string LinkStatus { get; set; } - - /// <summary> - /// 鏉愭枡 - /// </summary> - [Category("鏁版嵁")] - [DisplayName("鏉愭枡")] - [PropertyOrder(100)] + [Display(Name = "鏉愯川")] + [DisplayName("鏉愯川")] + [PropertyOrder(2001)] [Browsable(true)] public string Material { get; set; } @@ -53,19 +36,22 @@ /// 鐩村緞 /// </summary> [Category("鏁版嵁")] + [Display(Name = "鐩村緞(mm)")] [DisplayName("鐩村緞")] - [PropertyOrder(101)] [DisplayUnit("mm")] + [Range(1, double.MaxValue)] + [PropertyOrder(2002)] [Browsable(true)] - public double Diameter { get; set; } + public virtual double Diameter { get; set; } /// <summary> /// 闀垮害 /// </summary> [Category("鏁版嵁")] + [Display(Name = "闀垮害(m)")] [DisplayName("闀垮害")] - [PropertyOrder(102)] [DisplayUnit("m")] + [PropertyOrder(2003)] [Browsable(true)] public double Length { get; set; } @@ -73,8 +59,10 @@ /// 绮楃硻绯绘暟 /// </summary> [Category("鏁版嵁")] + [Display(Name = "绮楃硻绯绘暟")] [DisplayName("绮楃硻绯绘暟")] - [PropertyOrder(103)] + [Description("娴锋.濞佸粔鍏紡绯绘暟")] + [PropertyOrder(2004)] [Browsable(true)] public double Roughness { get; set; } @@ -82,17 +70,101 @@ /// 灞�闃荤郴鏁� /// </summary> [Category("鏁版嵁")] + [Display(Name = "灞�闃荤郴鏁�")] [DisplayName("灞�闃荤郴鏁�")] - [PropertyOrder(104)] + [Description("灞�閮ㄩ樆鍔涚郴鏁�")] + [PropertyOrder(2005)] [Browsable(true)] public double MinorLoss { 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/s")] + [Display(Name = "娴侀��(m/s)")] + [PropertyOrder(19007)] + [HydroCalcuPro] + [ShowEditor(false)] + [Browsable(true)] + public override double? CalcuVelocity { 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> + [Category("璁$畻缁撴灉")] + [DisplayName("娌跨▼鎹熷け")] + [DisplayUnit("m")] + [Display(Name = "娌跨▼鎹熷け(m)")] + [PropertyOrder(19009)] + [HydroCalcuPro] + [ShowEditor(false)] + [Browsable(true)] + public override double? CalcuFrictionLoss { get; set; } /// <summary> /// /// </summary> - public new Yw.Model.HydroPipeInfo Vmo { get; set; } - - + [Browsable(false)] + public new Yw.Model.HydroPipeInfo Vmo + { + get { return _vmo as Yw.Model.HydroPipeInfo; } + set { _vmo = value; } + } /// <summary> /// 鏇存柊灞炴�� @@ -101,18 +173,38 @@ { base.UpdateProperty(); 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.Length = this.Vmo.Length; - this.UpdatePropStatus(nameof(this.Length), this.Vmo, nameof(this.Vmo.Length)); + this.Length = Math.Round(this.Vmo.Length, 4); this.Roughness = this.Vmo.Roughness; - this.UpdatePropStatus(nameof(this.Roughness), this.Vmo, nameof(this.Vmo.Roughness)); this.MinorLoss = this.Vmo.MinorLoss; - this.UpdatePropStatus(nameof(this.MinorLoss), this.Vmo, nameof(this.Vmo.MinorLoss)); } + /// <summary> + /// + /// </summary> + public override void UpdateVmoProperty() + { + base.UpdateVmoProperty(); + this.Vmo.Material = this.Material; + this.Vmo.Diameter = this.Diameter; + this.Vmo.Length = this.Length; + this.Vmo.Roughness = this.Roughness; + this.Vmo.MinorLoss = this.MinorLoss; + } + /// <summary> + /// 鏇存柊璁$畻灞炴�� + /// </summary> + public override void UpdateCalcuProperty(HydroCalcuVisualResult rhs) + { + base.UpdateCalcuProperty(rhs); + if (rhs is HydroCalcuPipeResult calcuPipeProperty) + { + this.CalcuQ = calcuPipeProperty.CalcuQ.HasValue ? Math.Round(calcuPipeProperty.CalcuQ.Value, 1) : null; + this.CalcuPr1 = calcuPipeProperty.CalcuPr1.HasValue ? Math.Round(calcuPipeProperty.CalcuPr1.Value, 2) : null; + this.CalcuPr2 = calcuPipeProperty.CalcuPr2.HasValue ? Math.Round(calcuPipeProperty.CalcuPr2.Value, 2) : null; + } + } } } -- Gitblit v1.9.3