From ad8f813f5eddd66740b4e09801e4ea02ddf70a4a Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期三, 19 二月 2025 15:58:22 +0800
Subject: [PATCH] 继续优化报表

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs |   76 +++++++++++++++++++-------------------
 1 files changed, 38 insertions(+), 38 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs
index c61b8a6..6e21496 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/03-valve/AssetsValveSingleMatchingCtrl.cs
@@ -1,15 +1,4 @@
-锘縰sing DevExpress.XtraBars.Ribbon.Drawing;
-using DevExpress.XtraEditors;
-using DevExpress.XtraMap;
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
+锘縰sing System.Data;
 
 namespace HStation.WinFrmUI
 {
@@ -20,10 +9,10 @@
             InitializeComponent();
             this.layoutControl1.SetupLayoutControl();
             this.gridView1.SetLimitView();
-            this.gridView1.RegistCustomDrawCell(Color.BurlyWood, Color.White);
+            this.gridView1.RegistCustomDrawCell();
             this.generalSearchCtrl1.SearchEvent += Search;
             this.generalSearchCtrl1.ClearEvent += Clear;
-            this.phartDiagramRelationGridViewCtrl1.SelectDataEvent += SelectData;
+            this.valvePhartDiagramRelationGridViewCtrl1.SelectDataEvent += SelectData;
         }
 
         public List<AssetsValveSingleMatchingViewModel> _allList = null;//鎵�鏈夊垪琛�
@@ -33,7 +22,7 @@
         private AssetsValveSingleMatchingViewModel _row;
         private ValveMatchingViewModel _viewModel;
 
-        private long _curveDbId;
+        private long? _curveDbId;
 
         public class ValveMatchingViewModel
         {
@@ -44,7 +33,7 @@
             public AssetsValveMainVmo Vmo { get; set; }
             public string MatchingCurveDbId { get; set; }
 
-            public List<HydroCurvePointViewModel> MatchingCurveQL { get; set; }
+            public List<HydroFactorCurveViewModel> MatchingCurvesQL { get; set; }
             public List<HydroCurvePointViewModel> MatchingCurveOL { get; set; }
         }
 
@@ -54,18 +43,21 @@
         public async void SetBindingData(string dbId, string curveDbId)
         {
             var allList = await BLLFactory<HStation.BLL.AssetsValveMain>.Instance.GetAll();
-            _allList = new List<AssetsValveSingleMatchingViewModel>();
-            allList.ForEach(x => _allList.Add(new AssetsValveSingleMatchingViewModel(x)));
-            if (long.TryParse(dbId, out long id))
+            if (allList != null)
             {
-                var item = allList?.Find(x => x.ID == id);
-                _selected = item;
+                _allList = new List<AssetsValveSingleMatchingViewModel>();
+                allList.ForEach(x => _allList.Add(new AssetsValveSingleMatchingViewModel(x)));
+                if (long.TryParse(dbId, out long id))
+                {
+                    var item = allList?.Find(x => x.ID == id);
+                    _selected = item;
+                }
+                if (long.TryParse(curveDbId, out long curveId))
+                {
+                    _curveDbId = curveId;
+                }
+                Search();
             }
-            if (long.TryParse(curveDbId, out long curveId))
-            {
-                _curveDbId = curveId;
-            }
-            Search();
             await Task.Delay(300);
             if (_selected != null)
             {
@@ -145,7 +137,7 @@
             }
             _row = row;
             _viewModel.Vmo = row.Vmo;
-            this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ValveMain, row.Vmo.ID, _curveDbId);
+            this.valvePhartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.ValveMain, row.Vmo.ID, _curveDbId);
         }
 
         //鏇茬嚎鏁版嵁鍏宠仈鍙樺寲
@@ -154,21 +146,29 @@
             if (def != null)
             {
                 _viewModel.MatchingCurveDbId = def.ID.ToString();
-                var curve = def.Diagram.GraphList[0].GetFeatPointList();
-                if (_row.ValveType == HStation.Assets.eValveType.GPV)
+                _viewModel.MatchingCurveOL = new List<HydroCurvePointViewModel>();
+                _viewModel.MatchingCurvesQL = new List<HydroFactorCurveViewModel>();
+                for (int i = 0; i < def.Diagram.GraphList.Count; i++)
                 {
-                    _viewModel.MatchingCurveQL = new List<HydroCurvePointViewModel>();
-                    foreach (var item in curve)
+                    var curve = def.Diagram.GraphList[i].GetFeatPointList();
+                    if (def.Diagram.GraphList[i].GraphType == 11)
                     {
-                        _viewModel.MatchingCurveQL.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                        var opening = Yw.WinFrmUI.PhartGraphHelper.GetGraphParas<Yw.WinFrmUI.Phart.QLGraphParasViewModel>((Yw.Ahart.eCurveType)def.Diagram.GraphList[i].GraphType, def.Diagram.GraphList[i].GraphParas);
+                        var model = new HydroFactorCurveViewModel();
+                        model.CurveFactor = opening.Opening ?? 0;
+                        model.CurveData = new List<HydroCurvePointViewModel>();
+                        foreach (var item in curve)
+                        {
+                            model.CurveData.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                        }
+                        _viewModel.MatchingCurvesQL.Add(model);
                     }
-                }
-                else if (_row.ValveType == HStation.Assets.eValveType.TCV)
-                {
-                    _viewModel.MatchingCurveOL = new List<HydroCurvePointViewModel>();
-                    foreach (var item in curve)
+                    else if (def.Diagram.GraphList[i].GraphType == 12)
                     {
-                        _viewModel.MatchingCurveOL.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                        foreach (var item in curve)
+                        {
+                            _viewModel.MatchingCurveOL.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                        }
                     }
                 }
             }

--
Gitblit v1.9.3