lixiaojun
2025-02-10 a234486afe7d632b46cd65fa2cffbd07d93d4285
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs
@@ -1,8 +1,4 @@
using DevExpress.Utils.MVVM;
using HStation.WinFrmUI.PhartRelation;
using HStation.WinFrmUI.Xhs;
using Yw.Model;
using Yw.WinFrmUI.HydroW3d;
using Yw.Model;
namespace HStation.WinFrmUI
{
@@ -22,7 +18,6 @@
            this.hydroVisualPropertyCtrl1.PropertyValueChangedEvent += HydroVisualPropertyCtrl1_PropertyValueChangedEvent;
            this.hydroVisualPropertyCtrl1.MarkPropertyValueChangedEvent += HydroVisualPropertyCtrl1_MarkPropertyValueChangedEvent;
            this.hydroVisualPropertyCtrl1.GradingPropertyValueChangedEvent += HydroPVisualPropertyCtrl1_GradingPropertyValueChangedEvent;
            this.hydroVisualPropertyCtrl1.ParterChangedEvent += HydroVisualPropertyCtrl1_ParterChangedEvent;
        }
        #region 事件集合
@@ -54,19 +49,23 @@
        /// </summary>
        public event Action<HydroVisualInfo> GradingPropertyValueChangedEvent;
        /// <summary>
        /// 构件改变事件
        /// </summary>
        public event Action<HydroParterInfo, eChangeType> ParterChangedEvent;
        private HydroChangeHelper _changeHelper = null;//改变辅助类
        private HydroPropStatusHelper _propStatusHelper = null;//属性状态辅助类
        #endregion
        /// <summary>
        /// 初始化数据
        /// </summary>
        public void InitialData(HydroPropStatusHelper propStatusHelper)
        public void InitialData
            (
                HydroChangeHelper changeHelper,
                HydroPropStatusHelper propStatusHelper
            )
        {
            this.hydroVisualPropertyCtrl1.InitialData(propStatusHelper);
            _changeHelper = changeHelper;
            _propStatusHelper = propStatusHelper;
            this.hydroVisualPropertyCtrl1.InitialData(changeHelper, propStatusHelper);
        }
        #region 属性赋值
@@ -148,7 +147,7 @@
                        var dlg = new AssetsTankSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(tankViewModel, output);
                            HydroMatchingHelper.Apply(tankViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -166,7 +165,7 @@
                        var dlg = new AssetsTankSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(tankViewModel, output);
                            HydroMatchingHelper.Apply(tankViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -184,7 +183,7 @@
                        var dlg = new AssetsBluntheadSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(bluntheadViewModel, output);
                            HydroMatchingHelper.Apply(bluntheadViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -202,7 +201,7 @@
                        var dlg = new AssetsElbowSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(elbowViewModel, output);
                            HydroMatchingHelper.Apply(elbowViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -220,7 +219,7 @@
                        var dlg = new AssetsThreelinkSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(threelinkViewModel, output);
                            HydroMatchingHelper.Apply(threelinkViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -238,7 +237,7 @@
                        var dlg = new AssetsFourlinkSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(fourlinkViewModel, output);
                            HydroMatchingHelper.Apply(fourlinkViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -256,7 +255,7 @@
                        var dlg = new AssetsMeterSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(meterViewModel, output);
                            HydroMatchingHelper.Apply(meterViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -274,7 +273,7 @@
                        var dlg = new AssetsFlowmeterSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(flowmeterViewModel, output);
                            HydroMatchingHelper.Apply(flowmeterViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -292,7 +291,7 @@
                        var dlg = new AssetsPressmeterSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(pressmeterViewModel, output);
                            HydroMatchingHelper.Apply(pressmeterViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -310,7 +309,7 @@
                        var dlg = new AssetsSprinklerSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(nozzleViewModel, output);
                            HydroMatchingHelper.Apply(nozzleViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -328,7 +327,7 @@
                        var dlg = new AssetsHydrantSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(hydrantViewModel, output);
                            HydroMatchingHelper.Apply(hydrantViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -346,7 +345,7 @@
                        var dlg = new AssetsCoolingSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(coolingViewModel, output);
                            HydroMatchingHelper.Apply(coolingViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -364,12 +363,13 @@
                        var dlg = new AssetsPipeSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(pipeViewModel, output);
                            HydroMatchingHelper.Apply(pipeViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.GradingPropertyValueChangedEvent?.Invoke(vm.Vmo);
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
@@ -381,7 +381,7 @@
                        var dlg = new SimulationPumpSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(pumpViewModel, output);
                            HydroMatchingHelper.Apply(pumpViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -399,7 +399,7 @@
                        var dlg = new AssetsValveSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(valveViewModel, output);
                            HydroMatchingHelper.Apply(valveViewModel, output, _changeHelper, _propStatusHelper);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -486,7 +486,7 @@
                            pumpViewModel.UpdateProperty();
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(pumpViewModel, this.CalcuResult?.Invoke());
                        dlg.SetBindingData(pumpViewModel, this.CalcuResult?.Invoke(), _changeHelper, _propStatusHelper);
                        dlg.ShowDialog();
                    }
                    break;
@@ -494,7 +494,7 @@
                case HydroCurve.Valve:
                    {
                        var valveViewModel = vm as HydroValveViewModel;
                        var curveInfo = valveViewModel.HydroInfo.Curves?.Find(x => x.Code == valveViewModel.ValveSetting);
                        var curveInfo = valveViewModel.HydroInfo.Curves?.Find(x => x.Code == valveViewModel.CurveOL);
                        if (curveInfo != null)
                        {
                            if (long.TryParse(curveInfo.DbId, out long longDbId))
@@ -583,12 +583,6 @@
        private void HydroPVisualPropertyCtrl1_GradingPropertyValueChangedEvent(HydroVisualViewModel vm)
        {
            this.GradingPropertyValueChangedEvent?.Invoke(vm?.Vmo);
        }
        //构件改变事件
        private void HydroVisualPropertyCtrl1_ParterChangedEvent(HydroParterInfo parter, eChangeType changeType)
        {
            this.ParterChangedEvent?.Invoke(parter, changeType);
        }