duheng
2024-12-11 17a0baa0ef883689c73e3141d148a28a48d62cd6
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/XhsProjectSimulationCorePage.cs
@@ -30,24 +30,26 @@
        /// 新增工况事件
        /// </summary>
        public event Action<HydroWorkingVmo> AppendWorkingEvent;
        /// <summary>
        /// 保存模型事件
        /// </summary>
        public event Func<Yw.Model.HydroModelInfo, Task<Yw.Model.HydroModelInfo>> SaveModelEvent;
        /// <summary>
        /// 刷新模型事件
        /// </summary>
        public event Func<Task<Yw.Model.HydroModelInfo>> RefreshModelEvent;
        /// <summary>
        /// 更新方案事件
        /// </summary>
        public event Action<XhsSchemeVmo> UpdateSchemeEvent;
        /// <summary>
        /// 移除方案事件
        /// </summary>
        public event Action<XhsSchemeVmo> RemoveSchemeEvent;
        private HStation.Vmo.XhsProjectVmo _project = null;//项目
        private HStation.Vmo.XhsProjectSiteVmo _projectSite = null;//项目站
@@ -138,7 +140,7 @@
            this.tabPageBimface.Controls.Add(bimfaceCtrl);
        }
        #endregion
        #endregion BIM控件
        #region Q3d控件
@@ -175,7 +177,7 @@
            this.tabPageQ3d.Controls.Add(q3dCtrl);
        }
        #endregion
        #endregion Q3d控件
        #region 属性控件
@@ -266,7 +268,6 @@
                    var flowEffectHelper = await GetFlowEffectHelper();
                    flowEffectHelper.Set(visual);
                };
            }
            return _propertyCtrl;
        }
@@ -321,7 +322,7 @@
            _propertyCtrl?.UpdateRows();
        }
        #endregion
        #endregion 属性控件
        #region 选择构件
@@ -357,12 +358,14 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Bimface:
                    {
                        this.barBtnSetMonitor.Enabled = visual != null;
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Q3d:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -370,12 +373,14 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Property:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
                        this.barBtnSetMonitor.Enabled = visual != null;
                    }
                    break;
                case eVisualSource.List:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -383,6 +388,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Set:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -390,6 +396,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Search:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -397,6 +404,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Monitor:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -404,6 +412,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Check:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -411,6 +420,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Calcu:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -418,6 +428,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                case eVisualSource.Warning:
                    {
                        _bimfaceCtrl?.ZoomAndSelectComponent(visual?.Code);
@@ -425,6 +436,7 @@
                        SetPropertyCtrl(visual);
                    }
                    break;
                default: break;
            }
        }
@@ -436,7 +448,7 @@
            SelectVisual(visual, source);
        }
        #endregion
        #endregion 选择构件
        #region 构件明细
@@ -485,7 +497,7 @@
            return helper.GetSourceList();
        }
        #endregion
        #endregion 可见列表
        #region 视图列表
@@ -515,7 +527,7 @@
            return helper.GetVisualList();
        }
        #endregion
        #endregion 视图列表
        #region 明细控件
@@ -615,7 +627,7 @@
            ShowVisualListCtrl();
        }
        #endregion
        #endregion 明细控件
        #region 构件显示
@@ -664,9 +676,9 @@
            SetVisualVisible();
        }
        #endregion
        #endregion 构件显示
        #endregion
        #endregion 构件明细
        #region 一键显隐
@@ -690,7 +702,9 @@
            SetDecoratorVisible(this.barCkDecorator.Checked);
        }
        #endregion
        #endregion 一键显隐
        #region 保存信息
@@ -715,16 +729,15 @@
            TipFormHelper.ShowSucceed("保存成功!");
            //Stopwatch sw = new Stopwatch();
            //sw.Start();
            //耗时巨大的代码
            //耗时巨大的代码
            //sw.Stop();
            //TimeSpan ts2 = sw.Elapsed;
            //Console.WriteLine("Stopwatch总共花费{0}ms.", ts2.TotalMilliseconds);
        }
        #endregion
        #endregion 保存信息
        #region 批量配置
@@ -1022,7 +1035,6 @@
            };
        }
        //显示RadialMenu
        private void barBtnSetList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
@@ -1226,11 +1238,9 @@
            {
                this.barBtnSetCompressorList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
            }
        }
        #endregion
        #endregion 批量配置
        #region 构件查询
@@ -1321,7 +1331,7 @@
            ShowSearchDlg();
        }
        #endregion
        #endregion 构件查询
        #region 模型标注
@@ -1373,7 +1383,7 @@
            markHelper.Set();
        }
        #endregion
        #endregion 模型标注
        #region 颜色分级
@@ -1455,7 +1465,7 @@
            gradingHelper.Set();
        }
        #endregion
        #endregion 颜色分级
        #region 人工刷新
@@ -1468,7 +1478,6 @@
            }
            if (XtraMessageBox.Show("刷新后将丢失当前水力信息更改,是否继续刷新?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                var hydroInfo = await this.RefreshModelEvent.Invoke();
                if (hydroInfo == null)
                {
@@ -1483,7 +1492,7 @@
            }
        }
        #endregion
        #endregion 人工刷新
        #region 水流动画
@@ -1516,7 +1525,7 @@
            flowEffectHelper.Set();
        }
        #endregion
        #endregion 水流动画
        #region 监测列表
