duheng
2024-12-24 68489b619d6859e2a98b8f9acee4416508e2d830
优化单独匹配多条曲线聚焦
已修改9个文件
92 ■■■■■ 文件已修改
WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingDlg.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/09-Tank/AssetsTankSingleMatchingCtrl.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/09-Tank/AssetsTankSingleMatchingDlg.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingDlg.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/18-exchanger/AssetsExchangerSingleMatchingCtrl.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/18-exchanger/AssetsExchangerSingleMatchingDlg.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/relation/03-grid/PhartDiagramRelationGridViewCtrl.cs
@@ -27,28 +27,38 @@
        private string _objectType;
        public Action<List<PhartDiagramRelationExtensionsVmo>> SelectDataEvent;
        public Action<PhartDiagramRelationExtensionsVmo> SelectDataEvent;
        /// <summary>
        /// 绑定数据
        /// </summary>
        public async void SetBindingData(string objectType, long objectId)
        public async void SetBindingData(string objectType, long objectId, long? curveId)
        {
            _objectType = objectType;
            var allList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.GetByObjectTypeAndObjectID(objectType, objectId);
            SetBindingData(allList);
            SetBindingData(allList, curveId);
            gridView1_FocusedRowChanged(null, null);
        }
        /// <summary>
        /// 绑定数据
        /// </summary>
        public void SetBindingData(List<PhartDiagramRelationVmo> allList)
        public void SetBindingData(List<PhartDiagramRelationVmo> allList, long? curveId)
        {
            _allBindingList = new List<PhartDiagramRelationGridItemViewModel>();
            allList?.OrderBy(x => x.SortCode).ToList().ForEach(x => _allBindingList.Add(new PhartDiagramRelationGridItemViewModel(x)));
            this.phartDiagramRelationGridItemViewModelBindingSource.DataSource = _allBindingList;
            this.phartDiagramRelationGridItemViewModelBindingSource.ResetBindings(false);
            if (curveId != null)
            {
                for (int i = 0; i < _allBindingList.Count; i++)
                {
                    if (_allBindingList[i].ID == curveId)
                    {
                        gridView1.FocusedRowHandle = i;
                    }
                }
            }
        }
        //行点击事件
