lixiaojun
2024-12-05 f5cdfeae3594e3e6e1461300e93c266ce79c1a8a
属性代码恢复
已修改1个文件
185 ■■■■ 文件已修改
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs 185 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs
@@ -58,7 +58,7 @@
        /// </summary>
        public event Action<HydroVisualInfo> FlowEffectPropertyValueChangedEvent;
        #endregion 事件集
        #endregion
        #region 属性赋值
@@ -71,7 +71,7 @@
            set { this.hydroVisualPropertyCtrl1.SelectedObject = value; }
        }
        #endregion 属性赋值
        #endregion
        #region 属性更新
@@ -105,7 +105,7 @@
            this.hydroVisualPropertyCtrl1.UpdateRows();
        }
        #endregion 属性更新
        #endregion
        #region 事件实现
@@ -132,7 +132,6 @@
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Waterbox:
                    {
                        var tankViewModel = vm as HydroTankViewModel;
@@ -147,12 +146,20 @@
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Blunthead:
                    {
                        var bluntheadViewModel = vm as HydroBluntheadViewModel;
                        var input = HydroMatchingHelper.Create(bluntheadViewModel);
                        var dlg = new SimulationBluntheadSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(bluntheadViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Elbow:
                    {
                        var elbowViewModel = vm as HydroElbowViewModel;
@@ -167,42 +174,104 @@
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Threelink:
                    {
                        var threelinkViewModel = vm as HydroThreelinkViewModel;
                        var input = HydroMatchingHelper.Create(threelinkViewModel);
                        var dlg = new SimulationThreelinkSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(threelinkViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Fourlink:
                    {
                        var fourlinkViewModel = vm as HydroFourlinkViewModel;
                        var input = HydroMatchingHelper.Create(fourlinkViewModel);
                        var dlg = new SimulationFourlinkSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(fourlinkViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Meter:
                    {
                        var meterViewModel = vm as HydroMeterViewModel;
                        var input = HydroMatchingHelper.Create(meterViewModel);
                        var dlg = new SimulationMeterSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(meterViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Flowmeter:
                    {
                        var flowmeterViewModel = vm as HydroFlowmeterViewModel;
                        var input = HydroMatchingHelper.Create(flowmeterViewModel);
                        var dlg = new SimulationFlowmeterSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(flowmeterViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Pressmeter:
                    {
                        var pressmeterViewModel = vm as HydroPressmeterViewModel;
                        var input = HydroMatchingHelper.Create(pressmeterViewModel);
                        var dlg = new SimulationPressmeterSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(pressmeterViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Nozzle:
                    {
                        var nozzleViewModel = vm as HydroNozzleViewModel;
                        var input = HydroMatchingHelper.Create(nozzleViewModel);
                        var dlg = new SimulationSprinklerSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(nozzleViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Hydrant:
                    {
                        var hydrantViewModel = vm as HydroHydrantViewModel;
                        var input = HydroMatchingHelper.Create(hydrantViewModel);
                        var dlg = new SimulationHydrantSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(hydrantViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Pipe:
                    {
                        var pipeViewModel = vm as HydroPipeViewModel;
@@ -216,7 +285,6 @@
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Pump:
                    {
                        var pumpViewModel = vm as HydroPumpViewModel;
@@ -231,23 +299,50 @@
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Valve:
                    {
                        var valveViewModel = vm as HydroValveViewModel;
                        var input = HydroMatchingHelper.Create(valveViewModel);
                        var dlg = new SimulationValveSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(valveViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Exchanger:
                    {
                        var exchangerViewModel = vm as HydroExchangerViewModel;
                        var input = HydroMatchingHelper.Create(exchangerViewModel);
                        var dlg = new SimulationExchangerSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(exchangerViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Compressor:
                    {
                        var compressorViewModel = vm as HydroCompressorViewModel;
                        var input = HydroMatchingHelper.Create(compressorViewModel);
                        var dlg = new SimulationCompressorSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(compressorViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                default: break;
            }
        }
@@ -262,36 +357,70 @@
            {
                case HydroCurve.Tank:
                    {
                        if (long.TryParse(vm.DbId, out long longDbId))
                        {
                            var tankViewModel = vm as HydroTankViewModel;
                            var dlg = new TankChartShowDlg();
                            dlg.SetBingingData(longDbId);
                            dlg.ShowDialog();
                        }
                    }
                    break;
                case HydroCurve.Pump:
                    {
                        var pumpViewModel = vm as HydroPumpViewModel;
                        //var dlg = new PumpChartShowDlg();
                        var dlg = new SimulationSinglePumpFeatDlg();
                        dlg.SaveEvent += (working) =>
                        {
                            pumpViewModel.Vmo.LinkStatus = working.LinkStatus;
                            pumpViewModel.Vmo.SpeedRatio = working.CurrentHz / pumpViewModel.Vmo.RatedHz;
                            pumpViewModel.UpdateProperty();
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(pumpViewModel);
                        dlg.ShowDialog();
                    }
                    break;
                case HydroCurve.Valve:
                    {
                        if (long.TryParse(vm.DbId, out long longDbId))
                        {
                            var valveViewModel = vm as HydroValveViewModel;
                            var dlg = new ValveChartShowDlg();
                            dlg.SetBingingData(longDbId);
                            dlg.ShowDialog();
                        }
                    }
                    break;
                case HydroCurve.Exchanger:
                    {
                        if (long.TryParse(vm.DbId, out long longDbId))
                        {
                            var exchangerViewModel = vm as HydroExchangerViewModel;
                            var dlg = new ExchangerChartShowDlg();
                            dlg.SetBingingData(longDbId);
                            dlg.ShowDialog();
                        }
                    }
                    break;
                case HydroCurve.Compressor:
                    {
                        if (long.TryParse(vm.DbId, out long longDbId))
                        {
                            var compressorViewModel = vm as HydroCompressorViewModel;
                            var dlg = new CompressorChartShowDlg();
                            dlg.SetBingingData(longDbId);
                            dlg.ShowDialog();
                        }
                    }
                    break;
                default: break;
            }
        }
        #endregion 事件实现
        #endregion
        #region 事件穿透
@@ -339,6 +468,8 @@
            this.FlowEffectPropertyValueChangedEvent?.Invoke(vm?.Vmo);
        }
        #endregion 事件穿透
        #endregion
    }
}