From bc0ed5b6cfda6c72c06f451b77da8518c41ab210 Mon Sep 17 00:00:00 2001
From: duheng <2286773002@qq.com>
Date: 星期四, 20 三月 2025 16:16:03 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0

---
 WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs |  100 ++++++++++++++++++++++++++-----------------------
 1 files changed, 53 insertions(+), 47 deletions(-)

diff --git a/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs b/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs
index d3959d0..f0adedd 100644
--- a/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs
+++ b/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs
@@ -1,4 +1,5 @@
-锘縰sing DevExpress.Utils;
+锘縰sing DevExpress.Mvvm.POCO;
+using DevExpress.Utils;
 using DevExpress.XtraCharts;
 using DevExpress.XtraGrid.Columns;
 using DevExpress.XtraGrid.Views.Grid;
@@ -39,7 +40,7 @@
 
         private AxisX _axis_x_flow;
         private AxisY _axis_y_head;
-        //private SecondaryAxisY _axis_y_eff;
+        private SecondaryAxisY _axis_y_eff;
 
 
         #endregion
@@ -59,18 +60,18 @@
             _diagram.EnableAxisYZooming = true;
             _default_pane = _diagram.DefaultPane;
 
-            _diagram.AxisX.TimeSpanScaleOptions.MeasureUnit = TimeSpanMeasureUnit.Minute;
-            _diagram.AxisX.TimeSpanScaleOptions.ScaleMode = ScaleMode.Continuous;
+            _diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Second;
+            _diagram.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Continuous;
 
             _axis_x_flow = _diagram.AxisX;
             _axis_y_head = _diagram.AxisY;
-            //_axis_y_eff = _diagram.SecondaryAxesY.GetAxisByName("AxisYEff");
-            //_axis_y_eff.Alignment = AxisAlignment.Far;
+            _axis_y_eff = _diagram.SecondaryAxesY.GetAxisByName("AxisYEff");
+            _axis_y_eff.Alignment = AxisAlignment.Far;
 
 
             _axis_x_flow.GridLines.Visible = false;
             _axis_y_head.GridLines.Visible = false;
-            //_axis_y_eff.GridLines.Visible = false;
+            _axis_y_eff.GridLines.Visible = false;
 
             this.chartControl1.CrosshairEnabled = DefaultBoolean.True;
 
@@ -113,20 +114,19 @@
 
             foreach (var vm in vm_list)
             {
-                //if (!vm.Name.Contains("鍘嬪姏"))
-                //{
-                axis_x = _axis_x_flow;
-                axis_y = _axis_y_head;
-                pane = _default_pane;
-                //}
-                //else
-                //{
-                //    axis_x = _axis_x_flow;
-                //    axis_y = _axis_y_eff;
-                //    pane = _default_pane;
+                if (!vm.Name.Contains("鍘嬪姏"))
+                {
+                    axis_x = _axis_x_flow;
+                    axis_y = _axis_y_head;
+                    pane = _default_pane;
+                }
+                else
+                {
+                    axis_x = _axis_x_flow;
+                    axis_y = _axis_y_eff;
+                    pane = _default_pane;
 
-                //}
-
+                }
                 var col = new GridColumn();
                 col.FieldName = vm.Name;
                 col.Caption = vm.Name;
@@ -136,8 +136,16 @@
                 AddLineSeries(vm.Name, axis_x, axis_y, pane, vm.Datas);
             }
 
-            var min_x = vm_list.SelectMany(x => x.Datas).Min(x => TimeSpan.Parse(x.Time));
-            var max_x = vm_list.SelectMany(x => x.Datas).Max(x => TimeSpan.Parse(x.Time));
+            var tempdatas = vm_list[0];
+            foreach (var item in tempdatas.Datas)
+            {
+                item.Y = Press;
+            }
+
+            AddLineSeries("鍘熸车鍚庡帇鍔�", axis_x, _axis_y_eff, _default_pane, tempdatas.Datas);
+
+            var min_x = vm_list.SelectMany(x => x.Datas).Min(x => DateTime.Parse(x.Time));
+            var max_x = vm_list.SelectMany(x => x.Datas).Max(x => DateTime.Parse(x.Time));
 
 
             _axis_x_flow.NumericScaleOptions.AutoGrid = false;
@@ -146,8 +154,9 @@
             _axis_x_flow.WholeRange.SetMinMaxValues(min_x, max_x);
             _axis_x_flow.VisualRange.SetMinMaxValues(min_x, max_x);
 