@@ -74,7 +84,11 @@
            if (vm == null)
                return;
            var list = await new BLL.PhartDiagramRelation().GetExByObjectTypeAndObjectID(_objectType, vm.Vmo.ObjectID);
            SelectDataEvent.Invoke(list);
            var targetItem = list.FirstOrDefault(x => x.ID == vm.ID);
            if (targetItem != null)
            {
                SelectDataEvent.Invoke(targetItem);
            }
        }
    }
}
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs
@@ -33,6 +33,8 @@
        private AssetsValveSingleMatchingViewModel _row;
        private ValveMatchingViewModel _viewModel;
        private long _curveDbId;
        public class ValveMatchingViewModel
        {
            public ValveMatchingViewModel()
@@ -49,7 +51,7 @@
        /// <summary>
        /// 绑定数据
        /// </summary>
        public async void SetBindingData(string dbId)
        public async void SetBindingData(string dbId, string curveDbId)
        {
            var allList = await BLLFactory<HStation.BLL.AssetsValveMain>.Instance.GetAll();
            _allList = new List<AssetsValveSingleMatchingViewModel>();
@@ -58,6 +60,10 @@
            {
                var item = allList?.Find(x => x.ID == id);
                _selected = item;
            }
            if (long.TryParse(curveDbId, out long curveId))
            {
                _curveDbId = curveId;
            }
            Search();
            await Task.Delay(300);
@@ -139,15 +145,14 @@
            }
            _row = row;
            _viewModel.Vmo = row.Vmo;
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ValveMain, row.Vmo.ID);
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ValveMain, row.Vmo.ID, _curveDbId);
        }
        //曲线数据关联变化
        private void SelectData(List<PhartDiagramRelationExtensionsVmo> list)
        private void SelectData(PhartDiagramRelationExtensionsVmo def)
        {
            if (list != null && list.Count > 0)
            if (def != null)
            {
                var def = list.OrderByDescending(x => x.Importance).First();
                _viewModel.MatchingCurveDbId = def.ID.ToString();
                var curve = def.Diagram.GraphList[0].GetFeatPointList();
                if (_row.ValveType == HStation.Assets.eValveType.GPV)
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingDlg.cs
@@ -35,7 +35,7 @@
                return;
            }
            _input = input;
            this.assetsValveSingleMatchingCtrl2.SetBindingData(input.DbId);
            this.assetsValveSingleMatchingCtrl2.SetBindingData(input.DbId, input.CurveDbId);
        }
        private void GeneralOkAndCancelCtrl1_OkEvent()
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/09-Tank/AssetsTankSingleMatchingCtrl.cs
@@ -33,6 +33,8 @@
        private AssetsTankSingleMatchingViewModel _row;
        private TankMatchingViewModel _viewModel;
        private long _curveDbid;
        public class TankMatchingViewModel
        {
            public TankMatchingViewModel()
@@ -48,7 +50,7 @@
        /// <summary>
        /// 绑定数据
        /// </summary>
        public async void SetBindingData(string dbId)
        public async void SetBindingData(string dbId, string curveDbId)
        {
            var allList = await BLLFactory<HStation.BLL.AssetsTankMain>.Instance.GetAll();
            _allList = new List<AssetsTankSingleMatchingViewModel>();
@@ -57,6 +59,10 @@
            {
                var item = allList?.Find(x => x.ID == id);
                _selected = item;
            }
            if (long.TryParse(curveDbId, out long curveId))
            {
                _curveDbid = curveId;
            }
            Search();
            await Task.Delay(300);
@@ -122,15 +128,14 @@
            }
            _row = row;
            _viewModel.Vmo = row.Vmo;
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.TankMain, row.Vmo.ID);
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.TankMain, row.Vmo.ID, _curveDbid);
        }
        //曲线数据关联变化
        private void SelectData(List<PhartDiagramRelationExtensionsVmo> list)
        private void SelectData(PhartDiagramRelationExtensionsVmo def)
        {
            if (list != null && list.Count > 0)
            if (def != null)
            {
                var def = list.OrderByDescending(x => x.Importance).First();
                _viewModel.MatchingCurveDbId = def.ID.ToString();
                var curve = def.Diagram.GraphList[0].GetFeatPointList();
                _viewModel.MatchingCurve = new List<HydroCurvePointViewModel>();
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/09-Tank/AssetsTankSingleMatchingDlg.cs
@@ -23,7 +23,7 @@
                return;
            }
            _input = input;
            this.assetsTankSingleMatchingCtrl1.SetBindingData(input.DbId);
            this.assetsTankSingleMatchingCtrl1.SetBindingData(input.DbId, input.CurveDbId);
        }
        private void GeneralOkAndCancelCtrl1_OkEvent()
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs
@@ -33,6 +33,8 @@
        private AssetsCompressorSingleMatchingViewModel _row;
        private CompressorMatchingViewModel _viewModel;
        private long _curveDbId;
        public class CompressorMatchingViewModel
        {
            public CompressorMatchingViewModel()
@@ -47,7 +49,7 @@
        /// <summary>
        /// 绑定数据
        /// </summary>
        public async void SetBindingData(string dbId)
        public async void SetBindingData(string dbId, string curveDbId)
        {
            var allList = await BLLFactory<HStation.BLL.AssetsCompressorMain>.Instance.GetAll();
            _allList = new List<AssetsCompressorSingleMatchingViewModel>();
@@ -56,6 +58,10 @@
            {
                var item = allList?.Find(x => x.ID == id);
                _selected = item;
            }
            if (long.TryParse(curveDbId, out long curveid))
            {
                _curveDbId = curveid;
            }
            Search();
            await Task.Delay(300);
@@ -137,15 +143,14 @@
            }
            _row = row;
            _viewModel.Vmo = row.Vmo;
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.CompressorMain, row.Vmo.ID);
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.CompressorMain, row.Vmo.ID, _curveDbId);
        }
        //曲线数据关联变化
        private void SelectData(List<PhartDiagramRelationExtensionsVmo> list)
        private void SelectData(PhartDiagramRelationExtensionsVmo def)
        {
            if (list != null && list.Count > 0)
            if (def != null)
            {
                var def = list.OrderByDescending(x => x.Importance).First();
                _viewModel.MatchingCurveDbId = def.ID.ToString();
                var curve = def.Diagram.GraphList[0].GetFeatPointList();
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingDlg.cs
@@ -35,7 +35,7 @@
                return;
            }
            _input = input;
            this.assetsCompressorSingleMatchingCtrl1.SetBindingData(input.DbId);
            this.assetsCompressorSingleMatchingCtrl1.SetBindingData(input.DbId, input.CurveDbId);
        }
        private void GeneralOkAndCancelCtrl1_OkEvent()
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/18-exchanger/AssetsExchangerSingleMatchingCtrl.cs
@@ -33,6 +33,8 @@
        private AssetsExchangerSingleMatchingViewModel _row;
        private ExchangerMatchingViewModel _viewModel;
        private long _curveDbId;
        public class ExchangerMatchingViewModel
        {
            public ExchangerMatchingViewModel()
@@ -47,7 +49,7 @@
        /// <summary>
        /// 绑定数据
        /// </summary>
        public async void SetBindingData(string dbId)
        public async void SetBindingData(string dbId, string curveDbId)
        {
            var allList = await BLLFactory<HStation.BLL.AssetsExchangerMain>.Instance.GetAll();
            _allList = new List<AssetsExchangerSingleMatchingViewModel>();
@@ -56,6 +58,10 @@
            {
                var item = allList?.Find(x => x.ID == id);
                _selected = item;
            }
            if (long.TryParse(curveDbId, out long curveId))
            {
                _curveDbId = curveId;
            }
            Search();
            await Task.Delay(300);
@@ -137,15 +143,14 @@
            }
            _row = row;
            _viewModel.Vmo = row.Vmo;
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ExchangerMain, row.Vmo.ID);
            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ExchangerMain, row.Vmo.ID, _curveDbId);
        }
        //曲线数据关联变化
        private void SelectData(List<PhartDiagramRelationExtensionsVmo> list)
        private void SelectData(PhartDiagramRelationExtensionsVmo def)
        {
            if (list != null && list.Count > 0)
            if (def != null)
            {
                var def = list.OrderByDescending(x => x.Importance).First();
                _viewModel.MatchingCurveDbId = def.ID.ToString();
                var curve = def.Diagram.GraphList[0].GetFeatPointList();
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/18-exchanger/AssetsExchangerSingleMatchingDlg.cs
@@ -35,7 +35,7 @@
                return;
            }
            _input = input;
            this.assetsExchangerSingleMatchingCtrl1.SetBindingData(input.DbId);
            this.assetsExchangerSingleMatchingCtrl1.SetBindingData(input.DbId, input.CurveDbId);
        }
        private void GeneralOkAndCancelCtrl1_OkEvent()