duheng
2024-10-14 05d57af48f51d2ac8292bc3faaa01ca753763790
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs
@@ -15,12 +15,18 @@
            InitializeComponent();
            this.PageTitle.Caption = "水力模拟";
            this.PageTitle.HeaderSvgImage = this.svgImg32[0];
            this.xhsProjectSimulationSearchCtrl1.ApplySearchEvent += XhsProjectSimulationSearchCtrl1_ApplySearchEvent;
            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;//项目站
@@ -72,8 +78,8 @@
            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导出
@@ -200,6 +206,7 @@
            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);
@@ -244,6 +251,7 @@
            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;
@@ -316,6 +324,7 @@
            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;
            _checkResult = _hydroInfo.Check();
            this.xhsProjectSimulationHydroCheckResultCtrl1.SetBindingData(_checkResult);
@@ -386,6 +395,7 @@
            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;
@@ -496,7 +506,7 @@
                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);
            dlg.SetBindingData(vmList, null, false, true);
            dlg.ShowDialog();
        }
@@ -511,11 +521,16 @@
            {
                return;
            }
            var dlg = new XhsProjectSimulationCalcuPrefixDlg();
            dlg.ShowDialog();
            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();
@@ -535,6 +550,52 @@
        #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;
            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)
            {
                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
            {
                _parter = null;
            }
            await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(elementIds);
            ShowProperty();
            SetBimfaceLinkColor();
        }
        #endregion
    }
}