WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs
@@ -2020,14 +2020,37 @@ #region æ°´æ³µå表 //æ§è½æ²çº¿ private void barBtnPumpCurve_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) private void PumpFeat() { if (_hydroInfo == null) { return; } var pumps = _hydroInfo.Pumps; if (pumps == null || pumps.Count < 1) { XtraMessageBox.Show("æ æ°´æ³µä¿¡æ¯"); return; } var dlg = new SimulationPumpFeatDlg(); dlg.SaveEvent += async (list) => { pumps.ForEach(x => x.UpdateWorkingInfo(list)); var visualVmListHelper = GetVisualVmListHelper(); visualVmListHelper.UpdateProperty(pumps.Select(x => x as Yw.Model.HydroVisualInfo).ToList()); SelectVisual(_visual, eVisualSource.None); var gradingHelper = await GetGradingHelper(); gradingHelper.Set(); }; dlg.SetBindingData(_hydroInfo); dlg.ShowDialog(); } #region å¹¶èæ¨¡æ //æ§è½æ²çº¿ private void barBtnPumpCurve_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { PumpFeat(); } //å¹¶èæ¨¡æ private void PumpParallel() @@ -2057,14 +2080,12 @@ var visualVmListHelper = GetVisualVmListHelper(); visualVmListHelper.UpdateProperty(pumps.Select(x => x as Yw.Model.HydroVisualInfo).ToList()); SelectVisual(_visual, eVisualSource.None); var calcuResultLabelHelper = await GetCalcuResultLabelHelper(); calcuResultLabelHelper.Set(); var gradingHelper = await GetGradingHelper(); gradingHelper.Set(); }; dlg.SetBindingData(_hydroInfo); dlg.ShowDialog(); } //å¹¶èæ¨¡æ private void barBtnPumpParallel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) @@ -2072,8 +2093,6 @@ PumpParallel(); } #endregion #endregion WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/01-parallel/SimulationPumpParallelCtrl.cs
@@ -59,7 +59,7 @@ //ä¿å private void btnSave_Click(object sender, EventArgs e) { var result = XtraMessageBox.Show("æ¯å¦å°ç°ææ°´æ³µç¶ææ´æ°æ¨¡åï¼", "询é®", MessageBoxButtons.YesNo) == DialogResult.Yes; var result = XtraMessageBox.Show("æ¯å¦ä½¿ç¨ç°ææ°´æ³µç¶ææ´æ°æ¨¡åï¼", "询é®", MessageBoxButtons.YesNo) == DialogResult.Yes; if (!result) { return; WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/02-feat/SimulationPumpFeatCtrl.Designer.cs
@@ -29,22 +29,22 @@ private void InitializeComponent() { layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); panelControl1 = new PanelControl(); pumpOperationChart1 = new Yw.WinFrmUI.Phart.PumpOperationChart(); hydroPumpListStateEditCtrl1 = new HydroPumpListStateEditCtrl(); Root = new DevExpress.XtraLayout.LayoutControlGroup(); layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); splitterItem1 = new DevExpress.XtraLayout.SplitterItem(); panelControl1 = new PanelControl(); layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); pumpOperationChart1 = new Yw.WinFrmUI.Phart.PumpOperationChart(); ((ISupportInitialize)layoutControl1).BeginInit(); layoutControl1.SuspendLayout(); ((ISupportInitialize)panelControl1).BeginInit(); panelControl1.SuspendLayout(); ((ISupportInitialize)Root).BeginInit(); ((ISupportInitialize)layoutControlGroup1).BeginInit(); ((ISupportInitialize)layoutControlItem1).BeginInit(); ((ISupportInitialize)splitterItem1).BeginInit(); ((ISupportInitialize)panelControl1).BeginInit(); panelControl1.SuspendLayout(); ((ISupportInitialize)layoutControlItem3).BeginInit(); SuspendLayout(); // @@ -61,11 +61,32 @@ layoutControl1.TabIndex = 0; layoutControl1.Text = "layoutControl1"; // // panelControl1 // panelControl1.BorderStyle = BorderStyles.Simple; panelControl1.Controls.Add(pumpOperationChart1); panelControl1.Location = new Point(229, 2); panelControl1.Name = "panelControl1"; panelControl1.Padding = new Padding(1); panelControl1.Size = new Size(721, 593); panelControl1.TabIndex = 7; // // pumpOperationChart1 // pumpOperationChart1.Dock = DockStyle.Fill; pumpOperationChart1.LineNameVisible = true; pumpOperationChart1.LineVisible = false; pumpOperationChart1.Location = new Point(3, 3); pumpOperationChart1.Margin = new Padding(2, 2, 2, 2); pumpOperationChart1.Name = "pumpOperationChart1"; pumpOperationChart1.Size = new Size(715, 587); pumpOperationChart1.TabIndex = 0; // // hydroPumpListStateEditCtrl1 // hydroPumpListStateEditCtrl1.Location = new Point(0, 22); hydroPumpListStateEditCtrl1.Location = new Point(2, 24); hydroPumpListStateEditCtrl1.Name = "hydroPumpListStateEditCtrl1"; hydroPumpListStateEditCtrl1.Size = new Size(217, 575); hydroPumpListStateEditCtrl1.Size = new Size(213, 571); hydroPumpListStateEditCtrl1.TabIndex = 4; // // Root @@ -86,7 +107,6 @@ layoutControlGroup1.Name = "layoutControlGroup1"; layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); layoutControlGroup1.Size = new Size(217, 597); layoutControlGroup1.Spacing = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); layoutControlGroup1.Text = "æ°´æ³µå表"; // // layoutControlItem1 @@ -95,7 +115,7 @@ layoutControlItem1.Location = new Point(0, 0); layoutControlItem1.Name = "layoutControlItem1"; layoutControlItem1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); layoutControlItem1.Size = new Size(217, 575); layoutControlItem1.Size = new Size(213, 571); layoutControlItem1.TextSize = new Size(0, 0); layoutControlItem1.TextVisible = false; // @@ -106,16 +126,6 @@ splitterItem1.Name = "splitterItem1"; splitterItem1.Size = new Size(10, 597); // // panelControl1 // panelControl1.BorderStyle = BorderStyles.Simple; panelControl1.Controls.Add(pumpOperationChart1); panelControl1.Location = new Point(227, 0); panelControl1.Name = "panelControl1"; panelControl1.Padding = new Padding(1); panelControl1.Size = new Size(725, 597); panelControl1.TabIndex = 7; // // layoutControlItem3 // layoutControlItem3.Control = panelControl1; @@ -123,19 +133,9 @@ layoutControlItem3.Name = "layoutControlItem3"; layoutControlItem3.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); layoutControlItem3.Size = new Size(725, 597); layoutControlItem3.Spacing = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); layoutControlItem3.TextSize = new Size(0, 0); layoutControlItem3.TextVisible = false; // // pumpOperationChart1 // pumpOperationChart1.Dock = DockStyle.Fill; pumpOperationChart1.LineNameVisible = true; pumpOperationChart1.LineVisible = false; pumpOperationChart1.Location = new Point(3, 3); pumpOperationChart1.Margin = new Padding(2, 2, 2, 2); pumpOperationChart1.Name = "pumpOperationChart1"; pumpOperationChart1.Size = new Size(719, 591); pumpOperationChart1.TabIndex = 0; // // SimulationPumpFeatCtrl // @@ -146,12 +146,12 @@ Size = new Size(952, 597); ((ISupportInitialize)layoutControl1).EndInit(); layoutControl1.ResumeLayout(false); ((ISupportInitialize)panelControl1).EndInit(); panelControl1.ResumeLayout(false); ((ISupportInitialize)Root).EndInit(); ((ISupportInitialize)layoutControlGroup1).EndInit(); ((ISupportInitialize)layoutControlItem1).EndInit(); ((ISupportInitialize)splitterItem1).EndInit(); ((ISupportInitialize)panelControl1).EndInit(); panelControl1.ResumeLayout(false); ((ISupportInitialize)layoutControlItem3).EndInit(); ResumeLayout(false); } WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/02-feat/SimulationPumpFeatCtrl.cs
@@ -24,6 +24,11 @@ } /// <summary> /// ä¿åäºä»¶ /// </summary> public event Action<List<HydroWorkingPumpViewModel>> SaveEvent; /// <summary> /// /// </summary> public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) @@ -92,7 +97,21 @@ return vm; } /// <summary> /// ä¿å /// </summary> public void Save() { if (this.hydroPumpListStateEditCtrl1.HasChanged) { var result = XtraMessageBox.Show("æ¯å¦ä½¿ç¨ç°ææ°´æ³µç¶ææ´æ°æ¨¡åï¼", "询é®", MessageBoxButtons.YesNo) == DialogResult.Yes; if (result) { var allWorkingList = this.hydroPumpListStateEditCtrl1.GetWorkingList(); this.SaveEvent?.Invoke(allWorkingList); } } } } } WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/02-feat/SimulationPumpFeatDlg.Designer.cs
@@ -79,6 +79,7 @@ RibbonVisibility = DevExpress.XtraBars.Ribbon.RibbonVisibility.Hidden; StartPosition = FormStartPosition.CenterParent; Text = "å¹¶èæ¨¡æ"; FormClosing += SimulationPumpFeatDlg_FormClosing; ((ISupportInitialize)ribbon).EndInit(); ResumeLayout(false); PerformLayout(); WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/11-pump/02-feat/SimulationPumpFeatDlg.cs
@@ -6,13 +6,31 @@ { InitializeComponent(); this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; this.simulationPumpFeatCtrl1.SaveEvent += SimulationPumpFeatCtrl1_SaveEvent; } /// <summary> /// ä¿åäºä»¶ /// </summary> public event Action<List<HydroWorkingPumpViewModel>> SaveEvent; private void SimulationPumpFeatCtrl1_SaveEvent(List<HydroWorkingPumpViewModel> obj) { this.SaveEvent?.Invoke(obj); } /// <summary> /// ç»å®æ°æ® /// </summary> public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) { this.simulationPumpFeatCtrl1.SetBindingData(hydroInfo); } private void SimulationPumpFeatDlg_FormClosing(object sender, FormClosingEventArgs e) { this.simulationPumpFeatCtrl1.Save(); } } } WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/HydroWorkingExtensions.cs
@@ -115,6 +115,36 @@ } /// <summary> /// æ´æ°å·¥åµä¿¡æ¯ /// </summary> public static void UpdateWorkingInfo(this Yw.Model.HydroPumpInfo pumpInfo, HydroWorkingPumpViewModel pumpWorkingInfo) { if (pumpInfo == null) { return; } if (pumpWorkingInfo == null) { return; } pumpInfo.LinkStatus = pumpWorkingInfo.LinkStatus; pumpInfo.SpeedRatio = pumpWorkingInfo.CurrentHz / pumpInfo.RatedHz; } /// <summary> /// æ´æ°å·¥åµä¿¡æ¯ /// </summary> public static void UpdateWorkingInfo(this Yw.Model.HydroPumpInfo pumpInfo, List<HydroWorkingPumpViewModel> allWorkingList) { if (pumpInfo == null) { return; } var workingInfo = allWorkingList?.Find(x => x.Code == pumpInfo.Code); pumpInfo.UpdateWorkingInfo(workingInfo); } } } WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/00-core/HydroWorkingViewModel.cs
ÎļþÒÑɾ³ý WinFrmUI/Yw.WinFrmUI.Hydro.Core/19-pump/05-state/HydroPumpListItemStateViewModel.cs
@@ -86,5 +86,7 @@ /// /// </summary> public Yw.Model.HydroModelInfo HydroInfo { get; set; } } } WinFrmUI/Yw.WinFrmUI.Hydro.Core/19-pump/05-state/HydroPumpListStateEditCtrl.cs
@@ -24,7 +24,18 @@ /// </summary> public event Action<HydroPumpListItemStateViewModel> SelectedChangedEvent; private BindingList<HydroPumpListItemStateViewModel> _allBindingList = null; private BindingList<HydroPumpListItemStateViewModel> _allBindingList = null;//ææç»å®å表 /// <summary> /// æ¯å¦ææ¹å /// </summary> public bool HasChanged { get { return _hasChanged; } } private bool _hasChanged = false; /// <summary> /// ç»å®æ°æ® @@ -86,7 +97,17 @@ { vm.RunStatus = rhs.LinkStatus == Yw.Hydro.PumpStatus.Open; vm.CurrentHz = rhs.CurrentHz; if (vm.RunStatus) { vm.Image = Yw.WinFrmUI.Hydro.Core.Properties.Resources.pump_run_32; } else { vm.Image = Yw.WinFrmUI.Hydro.Core.Properties.Resources.pump_shut_32; } this.hydroPumpListItemStateViewModelBindingSource.ResetBindings(false); _hasChanged = true; }; dlg.SetBindingData(working); dlg.ShowDialog(); WinFrmUI/Yw.WinFrmUI.Hydro.Core/19-pump/05-state/HydroPumpListStateEditCtrl.resx
@@ -125,29 +125,24 @@ <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABwFAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iUmVuYW1lXzFfIj4NCiAgICA8 cGF0aCBkPSJNMi4xLDE2aDIuMmwwLjYtMi4zaDMuMkw4LjgsMTZIMTFMNy44LDZINS40TDIuMSwxNnog TTYuNCw4LjdjMC4xLTAuMywwLjEtMC42LDAuMS0wLjloMC4xICAgYzAsMC4zLDAuMSwwLjYsMC4xLDAu OWwxLDMuM0g1LjRMNi40LDguN3ogTTE3LjUsMTAuNmMwLjYtMC4yLDEuMS0wLjUsMS41LTAuOWMwLjQt MC40LDAuNi0wLjksMC42LTEuNGMwLTAuNy0wLjMtMS4zLTAuOS0xLjcgICBDMTguMSw2LjIsMTcuMSw2 LDE1LjksNkgxMnY5LjlWMTZoNGMxLjIsMCwyLjItMC4yLDIuOS0wLjhDMTkuNywxNC42LDIwLDE0LDIw LDEzYzAtMC42LTAuMi0xLjItMC43LTEuNiAgIEMxOC45LDExLDE4LjMsMTAuNywxNy41LDEwLjZ6IE0x NC40LDcuN2gwLjljMS4xLDAsMS43LDAuNCwxLjcsMS4xYzAsMC40LTAuMSwwLjctMC40LDAuOUMxNi40 LDkuOSwxNiwxMCwxNS41LDEwaC0xLjFWNy43eiAgICBNMTcsMTMuOGMtMC4zLDAuMi0wLjgsMC40LTEu MywwLjRoLTEuM3YtMi42aDEuM2MwLjUsMCwwLjksMC4xLDEuMywwLjNjMC4zLDAuMiwwLjUsMC42LDAu NSwwLjlDMTcuNSwxMy4zLDE3LjQsMTMuNiwxNywxMy44eiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDxw YXRoIGQ9Ik0yNywxOWwtOCw4bC00LTRsOC04TDI3LDE5eiBNMjgsMThsMS43LTEuN2MwLjQtMC40LDAu NC0xLDAtMS4zTDI3LDEyLjNjLTAuNC0wLjQtMS0wLjQtMS4zLDBMMjQsMTRMMjgsMTh6ICAgIE0xNCwy NHY0aDRMMTQsMjR6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3 LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> </root>