From 3886a51f03ec14650e5b7127539104ad40e496da Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期三, 04 十二月 2024 20:36:12 +0800 Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs | 325 +++++++++++++++++++++++++++++++++++------------------- 1 files changed, 210 insertions(+), 115 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs index f11d47a..6aaab03 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/05-property/HydroVisualPropertyCtrl.cs @@ -4,6 +4,7 @@ using DevExpress.XtraEditors.Repository; using DevExpress.XtraLayout.Utils; using DevExpress.XtraVerticalGrid.Events; +using Yw.Model; namespace Yw.WinFrmUI { @@ -14,6 +15,7 @@ { InitializeComponent(); this.layoutControl1.SetupLayoutControl(); + SetDescriptionVisible(false); } /// <summary> @@ -28,7 +30,7 @@ /// 绗簩涓弬鏁颁负鏇茬嚎绫诲瀷 /// 绗笁涓弬鏁颁负鏄惁璁剧疆鎴愬姛 /// </summary> - public event Func<HydroVisualViewModel, string, bool> SetCurveEvent; + public event Func<HydroVisualViewModel, string, string, bool> SetCurveEvent; /// <summary> /// 璁剧疆妯″紡浜嬩欢 /// 绗竴涓弬鏁颁负璁剧疆妯″紡浜嬬殑ViewModel @@ -82,7 +84,19 @@ set { this.barBtnChangeLink.Visibility = value is HydroLinkViewModel ? BarItemVisibility.Always : BarItemVisibility.Never; + this.barBtnDb.Visibility = value == null ? BarItemVisibility.Never : BarItemVisibility.Always; this.barBtnView.Visibility = value == null ? BarItemVisibility.Never : BarItemVisibility.Always; + if (value != null) + { + if (value is HydroReservoirViewModel) + { + this.barBtnDb.Visibility = BarItemVisibility.Never; + } + else if (value is HydroJunctionViewModel) + { + this.barBtnDb.Visibility = BarItemVisibility.Never; + } + } this.propertyGridControl1.SelectedObject = value; } } @@ -147,7 +161,6 @@ { return; } - //灞炴�ф弿杩板櫒 var descriptor = this.propertyGridControl1.GetPropertyDescriptor(e.Row); if (descriptor != null) @@ -157,6 +170,12 @@ if (displayNameAttri != null && !string.IsNullOrEmpty(displayNameAttri.DisplayName)) { e.Caption = displayNameAttri.DisplayName; + } + //鍥炬爣 + var calcuProAttri = (HydroCalcuProAttribute)descriptor.Attributes[typeof(HydroCalcuProAttribute)]; + if (calcuProAttri != null) + { + } } @@ -363,124 +382,28 @@ { return; } - switch (curvePropAttri.CurveType) + if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePropAttri.Curve, curvePropAttri.CurveType)) { - case HydroCurve.Tank: + var curveCode = e.Row.Properties.Value?.ToString(); + var curveInfo = vm.HydroInfo.Curves?.Find(x => x.Code == curveCode); + var dlg = new SetHydroCurveDlg(); + dlg.SetBindingData(vm.HydroInfo, curveInfo, curvePropAttri.Curve, curvePropAttri.CurveType); + dlg.ReloadDataEvent += (curveInfoRhs) => + { + if (vm.HydroInfo.Curves == null) { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, HydroCurve.Pump)) - { - XtraMessageBox.Show("姝e湪寮�鍙戜腑..."); - } + vm.HydroInfo.Curves = new List<Model.HydroCurveInfo>(); } - break; - case HydroCurve.TankVol: + if (curveInfo != null) { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, HydroCurve.TankVol)) - { - XtraMessageBox.Show("姝e湪寮�鍙戜腑..."); - } + vm.HydroInfo.Curves.Remove(curveInfo); } - break; - case HydroCurve.Pump: - { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, HydroCurve.Pump)) - { - //缂虹渷鐨勮缃柟娉� - } - } - break; - case HydroCurve.PumpQH: - { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, HydroCurve.PumpQH)) - { - var pumpViewModel = vm as HydroPumpViewModel; - var curveQh = vm.HydroInfo.Curves?.Find(x => x.Code == pumpViewModel.CurveQH); - var dlg = new SetHydroCurveDlg(); - dlg.ReloadDataEvent += (curveInfo) => - { - if (vm.HydroInfo.Curves == null) - { - vm.HydroInfo.Curves = new List<Model.HydroCurveInfo>(); - } - if (curveQh != null) - { - vm.HydroInfo.Curves.Remove(curveQh); - } - vm.HydroInfo.Curves.Add(curveInfo); - pumpViewModel.CurveQH = curveInfo.Code; - UpdateRows(); - }; - dlg.SetBindingData(vm.HydroInfo, curveQh, curvePropAttri.CurveType); - dlg.ShowDialog(); - } - } - break; - case HydroCurve.PumpQP: - { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePropAttri.CurveType)) - { - var pumpViewModel = vm as HydroPumpViewModel; - var curveQp = vm.HydroInfo.Curves?.Find(x => x.Code == pumpViewModel.CurveQP); - var dlg = new SetHydroCurveDlg(); - dlg.ReloadDataEvent += (curveInfo) => - { - if (vm.HydroInfo.Curves == null) - { - vm.HydroInfo.Curves = new List<Model.HydroCurveInfo>(); - } - if (curveQp != null) - { - vm.HydroInfo.Curves.Remove(curveQp); - } - vm.HydroInfo.Curves.Add(curveInfo); - pumpViewModel.CurveQP = curveInfo.Code; - UpdateRows(); - }; - dlg.SetBindingData(vm.HydroInfo, curveQp, curvePropAttri.CurveType); - dlg.ShowDialog(); - } - } - break; - case HydroCurve.PumpQE: - { - var pumpViewModel = vm as HydroPumpViewModel; - var curveQe = vm.HydroInfo.Curves?.Find(x => x.Code == pumpViewModel.CurveQE); - var dlg = new SetHydroCurveDlg(); - dlg.ReloadDataEvent += (curveInfo) => - { - if (vm.HydroInfo.Curves == null) - { - vm.HydroInfo.Curves = new List<Model.HydroCurveInfo>(); - } - if (curveQe != null) - { - vm.HydroInfo.Curves.Remove(curveQe); - } - vm.HydroInfo.Curves.Add(curveInfo); - pumpViewModel.CurveQE = curveInfo.Code; - UpdateRows(); - }; - dlg.SetBindingData(vm.HydroInfo, curveQe, curvePropAttri.CurveType); - dlg.ShowDialog(); - } - break; - case HydroCurve.Valve: - { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, HydroCurve.Valve)) - { - //缂虹渷鐨勮缃柟娉� - } - } - break; - case HydroCurve.ValveQL: - { - if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePropAttri.CurveType)) - { - //缂虹渷鐨勮缃柟娉� - } - } - break; - default: break; + vm.HydroInfo.Curves.Add(curveInfo); + e.Row.Properties.Value = curveInfo.Code; + vm.UpdateVmoProperty(); + UpdateRows(); + }; + dlg.ShowDialog(); } }; e.RepositoryItem = buttonEdit; @@ -570,8 +493,165 @@ } } + #endregion + + #region 闃�闂� + + if (vm is HydroValveViewModel valve) + { + if (fieldName == nameof(HydroValveViewModel.ValveSetting)) + { + e.Row.Visible = false; + } + switch (valve.Vmo.ValveType) + { + case Yw.Hydro.ValveType.PSV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = true; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = false; + } + } + break; + case Yw.Hydro.ValveType.PRV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = true; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = false; + } + } + break; + case Yw.Hydro.ValveType.PBV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = true; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = false; + } + } + break; + case Yw.Hydro.ValveType.FCV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = true; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = false; + } + } + break; + case Yw.Hydro.ValveType.TCV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = true; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = false; + } + } + break; + case Yw.Hydro.ValveType.GPV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = true; + } + } + break; + case Yw.Hydro.ValveType.CV: + { + if (fieldName == nameof(HydroValveViewModel.ValvePress)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveFlow)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveOL)) + { + e.Row.Visible = false; + } + if (fieldName == nameof(HydroValveViewModel.ValveQL)) + { + e.Row.Visible = false; + } + } + break; + default: break; + } + } + #endregion + } @@ -610,6 +690,21 @@ { this.FlowEffectPropertyValueChangedEvent?.Invoke(vm); } + this.propertyGridControl1.UpdateRows(); + } + } + + //閫夋嫨 + private void barBtnDb_ItemClick(object sender, ItemClickEventArgs e) + { + var vm = this.SelectedObject; + if (vm == null) + { + return; + } + if (this.MatchingDbEvent != null) + { + } } -- Gitblit v1.9.3