From 4ee432aa0ec5ec8058d720b49ae7f46e5ad1c49c Mon Sep 17 00:00:00 2001 From: tangxu <tangxu76880903> Date: 星期日, 03 十一月 2024 09:24:33 +0800 Subject: [PATCH] 确认提交 --- WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs | 250 ++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 204 insertions(+), 46 deletions(-) diff --git a/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs b/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs index 854879d..f8507ea 100644 --- a/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs +++ b/WinFrmUI/DPumpHydr.WinFrmUI.Volute/MainViewPage_StepInfo.cs @@ -1,5 +1,4 @@ -锘� -using System; +锘縰sing System; using System.Collections.Generic; using System.Windows.Forms; using System.IO; @@ -8,8 +7,16 @@ namespace DPumpHydr.WinFrmUI.Volute { - public partial class MainViewPage + public partial class MainViewPage { + // + ctrlHdrBaseInfo _ctrlHdrBaseInfo = null; + ctrlGeomBaseInfo _ctrlGeomBaseInfo = null; + ctrlSectionBaseInfo _ctrlSectionBaseInfo = null; + ctrlSectionShapeInfo18 _ctrlSectionShapeInfo18 = null; + ctrlSetOutflowStyle _ctrlSetOutflowStyle = null; + ctrlSetOutflowDim _ctrlSetOutflowDim = null; + //鍩虹淇℃伅 private readonly string Group_Name_Base_Info = "BaseInfo"; private readonly int Group_ID_Base_Info = -1;//缁処D @@ -26,15 +33,16 @@ //鍑烘按璁捐 private readonly string Group_Name_Outflow = "Outflow"; - private readonly int Group_ID_Outflow = -3; + private readonly int Group_ID_Outflow = -3; private long Step_ID_Outflow_Style = 31; private long Step_ID_Outflow_Dim = 32; + // private List<DPumpHydr.WinFrmUI.Volute.TreeStepNode> _allStepNodes = null; - + private long _currentStepID = 0; - + /// <summary> /// 涓嬩竴姝� /// </summary> @@ -53,35 +61,148 @@ return GoPrevStepCore(); } ViewModel.HdrBaseInfo _hdrBaseInfo = null; + ViewModel.GeomBaseInfo _geomBaseInfo = null; + ViewModel.SectionBaseInfo _sectionBaseInfo = null; + ViewModel.SectionShapePara _sectionShapePara = null; + DPumpHydr.WinFrmUI.Volute.TreeStepNode next_step = null; + int _currentSectIndex; + /// <summary> + /// 涓嬩竴姝ユ牳蹇� + /// </summary> + /// <returns></returns> private bool GoNextStepCore() { - var next_step = (from x in _allStepNodes + if (_currentStepID != Step_ID_Section18_Dim || _currentSectIndex > 8 || _currentSectIndex <= 1) + { + _currentSectIndex = 9; + next_step = (from x in _allStepNodes where x.ID > _currentStepID orderby x.ID select x).FirstOrDefault(); - if (next_step == null) - return false; - if(_currentStepID == Step_ID_Hdr_Base_Info) + if (next_step == null) + return false; + } + + //绗竴姝ヨ繘琛屼笅涓�姝ョ偣鍑� + if (_currentStepID == Step_ID_Hdr_Base_Info) { string error_info; var hdrBaseInfo = _ctrlHdrBaseInfo.GetBindingData(out error_info); - if(hdrBaseInfo == null) + if (hdrBaseInfo == null) { MessageBox.Show(error_info); return false; } + hdrBaseInfo.CalcNs(); _hdrBaseInfo = hdrBaseInfo; + if (_geomBaseInfo == null) + { + _geomBaseInfo = new ViewModel.GeomBaseInfo(); + } + _geomBaseInfo.Calc(_hdrBaseInfo); + } + //绗簩姝ヨ繘琛屼笅涓�姝ョ偣鍑� + if (_currentStepID == Step_ID_Geom_Base_Info) + { + string error_info; + var geomBaseInfo = _ctrlGeomBaseInfo.GetBindingData(out error_info); + if (geomBaseInfo == null) + { + MessageBox.Show(error_info); + return false; + } + _geomBaseInfo = geomBaseInfo; + if (_sectionBaseInfo == null) + { + _sectionBaseInfo = new ViewModel.SectionBaseInfo(); + } + _sectionBaseInfo.CalcV3(_hdrBaseInfo, _geomBaseInfo); + _sectionBaseInfo.CalcArea(_hdrBaseInfo, _geomBaseInfo, _sectionBaseInfo.V3); + _sectionBaseInfo.IntialShapeType(_hdrBaseInfo, _geomBaseInfo, _sectionBaseInfo.ShapeType); + } + //绗笁姝ヨ繘琛屼笅涓�姝ョ偣鍑� + if (_currentStepID == Step_ID_Section18_Base) + { + + string error_info; + var sectionBaseInfo = _ctrlSectionBaseInfo.GetBindingData(out error_info); + if (sectionBaseInfo == null) + { + MessageBox.Show(error_info); + return false; + } + _sectionBaseInfo = sectionBaseInfo; + _sectionBaseInfo.InitialAllParameters(_hdrBaseInfo, _geomBaseInfo); + _currentSectIndex--; + if (_sectionShapePara == null) + { + _sectionShapePara = new ViewModel.SectionShapePara(); + } + _sectionShapePara.Initialparameters(_currentSectIndex, _sectionBaseInfo); + } + //1-8鏂潰杩涜涓嬩竴姝ョ偣鍑� + if (_currentStepID == Step_ID_Section18_Dim) + { + string error_info; + var sectionShapeInfo18 = _ctrlSectionShapeInfo18.GetBindingData(out error_info); + if (sectionShapeInfo18 == null) + { + MessageBox.Show(error_info); + return false; + } + _sectionShapePara = sectionShapeInfo18; + _sectionShapePara.CalcHeightByArea(_sectionBaseInfo.ShapeType); + _sectionBaseInfo.EditSingleShape(_sectionShapePara, _currentSectIndex); + if (_currentSectIndex != 9) + { + _currentSectIndex--; + } + _sectionShapePara.Initialparameters(_currentSectIndex, _sectionBaseInfo); } SetParasCtrl(next_step.ID); - + return true; } + /// <summary> + /// 涓婁竴姝ユ牳蹇� + /// </summary> + /// <returns></returns> private bool GoPrevStepCore() { + //bool IsChanges = true; + //if (_currentStepID == Step_ID_Section18_Base && _ctrlSectionBaseInfo.IsParameterChange()) + //{ + // IsChanges = false; + //} + //if(IsChanges) + //{ + // DialogResult result = MessageBox.Show("宸茬粡淇敼杩囩殑鏁版嵁闇�瑕佷繚瀛樺悧锛�", "鎻愮ず", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); + // if (result == DialogResult.OK) + // { + // string error_info = ""; + // var hdrBaseInfo = _ctrlSectionBaseInfo.GetBindingData(out error_info); + // if (hdrBaseInfo == null) + // { + // MessageBox.Show(error_info); + // return false; + // } + // } + //} if (_currentStepID == Step_ID_Hdr_Base_Info) return false; - + if (_currentStepID == Step_ID_Section18_Dim && _currentSectIndex >= 1 && _currentSectIndex < 8) + { + _currentSectIndex++; + _sectionShapePara.Initialparameters(_currentSectIndex, _sectionBaseInfo); + SetParasCtrl(Step_ID_Section18_Dim); + return true; + } + if (_currentStepID == Step_ID_Outflow_Style) + { + _currentSectIndex = 1; + _sectionShapePara.Initialparameters(_currentSectIndex, _sectionBaseInfo); + } var prev_step = (from x in _allStepNodes where x.ID < _currentStepID orderby x.ID @@ -90,67 +211,77 @@ return false; SetParasCtrl(prev_step.ID); - + return true; } + /// <summary> + /// 鐢熸垚绗嚑姝ユ帶浠� + /// </summary> + /// <param name="step_id"></param> private void SetParasCtrl(long step_id) - { + { + //绗竴姝� if (step_id == Step_ID_Hdr_Base_Info) { if (_ctrlHdrBaseInfo == null) _ctrlHdrBaseInfo = new ctrlHdrBaseInfo(); this.panelParas.Controls.Clear(); this.panelParas.Controls.Add(_ctrlHdrBaseInfo); + _ctrlHdrBaseInfo.SetBindingData(_hdrBaseInfo); } + + //绗簩姝� if (step_id == Step_ID_Geom_Base_Info) { if (_ctrlGeomBaseInfo == null) { _ctrlGeomBaseInfo = new ctrlGeomBaseInfo(); _ctrlGeomBaseInfo.Name = "ctrlGeomBaseInfo"; - _ctrlGeomBaseInfo.Dock = DockStyle.Fill; + _ctrlGeomBaseInfo.Dock = DockStyle.Right; } - this.panelParas.Controls.Clear(); this.panelParas.Controls.Add(_ctrlGeomBaseInfo); + _ctrlGeomBaseInfo.SetBindingData(_geomBaseInfo); } - - - + //绗笁姝� if (step_id == Step_ID_Section18_Base) { if (_ctrlSectionBaseInfo == null) { _ctrlSectionBaseInfo = new ctrlSectionBaseInfo(); _ctrlSectionBaseInfo.Name = "ctrlSectionBaseInfo"; - _ctrlSectionBaseInfo.Dock = DockStyle.Fill; + _ctrlSectionBaseInfo.Dock = DockStyle.Right; } - - this.panelParas.Controls.Clear(); this.panelParas.Controls.Add(_ctrlSectionBaseInfo); + _ctrlSectionBaseInfo.SetBindingData(_sectionBaseInfo); } + //绗洓姝� if (step_id == Step_ID_Section18_Dim) { if (_ctrlSectionShapeInfo18 == null) { _ctrlSectionShapeInfo18 = new ctrlSectionShapeInfo18(); _ctrlSectionShapeInfo18.Name = "ctrlSectionShapeInfo18"; - _ctrlSectionShapeInfo18.Dock = DockStyle.Fill; + _ctrlSectionShapeInfo18.Dock = DockStyle.Right; } - this.panelParas.Controls.Clear(); this.panelParas.Controls.Add(_ctrlSectionShapeInfo18); + _ctrlSectionShapeInfo18.SetBindingData(_sectionShapePara); } - if(step_id == Step_ID_Outflow_Style) + if (step_id == Step_ID_Outflow_Style) { if (_ctrlSetOutflowStyle == null) + { _ctrlSetOutflowStyle = new ctrlSetOutflowStyle(); + _ctrlSetOutflowStyle.Name = "ctrlSetOutflowStyle"; + _ctrlSetOutflowStyle.Dock = DockStyle.Right; + } this.panelParas.Controls.Clear(); this.panelParas.Controls.Add(_ctrlSetOutflowStyle); @@ -158,7 +289,11 @@ if (step_id == Step_ID_Outflow_Dim) { if (_ctrlSetOutflowDim == null) + { _ctrlSetOutflowDim = new ctrlSetOutflowDim(); + _ctrlSetOutflowDim.Name = "ctrlSetOutflowDim"; + _ctrlSetOutflowDim.Dock = DockStyle.Right; + } this.panelParas.Controls.Clear(); this.panelParas.Controls.Add(_ctrlSetOutflowDim); } @@ -169,8 +304,31 @@ this._currentStepID = step_id; } - - + + /// <summary> + /// 铚楀3鍙傛暟瀵煎嚭 + /// </summary> + public void VoluteDeriveArgument() + { + if (_sectionBaseInfo == null) + { + MessageBox.Show("鎮ㄨ繕娌℃湁瀹屾垚瀹氫箟鍙傛暟锛佽瀹氫箟瀹屾垚鍚庡湪杩涜瀵煎嚭锛侊紙鑷冲皯瀹屾垚绗笁姝ワ級"); + return; + } + if (_currentStepID <= 21) + { + DialogResult result = MessageBox.Show("纭畾涓嶈繘琛屽悗缁柇闈㈠弬鏁扮殑璋冩暣锛屼娇鐢ㄥ垵濮嬭绠楀悗鐨勫弬鏁板悧锛�", "鎻愮ず", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); + if (result == DialogResult.Cancel) + { + return; + } + } + ViewModel.SectionShapePara VoluteArgument = new ViewModel.SectionShapePara(); + string json = VoluteArgument.DeriveArgument(_sectionBaseInfo); + string filePath = Path.Combine(@"C:\Users\THL\Desktop", $"铚楀3鍙傛暟.json"); + File.WriteAllText(filePath, json); + } + #region 鍒濆鍖栨楠ゅ垪琛� /// <summary> @@ -256,23 +414,23 @@ step鏂潰鍩烘湰淇℃伅.ParentID = Group_ID_Section18; _allStepNodes.Add(step鏂潰鍩烘湰淇℃伅); - - var stepSetct18 = new DPumpHydr.WinFrmUI.Volute.TreeStepNode() - { - ProgressState = WinFrmUI.Volute.TreeStepNode.eProgressState.鏈畬鎴�, - DataState = WinFrmUI.Volute.TreeStepNode.eDataState.鏈煡 - }; - stepSetct18.AllowSelect = true; - stepSetct18.Caption = "绗洓姝�: 绗�1-8鏂潰" ; + + var stepSetct18 = new DPumpHydr.WinFrmUI.Volute.TreeStepNode() + { + ProgressState = WinFrmUI.Volute.TreeStepNode.eProgressState.鏈畬鎴�, + DataState = WinFrmUI.Volute.TreeStepNode.eDataState.鏈煡 + }; + stepSetct18.AllowSelect = true; + stepSetct18.Caption = "绗洓姝�: 绗�1-8鏂潰"; stepSetct18.Name = "TreeStepNode" + Step_ID_Section18_Dim; - stepSetct18.ID = Step_ID_Section18_Dim ; - stepSetct18.Group = "鐩栨澘杩炴帴"; - stepSetct18.ParentID = Group_ID_Section18; - _allStepNodes.Add(stepSetct18); - + stepSetct18.ID = Step_ID_Section18_Dim; + stepSetct18.Group = "鐩栨澘杩炴帴"; + stepSetct18.ParentID = Group_ID_Section18; + _allStepNodes.Add(stepSetct18); - + + #endregion @@ -300,14 +458,14 @@ }; step鍑烘按浣撶被鍨�.AllowSelect = true; step鍑烘按浣撶被鍨�.Caption = "绗簲姝�:鍑烘按浣撶被鍨�"; - step鍑烘按浣撶被鍨�.Name = "TreeStepNode"+ Step_ID_Outflow_Style; + step鍑烘按浣撶被鍨�.Name = "TreeStepNode" + Step_ID_Outflow_Style; step鍑烘按浣撶被鍨�.ID = Step_ID_Outflow_Style; step鍑烘按浣撶被鍨�.Group = Group_Name_Outflow; step鍑烘按浣撶被鍨�.ParentID = Group_ID_Outflow; _allStepNodes.Add(step鍑烘按浣撶被鍨�); - + var step鍑烘按浣撳昂瀵� = new DPumpHydr.WinFrmUI.Volute.TreeStepNode() { ProgressState = WinFrmUI.Volute.TreeStepNode.eProgressState.鏈畬鎴�, @@ -315,7 +473,7 @@ }; step鍑烘按浣撳昂瀵�.AllowSelect = true; step鍑烘按浣撳昂瀵�.Caption = "绗叚姝�:鍑烘按浣撳昂瀵�"; - step鍑烘按浣撳昂瀵�.Name = "TreeStepNode"+ Step_ID_Outflow_Dim; + step鍑烘按浣撳昂瀵�.Name = "TreeStepNode" + Step_ID_Outflow_Dim; step鍑烘按浣撳昂瀵�.ID = Step_ID_Outflow_Dim; step鍑烘按浣撳昂瀵�.Group = Group_Name_Outflow; step鍑烘按浣撳昂瀵�.ParentID = Group_ID_Outflow; @@ -338,7 +496,7 @@ _ctrlHdrBaseInfo.Dock = DockStyle.Right; _ctrlHdrBaseInfo.SetBindingData(hdrBaseInfo); } - this.panelParas.Controls.Clear(); + //this.panelParas.Controls.Clear();//涓嶈兘娓呯悊 this.panelParas.Controls.Add(_ctrlHdrBaseInfo); this._currentStepID = Step_ID_Hdr_Base_Info; //this.stepTreeListCtrl.SetStepSource(_allStepNodes, 1); -- Gitblit v1.9.3