| | |
| | | InitializeComponent(); |
| | | this.PageTitle.Caption = "水力模拟"; |
| | | this.PageTitle.HeaderSvgImage = this.svgImg32[0]; |
| | | |
| | | this.xhsProjectSimulationSearchCtrl1.ApplySearchEvent += XhsProjectSimulationSearchCtrl1_ApplySearchEvent; |
| | | this.xhsProjectSimulationCalcuCtrl1.CancelEvent += XhsProjectSimulationCalcuCtrl1_CancelEvent; |
| | | this.xhsProjectSimulationCalcuCtrl1.OkEvent += XhsProjectSimulationCalcuCtrl1_OkEvent; |
| | | |
| | | this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | } |
| | | |
| | | |
| | | |
| | | private HStation.Vmo.XhsProjectVmo _project = null;//项目 |
| | | private HStation.Vmo.XhsProjectSiteVmo _projectSite = null;//项目站 |
| | | private Yw.Model.HydroModelInfo _hydroInfo = null;//水力信息 |
| | | |
| | | private Yw.Model.HydroParterInfo _parter = null; |
| | | private Yw.EPAnet.CheckResult _checkResult = null; |
| | | private Yw.WinFrmUI.HydroCheckResult _checkResult = null; |
| | | private Yw.EPAnet.CalcuResult _calcuResult = null; |
| | | |
| | | /// <summary> |
| | |
| | | this.PageTitle.Caption = $"{_project.Name}\r\n水力模拟"; |
| | | await this.xhsProjectSimulationBimfaceCtrl1.SetBindingData(_project, _projectSite, () => _hydroInfo); |
| | | this.xhsProjectSimulationQ3dCtrl1.SetBindingData(_hydroInfo); |
| | | this.xhsProjectSimulationL3dCtrl1.SetBindingData(_hydroInfo); |
| | | this.xhsProjectSimulationPropertyCtrl1.SetBindingData(() => _hydroInfo); |
| | | this.xhsProjectSimulationPropertyCtrl1.InitialData(() => _hydroInfo); |
| | | this.xhsProjectSimulationSearchCtrl1.InitialData(() => _hydroInfo); |
| | | } |
| | | |
| | | #region INP导出 |
| | |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | |
| | | var input = AssetsMatchingParasHelper.Create(_hydroInfo); |
| | | this.xhsProjectSimulationMatchingListCtrl1.SetBindingData(input); |
| | |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | |
| | | this.xhsProjectSimulationUnMatchingListCtrl1.SetBindingData(_hydroInfo); |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | |
| | | var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); |
| | | _checkResult = netWork.Check(); |
| | | if (_checkResult.Succeed) |
| | | { |
| | | TipFormHelper.ShowSucceed("校验通过!"); |
| | | return; |
| | | } |
| | | this.xhsProjectSimulationHydroCheckFailedCtrl1.SetBindingData(_checkResult.FailedList); |
| | | _checkResult = _hydroInfo.Check(); |
| | | this.xhsProjectSimulationHydroCheckResultCtrl1.SetBindingData(_checkResult); |
| | | this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | | this.docPnlHydroCheck.Height = 350; |
| | | } |
| | | |
| | | //水力校验点击 |
| | | private async void xhsProjectSimulationHydroCheckFailedCtrl1_HydroClickEvent(string code) |
| | | private async void xhsProjectSimulationHydroCheckResultCtrl1_HydroClickEvent(string code) |
| | | { |
| | | if (_hydroInfo == null) |
| | | { |
| | | return; |
| | | } |
| | | var allParterList = _hydroInfo.GetAllParters(); |
| | | _parter = allParterList.Find(x => x.Code == code); |
| | | var elementIds = new List<string>() { _parter.Code }; |
| | | var elementIds = new List<string>(); |
| | | if (string.IsNullOrEmpty(code)) |
| | | { |
| | | _parter = null; |
| | | } |
| | | else |
| | | { |
| | | var allParterList = _hydroInfo.GetAllParters(); |
| | | _parter = allParterList.Find(x => x.Code == code); |
| | | if (_parter != null) |
| | | { |
| | | elementIds.Add(_parter.Code); |
| | | } |
| | | } |
| | | await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(elementIds); |
| | | ShowProperty(); |
| | | SetBimfaceLinkColor(); |
| | |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | |
| | | this.hydroParterListCtrl1.SetBindingData(_hydroInfo); |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | |
| | | return; |
| | | } |
| | | var pumps = _hydroInfo.Pumps; |
| | | var vmList = pumps.Select(x => new HStation.WinFrmUI.PhartRelation.Perform2dMultiViewModel() |
| | | var vmList = new List<Yw.WinFrmUI.Phart.PumpSerialParallelViewModel>(); |
| | | foreach (var x in pumps) |
| | | { |
| | | Id = x.Code, |
| | | Name = x.Code, |
| | | SpeedRatio = x.SpeedRatio ?? 1, |
| | | PointsQH = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQH)?.CurveData?.Select(z => new PhartRelation.PerformPoint2dViewModel() { X = z.X, Y = z.Y }).ToList(), |
| | | PointsQP = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQP)?.CurveData?.Select(z => new PhartRelation.PerformPoint2dViewModel() { X = z.X, Y = z.Y }).ToList(), |
| | | PointsQE = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQE)?.CurveData?.Select(z => new PhartRelation.PerformPoint2dViewModel() { X = z.X, Y = z.Y }).ToList(), |
| | | }).ToList(); |
| | | var dlg = new HStation.WinFrmUI.PhartRelation.PumpPerform2dMultiViewDlg(); |
| | | dlg.SetBindingData(vmList, false, true); |
| | | var vm = new Yw.WinFrmUI.Phart.PumpSerialParallelViewModel(); |
| | | vm.Id = x.Code; |
| | | vm.Name = x.Code; |
| | | //vm.IsBp = ; |
| | | vm.RatedSpeed = 590; |
| | | vm.CurrentSpeed = 590; |
| | | vm.CurrentHz = 50; |
| | | var PointsQH = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQH)?.CurveData?.Select(z => new Yw.Geometry.Point2d() { X = z.X, Y = z.Y }).ToList(); |
| | | var PointsQP = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQP)?.CurveData?.Select(z => new Yw.Geometry.Point2d { X = z.X, Y = z.Y }).ToList(); |
| | | var PointsQE = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQE)?.CurveData?.Select(z => new Yw.Geometry.Point2d { X = z.X, Y = z.Y }).ToList(); |
| | | |
| | | vm.Qh = new Yw.Geometry.CubicSpline2d(PointsQH); |
| | | vm.Qe = new Yw.Geometry.CubicSpline2d(PointsQE); |
| | | vm.Qp = new Yw.Geometry.CubicSpline2d(PointsQP); |
| | | vmList.Add(vm); |
| | | } |
| | | var dlg = new HStation.WinFrmUI.PhartRelation.PumpSerialParallelChartDlg(); |
| | | dlg.SetBindingData(vmList, null, true); |
| | | dlg.ShowDialog(); |
| | | } |
| | | |
| | |
| | | { |
| | | return; |
| | | } |
| | | |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | |
| | | this.xhsProjectSimulationCalcuCtrl1.SetBindingData(_hydroInfo); |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | | this.docPnlHydroCalcu.Height = 350; |
| | | |
| | | |
| | | |
| | | //var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); |
| | | //_calcuResult = netWork.Calcu(); |
| | | //if (_calcuResult.Succeed) |
| | | //{ |
| | | // ShowProperty(); |
| | | // TipFormHelper.ShowSucceed("计算成功!"); |
| | | //} |
| | | //else |
| | | //{ |
| | | // this.xhsProjectSimulationHydroCalcuFailedCtrl1.SetBindingData(_calcuResult.FailedList); |
| | | // this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | | // this.docPnlHydroCalcu.Height = 350; |
| | | //} |
| | | //await this.xhsProjectSimulationBimfaceCtrl1.ShowCalcuCustomLabels(_calcuResult); |
| | | } |
| | | |
| | | //取消 |
| | | private void XhsProjectSimulationCalcuCtrl1_CancelEvent() |
| | | { |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | } |
| | | |
| | | //确认 |
| | | private async void XhsProjectSimulationCalcuCtrl1_OkEvent() |
| | | { |
| | | var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); |
| | | _calcuResult = netWork.Calcu(); |
| | | if (_calcuResult.Succeed) |
| | | { |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | ShowProperty(); |
| | | TipFormHelper.ShowSucceed("计算成功!"); |
| | | await this.xhsProjectSimulationBimfaceCtrl1.ShowCalcuCustomLabels(_calcuResult); |
| | | } |
| | | else |
| | | { |
| | | this.xhsProjectSimulationCalcuCtrl1.SetBindingData(_calcuResult.FailedList); |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | | this.docPnlHydroCalcu.Height = 350; |
| | | } |
| | | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 查询 |
| | | |
| | | //查询 |
| | | private void barBtnSearch_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | if (_hydroInfo == null) |
| | | { |
| | | return; |
| | | } |
| | | this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; |
| | | |
| | | var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); |
| | | _calcuResult = netWork.Calcu(); |
| | | if (_calcuResult.Succeed) |
| | | this.docPnlSearch.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | | this.docPnlSearch.Height = 350; |
| | | } |
| | | |
| | | //应用查询 |
| | | private async void XhsProjectSimulationSearchCtrl1_ApplySearchEvent(List<Yw.Model.HydroParterInfo> obj) |
| | | { |
| | | if (_hydroInfo == null) |
| | | { |
| | | ShowProperty(); |
| | | TipFormHelper.ShowSucceed("计算成功!"); |
| | | return; |
| | | } |
| | | var elementIds = new List<string>(); |
| | | if (obj != null && obj.Count > 0) |
| | | { |
| | | var first = obj.First(); |
| | | var allParterList = _hydroInfo.GetAllParters(); |
| | | _parter = allParterList.Find(x => x.Code == first.Code); |
| | | obj.ForEach(x => elementIds.Add(x.Code)); |
| | | } |
| | | else |
| | | { |
| | | this.xhsProjectSimulationHydroCalcuFailedCtrl1.SetBindingData(_calcuResult.FailedList); |
| | | this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; |
| | | this.docPnlHydroCalcu.Height = 350; |
| | | _parter = null; |
| | | } |
| | | await this.xhsProjectSimulationBimfaceCtrl1.ShowCalcuCustomLabels(_calcuResult); |
| | | await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(elementIds); |
| | | ShowProperty(); |
| | | SetBimfaceLinkColor(); |
| | | } |
| | | |
| | | #endregion |