From 8d7b513f8546ed1f48fe9f4586cf5b2ea2794a3e Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期二, 10 十二月 2024 15:42:51 +0800 Subject: [PATCH] 修复可能报错 --- Service/HStation.Service.Xhs.Core/00-core/Flags.cs | 20 +++- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs | 39 ++++++++- Hydro/Yw.Hydro.Core/Yw.Hydro.Core.csproj | 2 WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.cs | 22 +++++ WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultExtensions.cs | 2 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/09-energy/SimulationSingleWorkingEnergyCtrl.cs | 2 WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorViewModel.cs | 7 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorExtensions.cs | 33 ++++++++ WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj | 4 WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.Designer.cs | 50 +++++++++-- 10 files changed, 154 insertions(+), 27 deletions(-) diff --git a/Hydro/Yw.Hydro.Core/Yw.Hydro.Core.csproj b/Hydro/Yw.Hydro.Core/Yw.Hydro.Core.csproj index 06df27e..964f263 100644 --- a/Hydro/Yw.Hydro.Core/Yw.Hydro.Core.csproj +++ b/Hydro/Yw.Hydro.Core/Yw.Hydro.Core.csproj @@ -8,7 +8,7 @@ <ItemGroup> <PackageReference Include="Yw.Geometry.Core" Version="3.2.8" /> - <PackageReference Include="Yw.Service.Hydro.Core" Version="3.7.7" /> + <PackageReference Include="Yw.Service.Hydro.Core" Version="3.7.9" /> </ItemGroup> <ItemGroup> diff --git a/Service/HStation.Service.Xhs.Core/00-core/Flags.cs b/Service/HStation.Service.Xhs.Core/00-core/Flags.cs index 2c4bafe..635e73a 100644 --- a/Service/HStation.Service.Xhs.Core/00-core/Flags.cs +++ b/Service/HStation.Service.Xhs.Core/00-core/Flags.cs @@ -11,11 +11,6 @@ public const string 榛樿 = "榛樿"; /// <summary> - /// 涓氬姟 - /// </summary> - public const string 涓氬姟 = "涓氬姟"; - - /// <summary> /// 杩涘彛 /// </summary> public const string 杩涘彛 = "杩涘彛"; @@ -25,5 +20,20 @@ /// </summary> public const string 鍑哄彛 = "鍑哄彛"; + /// <summary> + /// 姘存簮 + /// </summary> + public const string 姘存簮 = "姘存簮"; + + /// <summary> + /// 濮嬬 + /// </summary> + public const string 濮嬬 = "濮嬬"; + + /// <summary> + /// 鏈 + /// </summary> + public const string 鏈 = "鏈"; + } } diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/09-energy/SimulationSingleWorkingEnergyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/09-energy/SimulationSingleWorkingEnergyCtrl.cs index 33a18b8..a453f9e 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/09-energy/SimulationSingleWorkingEnergyCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/09-energy/SimulationSingleWorkingEnergyCtrl.cs @@ -59,7 +59,7 @@ _hydroInfo = hydroInfo; _allCalcuResultVisualDict = allCalcuResultVisualDict; this.hydroEnergyTotalHorizViewCtrl1.SetBindingData(_hydroInfo, _allCalcuResultVisualDict); - this.simulationSingleWorkingPumpCtrl1.SetBindingData(_working, _hydroInfo, _allCalcuResultVisualDict); + this.simulationSingleWorkingPumpCtrl1.SetBindingData(_working, _hydroInfo, null, _allCalcuResultVisualDict); } diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs index 5762390..c2679be 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/04-working/SimulationPumpSingleWorkingChartCtrl.cs @@ -25,25 +25,46 @@ private HydroWorkingVmo _working = null; private Yw.Model.HydroModelInfo _hydroInfo = null; + private List<HydroMonitorVmo> _allMonitorList = null; private Dictionary<string, HydroCalcuVisualResult> _allCalcuResultVisualDict = null; + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> public void SetBindingData - (HydroWorkingVmo working, Yw.Model.HydroModelInfo hydroInfo, HydroCalcuResult calcuResult) + ( + HydroWorkingVmo working, + Yw.Model.HydroModelInfo hydroInfo, + List<HydroMonitorVmo> allMonitorList, + HydroCalcuResult calcuResult + ) { var allCalcuResultVisualDict = calcuResult.GetVisualDict(); - SetBindingData(working, hydroInfo, allCalcuResultVisualDict); + SetBindingData(working, hydroInfo, allMonitorList, allCalcuResultVisualDict); } + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> public void SetBindingData - (HydroWorkingVmo working, Yw.Model.HydroModelInfo hydroInfo, Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict) + ( + HydroWorkingVmo working, + Yw.Model.HydroModelInfo hydroInfo, + List<HydroMonitorVmo> allMonitorList, + Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict + ) { _working = working; _hydroInfo = hydroInfo; + _allMonitorList = allMonitorList; _allCalcuResultVisualDict = allCalcuResultVisualDict; var vm = CreateViewModel(); SetBindingData(vm); } + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> public void SetBindingData(PumpWorkingViewViewModel vm) { this.pumpWorkingViewChart1.SetBindingData(vm); @@ -54,8 +75,6 @@ } this.barCkE.Checked = this.pumpWorkingViewChart1.QEVisible; } - - //鍒涘缓 private PumpWorkingViewViewModel CreateViewModel() @@ -77,6 +96,14 @@ vm.Name = _working.Name; vm.CurveName = $"瑁呯疆绾�"; vm.Color = Color.Black; + + var startSourceMonitor = _allMonitorList? + .Matching(HydroVisualCalcuProp.CalcuHead, new List<string>() + { HStation.Xhs.Flags.姘存簮,HStation.Xhs.Flags.濮嬬,HStation.Xhs.Flags.榛樿}); + + + + vm.StartH = 2; @@ -176,5 +203,7 @@ { this.pumpWorkingViewChart1.SetChartAxis(); } + + } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultExtensions.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultExtensions.cs index f757c9b..7cb7dc8 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultExtensions.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultExtensions.cs @@ -138,7 +138,7 @@ { var point2dList = curveqp.CurveData.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); var point2dSimularList = point2dList.GetQPPointListByN(pump.RatedN.Value, pump.RatedN.Value * pump.SpeedRatio); - var pumpCurveQp = new Yw.Pump.CurveQP(eFeatType.Cubic, point2dSimularList); + var pumpCurveQp = new Yw.Pump.CurveQP(Yw.Ahart.eFeatType.Cubic, point2dSimularList); var curveQpRange = pumpCurveQp.FeatCurve.GetXRange(); double minExtend = 1; double maxExtend = 1; diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorExtensions.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorExtensions.cs new file mode 100644 index 0000000..1b0a507 --- /dev/null +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorExtensions.cs @@ -0,0 +1,33 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yw.WinFrmUI +{ + /// <summary> + /// + /// </summary> + public static class HydroMonitorExtensions + { + /// <summary> + /// 鍖归厤 + /// </summary> + public static HydroMonitorVmo Matching(this List<HydroMonitorVmo> allMonitorList, string propName, List<string> flags) + { + if (allMonitorList == null || allMonitorList.Count < 1) + { + return default; + } + allMonitorList = allMonitorList.Where(x => x.PropName == propName).ToList(); + allMonitorList = allMonitorList.OrderBy(x => x.Flags.Distinct().Count()).ToList(); + return allMonitorList.Find(x => x.Flags.ContainsC(flags)); + } + + + + + + } +} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.Designer.cs index 7069869..d4d172c 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.Designer.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.Designer.cs @@ -30,15 +30,18 @@ { components = new Container(); gridControl1 = new DevExpress.XtraGrid.GridControl(); + setHydroMonitorViewModelBindingSource = new BindingSource(components); gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView(); colChecked = new DevExpress.XtraGrid.Columns.GridColumn(); colRelation = new DevExpress.XtraGrid.Columns.GridColumn(); colPropName = new DevExpress.XtraGrid.Columns.GridColumn(); + colFlags = new DevExpress.XtraGrid.Columns.GridColumn(); + repositoryItemCheckedComboBoxEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit(); colDescription = new DevExpress.XtraGrid.Columns.GridColumn(); - setHydroMonitorViewModelBindingSource = new BindingSource(components); ((ISupportInitialize)gridControl1).BeginInit(); - ((ISupportInitialize)gridView1).BeginInit(); ((ISupportInitialize)setHydroMonitorViewModelBindingSource).BeginInit(); + ((ISupportInitialize)gridView1).BeginInit(); + ((ISupportInitialize)repositoryItemCheckedComboBoxEdit1).BeginInit(); SuspendLayout(); // // gridControl1 @@ -48,13 +51,18 @@ gridControl1.Location = new Point(0, 0); gridControl1.MainView = gridView1; gridControl1.Name = "gridControl1"; + gridControl1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] { repositoryItemCheckedComboBoxEdit1 }); gridControl1.Size = new Size(683, 307); gridControl1.TabIndex = 0; gridControl1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] { gridView1 }); // + // setHydroMonitorViewModelBindingSource + // + setHydroMonitorViewModelBindingSource.DataSource = typeof(SetHydroMonitorViewModel); + // // gridView1 // - gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] { colChecked, colRelation, colPropName, colDescription }); + gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] { colChecked, colRelation, colPropName, colFlags, colDescription }); gridView1.GridControl = gridControl1; gridView1.Name = "gridView1"; // @@ -88,27 +96,45 @@ colPropName.VisibleIndex = 2; colPropName.Width = 100; // + // colFlags + // + colFlags.ColumnEdit = repositoryItemCheckedComboBoxEdit1; + colFlags.FieldName = "Flags"; + colFlags.MaxWidth = 200; + colFlags.MinWidth = 100; + colFlags.Name = "colFlags"; + colFlags.Visible = true; + colFlags.VisibleIndex = 3; + colFlags.Width = 100; + // + // repositoryItemCheckedComboBoxEdit1 + // + repositoryItemCheckedComboBoxEdit1.AllowMultiSelect = true; + repositoryItemCheckedComboBoxEdit1.AutoHeight = false; + repositoryItemCheckedComboBoxEdit1.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo) }); + repositoryItemCheckedComboBoxEdit1.Name = "repositoryItemCheckedComboBoxEdit1"; + repositoryItemCheckedComboBoxEdit1.SelectAllItemCaption = "鍏ㄩ��"; + // // colDescription // colDescription.FieldName = "Description"; + colDescription.MinWidth = 100; colDescription.Name = "colDescription"; colDescription.Visible = true; - colDescription.VisibleIndex = 3; + colDescription.VisibleIndex = 4; + colDescription.Width = 100; // - // setHydroMonitorViewModelBindingSource - // - setHydroMonitorViewModelBindingSource.DataSource = typeof(SetHydroMonitorViewModel); - // - // SetHydroVisualMonitorCtrl + // SetHydroMonitorListCtrl // AutoScaleDimensions = new SizeF(7F, 14F); AutoScaleMode = AutoScaleMode.Font; Controls.Add(gridControl1); - Name = "SetHydroVisualMonitorCtrl"; + Name = "SetHydroMonitorListCtrl"; Size = new Size(683, 307); ((ISupportInitialize)gridControl1).EndInit(); - ((ISupportInitialize)gridView1).EndInit(); ((ISupportInitialize)setHydroMonitorViewModelBindingSource).EndInit(); + ((ISupportInitialize)gridView1).EndInit(); + ((ISupportInitialize)repositoryItemCheckedComboBoxEdit1).EndInit(); ResumeLayout(false); } @@ -121,5 +147,7 @@ private DevExpress.XtraGrid.Columns.GridColumn colPropName; private DevExpress.XtraGrid.Columns.GridColumn colDescription; private BindingSource setHydroMonitorViewModelBindingSource; + private DevExpress.XtraGrid.Columns.GridColumn colFlags; + private DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit repositoryItemCheckedComboBoxEdit1; } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.cs index 3103eaa..a93fcee 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorListCtrl.cs @@ -8,6 +8,7 @@ this.gridView1.SetNormalEditView(30); this.colRelation.OptionsColumn.AllowEdit = false; this.colPropName.OptionsColumn.AllowEdit = false; + InitialFlags(); } private Yw.Model.HydroModelInfo _hydroInfo = null;//姘村姏淇℃伅 @@ -61,13 +62,32 @@ this.setHydroMonitorViewModelBindingSource.ResetBindings(false); } + private async void InitialFlags() + { + var flags = await BLLFactory<Yw.BLL.SysFlag>.Instance.GetBySysType(Yw.Hydro.DataType.HydroMonitor); + this.repositoryItemCheckedComboBoxEdit1.Items.BeginUpdate(); + this.repositoryItemCheckedComboBoxEdit1.Items.Clear(); + if (flags != null && flags.Count > 0) + { + foreach (var flag in flags) + { + this.repositoryItemCheckedComboBoxEdit1.Items.Add(flag.Name); + } + } + this.repositoryItemCheckedComboBoxEdit1.Items.EndUpdate(); + } + /// <summary> /// 鑾峰彇鐩戞祴鍒楄〃 /// </summary> public List<HydroMonitorVmo> GetMonitorList() { var list = _allBindingList?.Where(x => x.Checked).ToList(); - list?.ForEach(x => x.Vmo.Description = x.Description); + list?.ForEach(x => + { + x.Vmo.Flags = Yw.Untity.FlagsHelper.ToList(x.Flags); + x.Vmo.Description = x.Description; + }); return list?.Select(x => x.Vmo).ToList(); } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorViewModel.cs index 41c47db..e2487dd 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/01-set/SetHydroMonitorViewModel.cs @@ -18,6 +18,7 @@ this.Checked = vmo.ID > 0; this.Relation = visual.Name; this.PropName = HydroVisualCalcuPropHelper.GetName(vmo.PropName); + this.Flags = Yw.Untity.FlagsHelper.ToString(vmo.Flags); this.Description = vmo.Description; this.Vmo = vmo; } @@ -41,6 +42,12 @@ public string PropName { get; set; } /// <summary> + /// 鏍囩 + /// </summary> + [DisplayName("鏍囩")] + public string Flags { get; set; } + + /// <summary> /// 璇存槑 /// </summary> [DisplayName("璇存槑")] diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj index 3306590..78afe38 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/Yw.WinFrmUI.Hydro.Core.csproj @@ -42,8 +42,8 @@ <ItemGroup> <PackageReference Include="DevExpress.Win.Design" Version="23.2.4" /> <PackageReference Include="Yw.BLL.Basic.Core" Version="3.3.0" /> - <PackageReference Include="Yw.BLL.Hydro.Core" Version="3.6.1" /> - <PackageReference Include="Yw.Pump.Core" Version="3.1.5" /> + <PackageReference Include="Yw.BLL.Hydro.Core" Version="3.6.2" /> + <PackageReference Include="Yw.Pump.Core" Version="3.1.6" /> </ItemGroup> <ItemGroup> -- Gitblit v1.9.3