duheng
2024-12-04 7079cbb505471a8d3251cac4e27c7a3841f8e656
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.cs
@@ -433,6 +433,23 @@
            return _visualVmListHelper;
        }
        //获取可见视图
        private HydroVisualViewModel GetVisualViewModel(string code)
        {
            if (string.IsNullOrEmpty(code))
            {
                return default;
            }
            var visualVmListHelper = GetVisualVmListHelper();
            return visualVmListHelper.GetVisual(code);
        }
        //获取可见视图
        private HydroVisualViewModel GetVisualViewModel(Yw.Model.HydroVisualInfo visual)
        {
            return GetVisualViewModel(visual?.Code);
        }
        #endregion
        #region 明细控件
@@ -450,10 +467,6 @@
                _visualListCtrl.HydroClickInfoEvent += (visual) =>
                {
                    SelectVisual(visual, eVisualSource.List);
                };
                _visualListCtrl.HydroChangedInfoEvent += (visualList) =>
                {
                    SelectVisual(_visual, eVisualSource.List);
                };
            }
            return _visualListCtrl;
@@ -497,15 +510,7 @@
            var visualVmListHelper = GetVisualVmListHelper();
            var allVisualVmList = visualVmListHelper.GetVisualList();
            visualListCtrl.SetBindingData(allVisualVmList);
            var calcuResult = GetCalcuResult();
            if (calcuResult != null && calcuResult.Succeed)
            {
                visualListCtrl.SetCalcuView();
            }
            else
            {
                visualListCtrl.SetNormalView();
            }
            visualListCtrl.SetResultView();
        }
        //更新构件明细控件
@@ -1400,26 +1405,26 @@
            }
            var dlg = new PumpParallelAnalyDlg();
            dlg.SetBindingData(vmList);
            dlg.ReloadDataEvent += (list) =>
            {
                list?.ForEach(x =>
                {
                    var pump = pumps.Find(t => t.Code == x.Code);
                    if (pump != null)
                    {
                        pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed;
                        pump.SpeedRatio = x.CurrentHz / pump.RatedHz;
                    }
                });
                var codes = list?.Select(x => x.Code).ToList();
                //UpdateVisualViewModelProperty(codes);
                //ShowSelectedProperty();
                UpdateVisualListCtrl();
                return true;
            };
            dlg.ShowDialog();
            //var dlg = new PumpParallelAnalyDlg();
            //dlg.SetBindingData(vmList);
            //dlg.ReloadDataEvent += (list) =>
            //{
            //    list?.ForEach(x =>
            //    {
            //        var pump = pumps.Find(t => t.Code == x.Code);
            //        if (pump != null)
            //        {
            //            pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed;
            //            pump.SpeedRatio = x.CurrentHz / pump.RatedHz;
            //        }
            //    });
            //    var codes = list?.Select(x => x.Code).ToList();
            //    //UpdateVisualViewModelProperty(codes);
            //    //ShowSelectedProperty();
            //    UpdateVisualListCtrl();
            //    return true;
            //};
            //dlg.ShowDialog();
        }
        //并联分析
@@ -1603,23 +1608,23 @@
            }
            var dlg = new PumpParallelAnalyDlg();
            dlg.SetBindingData(vmList);
            dlg.ReloadDataEvent += (list) =>
            {
                list?.ForEach(x =>
                {
                    var pump = _hydroInfo.Pumps?.Find(t => t.Code == x.Code);
                    if (pump != null)
                    {
                        pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed;
                        pump.SpeedRatio = Math.Round(x.CurrentHz / pump.RatedHz, 1);
                    }
                });
                //ShowSelectedProperty();
                return true;
            };
            dlg.ShowDialog();
            //var dlg = new PumpParallelAnalyDlg();
            //dlg.SetBindingData(vmList);
            //dlg.ReloadDataEvent += (list) =>
            //{
            //    list?.ForEach(x =>
            //    {
            //        var pump = _hydroInfo.Pumps?.Find(t => t.Code == x.Code);
            //        if (pump != null)
            //        {
            //            pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed;
            //            pump.SpeedRatio = Math.Round(x.CurrentHz / pump.RatedHz, 1);
            //        }
            //    });
            //    //ShowSelectedProperty();
            //    return true;
            //};
            //dlg.ShowDialog();
        }
        //能效分析