@@ -1538,6 +1547,13 @@
                _monitorHelper = new SimulationMonitorHelper(visualListHelper);
            }
            return _monitorHelper;
        }
        //获取监测点列表
        private async Task<List<HydroMonitorVmo>> GetMonitorList()
        {
            var helper = GetMonitorHelper();
            return await helper.Get();
        }
        //设置监测点列表
@@ -1576,7 +1592,7 @@
            SetMonitorList(_visual);
        }
        #endregion
        #endregion 监测点
        #region 监测值
@@ -1599,16 +1615,15 @@
        private void ResetMonitorValue()
        {
            var allWorkingList = GetWorkingList();
            var working = allWorkingList?.Last(x => !string.IsNullOrEmpty(x.MonitorInfo));
            var working = allWorkingList?.LastOrDefault(x => !string.IsNullOrEmpty(x.MonitorInfo));
            if (working != null)
            {
                var helper = GetMonitorValueHelper();
                helper.Reset(working.MonitorInfo);
            }
        }
        #endregion
        #endregion 监测值
        #region 监测值控件
@@ -1674,7 +1689,7 @@
            ShowMonitorValueListCtrl();
        }
        #endregion
        #endregion 监测值控件
        #region 监测点标记
@@ -1701,9 +1716,9 @@
            monitorMarkerHelper.Set();
        }
        #endregion
        #endregion 监测点标记
        #endregion
        #endregion 监测列表
        #region 模型检查
@@ -1787,7 +1802,7 @@
            ShowCheckCtrl(checkResult);
        }
        #endregion
        #endregion 模型检查
        #region 模型计算
@@ -1807,7 +1822,7 @@
            return _calcuResultHelper;
        }
        #endregion
        #endregion 计算结果
        #region 计算失败
@@ -1871,7 +1886,7 @@
            calcuFailedCtrl.SetBindingData(calcuResult.FailedList);
        }
        #endregion
        #endregion 计算失败
        #region 计算警告
@@ -1943,7 +1958,7 @@
            calcuWaringCtrl.SetBindingData(calcuResult.WainingList, allVisualDict);
        }
        #endregion
        #endregion 计算警告
        #region 计算标签
@@ -1970,9 +1985,9 @@
            calcuResultLabelHelper.Set();
        }
        #endregion
        #endregion 计算标签
        #endregion
        #endregion 模型计算
        #region 管网修复
@@ -2037,7 +2052,7 @@
            Repair();
        }
        #endregion
        #endregion 管网修复
        #region 导出INP
@@ -2059,7 +2074,7 @@
            TipFormHelper.ShowSucceed("导出成功");
        }
        #endregion
        #endregion 导出INP
        #region 水泵列表
@@ -2134,11 +2149,10 @@
        //并联模拟
        private void barBtnPumpParallel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            PumpParallel();
        }
        #endregion
        #endregion 水泵列表
        #region 水力计算
@@ -2211,38 +2225,36 @@
                var visualVmListHelper = GetVisualVmListHelper();
                visualVmListHelper.UpdateCalcuProperty(calcuResult);
                #endregion
                #endregion 视图列表
                #region 当前构件
                SelectVisual(_visual, eVisualSource.Calcu);
                #endregion
                #endregion 当前构件
                #region 构件明细
                UpdateVisualListCtrl();
                #endregion
                #endregion 构件明细
                #region 颜色分级
                var gradingHelper = await GetGradingHelper();
                gradingHelper.Set();
                #endregion
                #endregion 颜色分级
                #region 计算标签
                var calcuResultLabelHelper = await GetCalcuResultLabelHelper();
                calcuResultLabelHelper.Set();
                #endregion
                #endregion 计算标签
            };
            dlg.ShowDialog();
        }
        //水力计算
@@ -2251,7 +2263,7 @@
            Calcu();
        }
        #endregion
        #endregion 水力计算
        #region 导出报告
@@ -2263,10 +2275,10 @@
                return;
            }
            SimulationWordReport word = new SimulationWordReport();
            word.Create(fileName);
            //word.Create(fileName);
        }
        #endregion
        #endregion 导出报告
        #region 当前工况
@@ -2331,7 +2343,7 @@
            AddWorking();
        }
        #endregion
        #endregion 当前工况
        #region 选择工况
@@ -2378,8 +2390,7 @@
            helper.Remove(working);
        }
        #endregion
        #endregion 选择工况
        #region 工况分析
@@ -2458,8 +2469,9 @@
        }
        //能效分析
        private void barBtnWorkingPower_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        private async void barBtnWorkingPower_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            var allMonitorList = await GetMonitorList();
            var workingCheckedListHelper = GetWorkingCheckedListHelper();
            var allCheckedWorkingList = workingCheckedListHelper.GetCheckedWorkingList();
            if (allCheckedWorkingList == null || allCheckedWorkingList.Count < 1)
@@ -2471,14 +2483,13 @@
                    return;
                }
                var dlg = new SimulationSingleWorkingEnergyDlg();
                dlg.SetBindingData(workingHelper.Working, workingHelper.HydroInfo, workingHelper.CalcuResult);
                dlg.SetBindingData(workingHelper.Working, workingHelper.HydroInfo, allMonitorList, workingHelper.CalcuResult);
                dlg.ShowDialog();
            }
            else
            {
                var dlg = new SimulationMultiWorkingEnergyDlg();
                dlg.SetBindingData(_hydroInfo, allCheckedWorkingList);
                dlg.SetBindingData(_hydroInfo, allMonitorList, allCheckedWorkingList);
                dlg.ShowDialog();
            }
        }
@@ -2604,14 +2615,6 @@
            }
        }
        #endregion
        #endregion 工况分析
    }
}