From ea40488714dcdc04b91d48937d4db2c498ae76de Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期一, 23 十二月 2024 10:34:13 +0800
Subject: [PATCH] 单点生成界面修改

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/02-pump/01-pumpsinglematching/SimulationPumpSingleMatchingDlg.cs |  136 ++++++++++++++++++++-------------------------
 1 files changed, 61 insertions(+), 75 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/02-pump/01-pumpsinglematching/SimulationPumpSingleMatchingDlg.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/02-pump/01-pumpsinglematching/SimulationPumpSingleMatchingDlg.cs
index 94fb021..5c1bb1c 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/02-pump/01-pumpsinglematching/SimulationPumpSingleMatchingDlg.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/02-pump/01-pumpsinglematching/SimulationPumpSingleMatchingDlg.cs
@@ -21,11 +21,14 @@
             public int Importance { get; set; }
             public int SortCode { get; set; }
             //    public PhartDiagramExGraphListVmo Diagram { get; set; }
+
+            public long DiagramID { get; set; }
         }
 
         private HydroPumpMatchingViewModel _pump_matching_vm = null;
         private List<PumpSingleMatchingViewModel> _pump_mian_vm_list = null;
         private List<PhartViewModel> _phart_vm_list = null;
+        private Vmo.AssetsPumpMainVmo _pumpVmo;
 
         private readonly Lazy<BLL.AssetsPumpMain> _pump_main_bll = new();
         private readonly Lazy<BLL.PhartDiagramRelation> _phart_ex_bll = new();
@@ -64,42 +67,27 @@
 
         private void barBtnOK_ItemClick(object sender, ItemClickEventArgs e)
         {
-            /*        var pump_mian = this.gridViewPumpMain.GetCurrentViewModel(_pump_mian_vm_list);
-                    if (pump_mian == null)
-                    {
-                        TipFormHelper.ShowError("娉靛瀷鍙蜂负绌�");
-                        return;
-                    }
-                    var phart = this.gridViewCurve.GetCurrentViewModel(_phart_vm_list);
-                    if (phart == null)
-                    {
-                        TipFormHelper.ShowError("娉靛瀷鍙锋洸绾夸负绌�");
-                        return;
-                    }
+            var pump_mian = this.gridViewPumpMain.GetCurrentViewModel(_pump_mian_vm_list);
+            if (pump_mian == null)
+            {
+                TipFormHelper.ShowError("娉靛瀷鍙蜂负绌�");
+                return;
+            }
+            var phart = this.gridViewCurve.GetCurrentViewModel(_phart_vm_list);
+            if (phart == null)
+            {
+                TipFormHelper.ShowError("娉靛瀷鍙锋洸绾夸负绌�");
+                return;
+            }
 
-                    var diagram = phart.Diagram;
-                    if (!OutPtList
-                        (diagram,
-                        out List<Yw.Geometry.Point2d> qh_pt_list,
-                        out List<Yw.Geometry.Point2d> qe_pt_list,
-                        out List<Yw.Geometry.Point2d> qp_pt_list
-                        ))
-                    {
-                        return;
-                    }
-                    _pump_matching_vm.MatchingDbId = pump_mian.ID.ToString();
-                    _pump_matching_vm.MatchingModelType = pump_mian.Name.ToString();
-                    _pump_matching_vm.MatchingRatedH = pump_mian.RatedHead;
-                    _pump_matching_vm.MatchingRatedN = pump_mian.RatedSpeed;
-                    _pump_matching_vm.MatchingRatedP = pump_mian.RatedPower;
-                    _pump_matching_vm.MatchingRatedQ = pump_mian.RatedFlow;
+            _pump_matching_vm.MatchingDbId = pump_mian.ID.ToString();
+            _pump_matching_vm.MatchingModelType = pump_mian.Name.ToString();
+            _pump_matching_vm.MatchingRatedH = pump_mian.RatedHead;
+            _pump_matching_vm.MatchingRatedN = pump_mian.RatedSpeed;
+            _pump_matching_vm.MatchingRatedP = pump_mian.RatedPower;
+            _pump_matching_vm.MatchingRatedQ = pump_mian.RatedFlow;
 
-                    _pump_matching_vm.MatchingCurveDbId = phart.ID.ToString();
-                    _pump_matching_vm.MatchingCurveQH = qh_pt_list.Select(x => new HydroCurvePointViewModel(x.X, x.Y)).ToList();
-                    _pump_matching_vm.MatchingCurveQE = qe_pt_list?.Select(x => new HydroCurvePointViewModel(x.X, x.Y)).ToList();
-                    _pump_matching_vm.MatchingCurveQP = qp_pt_list?.Select(x => new HydroCurvePointViewModel(x.X, x.Y)).ToList();
-
-                    this.ReloadDataEvent?.Invoke(_pump_matching_vm);*/
+            this.ReloadDataEvent?.Invoke(_pump_matching_vm);
             this.Close();
         }
 