+            var diff_days = max_x - min_x;
+            textEdit1.Text =  diff_days.TotalDays.ToString();
             gridControl1.DataSource = dataTable;
-
             this.chartControl1.EndInit();
 
         }
@@ -183,16 +192,17 @@
             view.Pane = pane;
 
 
-            var series_pt_list = pt_list.Select(x => new SeriesPoint(TimeSpan.Parse(x.Time), x.Y)).ToArray();
+            var series_pt_list = pt_list.Select(x => new SeriesPoint(DateTime.Parse(x.Time), x.Y)).ToArray();
             var series = new DevExpress.XtraCharts.Series();
             series.Tag = id;
             //series.ShowInLegend = false;
             series.Name = id;
-            series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.TimeSpan;
-            series.TimeSpanSummaryOptions.MeasureUnit = TimeSpanMeasureUnit.Minute;
+            series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.DateTime;
+            series.DateTimeSummaryOptions.MeasureUnit = DateTimeMeasureUnit.Second;
+
             series.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False;
             series.CrosshairEnabled = DefaultBoolean.True;
-            series.CrosshairLabelPattern = id + ":{V:N2}";
+            series.CrosshairLabelPattern = id + ":{V:N2}  {A:yyyy-MM-dd HH:mm:ss}";
             series.ToolTipEnabled = DefaultBoolean.False;
             series.SeriesPointsSorting = SortingMode.None;
             series.Visible = true;
@@ -205,7 +215,6 @@
         {
             datalist = new List<FlowPressChartViewModel>();
             dataTable = new DataTable();
-
             if (!File.Exists(fileName))
                 return "鏂囦欢涓嶅瓨鍦�";
             int line = 0;
@@ -274,57 +283,54 @@
             {
 
                 row_temp = sheet1.GetRow(line);
-                if (row_temp == null || row_temp.Cells.Count < 3)
+                if (row_temp == null)
                     break;
                 var rowData = new object[totalcell];
                 for (int i = 0; i < totalcell; i++)
                 {
                     try
                     {
-                        var cell_temp = row_temp.GetCell(i);
-
                         if (i > 0)
                         {
-                            if (cell_temp != null && cell_temp.CellType != NPOI.SS.UserModel.CellType.Blank)
+                            var cell_temp = row_temp.GetCell(i);
+                            double yvalue = cell_temp.NumericCellValue;
+                            var timevalue = row_temp.GetCell(0).StringCellValue;
+                            datalist[i - 1].Datas.Add(new TimeChartViewModel()
                             {
-                                double yvalue = cell_temp.NumericCellValue;
-                                var timevalue = row_temp.GetCell(0).NumericCellValue;
-                                //double.TryParse(cell_temp.StringCellValue,out yvalue);
-                                datalist[i - 1].Datas.Add(new TimeChartViewModel()
-                                {
-                                    Time = DateTime.FromOADate(timevalue).ToString("HH:mm:ss"),
-                                    Y = yvalue,
-                                });
-                                rowData[i] = yvalue;
-                            }
+                                Time = timevalue, //DateTime.FromOADate(timevalue).ToString("YYYY-MM-dd HH:mm:ss"),
+                                Y = yvalue,
+                            });
+                            rowData[i] = yvalue;
                         }
                         else
                         {
-                            var timevalue = row_temp.GetCell(0).NumericCellValue;
-                            rowData[i] = DateTime.FromOADate(timevalue).ToString("HH:mm:ss");
+                            var timevalue = row_temp.GetCell(0).StringCellValue;
+                            rowData[i] = timevalue;//DateTime.FromOADate(timevalue).ToString("YYYY-MM-dd HH:mm:ss");
                         }
                     }
                     catch (Exception ex)
                     {
-                        var a = ex.Message;
+                        //var a = ex.Message;
                     }
                 }
 
                 dataTable.Rows.Add(rowData);
             }
 
+            //Yw.Pump.CalculationHelper.CalcuP();
+
             return "";
 
 
 
         }
-
+        double Press = 0.6;
         private void barButtonItem2_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
             var dlg = new SetPressForm();
             if (dlg.ShowDialog() == DialogResult.OK)
             {
-                var press= dlg.Press;
+                Press = dlg.Press;
             }
         }
     }

--
Gitblit v1.9.3