@@ -109,7 +97,9 @@
             var pump_main = this.gridViewPumpMain.GetCurrentViewModel(_pump_mian_vm_list);
             if (pump_main != null)
             {
-                var phart_list = await _phart_ex_bll.Value.GetExByObjectTypeAndObjectID(HStation.Assets.DataType.PumpMain, pump_main.ID);
+                var vmo = await new BLL.AssetsPumpMain().GetByID(pump_main.ID);
+                _pumpVmo = vmo;
+                var phart_list = await _phart_ex_bll.Value.GetByObjectTypeAndObjectID(HStation.Assets.DataType.PumpMain, pump_main.ID);
                 if (phart_list != null && phart_list.Any())
                 {
                     foreach (var item in phart_list)
@@ -120,25 +110,55 @@
                         vm.Importance = item.Importance;
                         vm.SortCode = item.SortCode;
                         //   vm.Diagram = item.Diagram;
+                        vm.DiagramID = item.DiagramID;
                         _phart_vm_list.Add(vm);
                     }
                 }
             }
-
+            this.phartViewModelBindingSource.DataSource = _phart_vm_list;
+            //this.gridControlCurve.DataSource = _phart_vm_list;
+            //this.gridViewCurve.RefreshData();
+            this.phartViewModelBindingSource.ResetBindings(false);
             this.gridViewCurve.FocusInvalidRow();
-            this.gridControlCurve.DataSource = _phart_vm_list;
-            this.gridControlCurve.RefreshDataSource();
         }
 
-        private void gridViewCurve_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
+        private async void gridViewCurve_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
         {
             var phart = this.gridViewCurve.GetCurrentViewModel(_phart_vm_list);
             if (phart == null)
             {
-                //this.xtrPerform2dChart1.Clear();
+                //TipFormHelper.ShowWarn("鏃犳洸绾�");
+                //this.pumpChartViewCtrl1.SetBindingData(null, 0);
+                this.pumpChartViewCtrl1.ClearBindingData();
                 return;
             }
-
+            var list = Task.Run(async () => await new BLL.PhartDiagramRelation().GetExByObjectTypeAndObjectID(HStation.Assets.DataType.PumpMain, _pumpVmo.ID)).Result;
+            if (list != null && list.Count > 0)
+            {
+                var def = list.OrderByDescending(x => x.Importance).First();
+                _pump_matching_vm.MatchingCurveDbId = def.ID.ToString();
+                var diagram = def.Diagram.GetDefaultVmo();
+                var qh = diagram.QH.GetFeatPointList();
+                var qp = diagram.QP.GetFeatPointList();
+                var qe = diagram.QE.GetFeatPointList();
+                _pump_matching_vm.MatchingCurveQH = new List<HydroCurvePointViewModel>();
+                _pump_matching_vm.MatchingCurveQP = new List<HydroCurvePointViewModel>();
+                _pump_matching_vm.MatchingCurveQE = new List<HydroCurvePointViewModel>();
+                foreach (var item in qh)
+                {
+                    _pump_matching_vm.MatchingCurveQH.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                }
+                foreach (var item in qp)
+                {
+                    _pump_matching_vm.MatchingCurveQP.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                }
+                foreach (var item in qe)
+                {
+                    _pump_matching_vm.MatchingCurveQE.Add(new HydroCurvePointViewModel(item.X, item.Y));
+                }
+            }
+            var vmo = await BLLFactory<Yw.BLL.PhartDiagramExtensions>.Instance.GetByID(phart.DiagramID);
+            this.pumpChartViewCtrl1.SetBindingData(vmo, _pumpVmo.RatedSpeed);
             /*     var diagram = phart.Diagram;
                  if (!OutPtList
                      (diagram,
@@ -158,39 +178,5 @@
                  var is_calc_disp_paras = string.IsNullOrWhiteSpace(disp_paras);
                  this.xtrPerform2dChart1.SetBindingData(cubic_spline_qh, cubic_spline_qe, cubic_spline_qp, disp_paras, is_calc_disp_paras);*/
         }
-
-        /*        private bool OutPtList(
-             //       PhartDiagramExGraphListVmo diagram,
-                    out List<Yw.Geometry.Point2d> qh_pt_list,
-                    out List<Yw.Geometry.Point2d> qe_pt_list,
-                    out List<Yw.Geometry.Point2d> qp_pt_list
-                    )
-                {
-                    qh_pt_list = null;
-                    qe_pt_list = null;
-                    qp_pt_list = null;
-
-                    var graph_qh = diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.QH);
-                    var graph_qe = diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.QE);
-                    var graph_qp = diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.QP);
-                    if (graph_qh == null)
-                    {
-                        this.xtrPerform2dChart1.InitialChartData();
-                        return false;
-                    }
-
-                    qh_pt_list = PhartPerformCurveHelper.GetFeatPointList(graph_qh.GraphType, graph_qh.GeometryInfo, 100, null);
-                    if (graph_qe != null)
-                    {
-                        qe_pt_list = PhartPerformCurveHelper.GetFeatPointList(graph_qe.GraphType, graph_qe.GeometryInfo, 100, null);
-                    }
-                    if (graph_qp != null)
-                    {
-                        qp_pt_list = PhartPerformCurveHelper.GetFeatPointList(graph_qp.GraphType, graph_qp.GeometryInfo, 100, null);
-                    }
-
-                    return true;
-                }
-        */
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3