From 56c701ab19eb16ebf2f75bdd42b4ea9da1c2a733 Mon Sep 17 00:00:00 2001
From: liriming <1343021927@qq.com>
Date: 星期三, 25 六月 2025 14:19:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/service/impl/DataServiceImpl.java |   61 +++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 18 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/service/impl/DataServiceImpl.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/service/impl/DataServiceImpl.java
index 3122af2..6601abd 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/service/impl/DataServiceImpl.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/service/impl/DataServiceImpl.java
@@ -376,19 +376,41 @@
         if (CollectionUtils.isEmpty(chartData.getDataView().getCurData())) {
             return result;
         }
-
-        // 两部分组成,左侧T+L,右侧当前
+        String lineType = chartData.getDataView().getLineType();
         List<Object[]> preData = new ArrayList<>();
-        for (int i = 0; i < chartData.getDataView().getPreDataL().size(); i++) {
-            Object[] dataItem = chartData.getDataView().getPreDataL().get(i);
-            Date t = DateUtils.parse(dataItem[0].toString(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
-            if (t.getTime() <= predictTime.getTime()) {
-                preData.add(dataItem);
+        if ("1".equals(lineType)) {
+            // 两部分组成,左侧T+L,右侧当前
+            if(!CollectionUtils.isEmpty(chartData.getDataView().getPreDataL())) {
+                for (int i = 0; i < chartData.getDataView().getPreDataL().size(); i++) {
+                    Object[] dataItem = chartData.getDataView().getPreDataL().get(i);
+                    Date t = DateUtils.parse(dataItem[0].toString(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
+                    if (t.getTime() <= predictTime.getTime()) {
+                        preData.add(dataItem);
+                    }
+                }
             }
-        }
-        for (int i = 0; i < chartData.getDataView().getCurData().size(); i++) {
-            Object[] dataItem = chartData.getDataView().getCurData().get(i);
-            preData.add(dataItem);
+            if(!CollectionUtils.isEmpty(chartData.getDataView().getCurData())) {
+                for (int i = 0; i < chartData.getDataView().getCurData().size(); i++) {
+                    Object[] dataItem = chartData.getDataView().getCurData().get(i);
+                    preData.add(dataItem);
+                }
+            }
+        } else if ("2".equals(lineType)) {
+            // 展示当前值
+            if(!CollectionUtils.isEmpty(chartData.getDataView().getCurData())) {
+                for (int i = 0; i < chartData.getDataView().getCurData().size(); i++) {
+                    Object[] dataItem = chartData.getDataView().getCurData().get(i);
+                    preData.add(dataItem);
+                }
+            }
+        } else {
+            // 展示T+N
+            if(!CollectionUtils.isEmpty(chartData.getDataView().getPreDataN())) {
+                for (int i = 0; i < chartData.getDataView().getPreDataN().size(); i++) {
+                    Object[] dataItem = chartData.getDataView().getPreDataN().get(i);
+                    preData.add(dataItem);
+                }
+            }
         }
 
         double lastValue = 0;
@@ -407,11 +429,11 @@
         return result;
     }
 
-    private String getEndTime(List<Object[]> preDataN, int startIndex) {
+    private String getEndTime(List<Object[]> preData, int startIndex) {
         String endTime = "";
         double lastValue = 1;
-        for (int i = startIndex; i < preDataN.size(); i++) {
-            Object[] dataItem = preDataN.get(i);
+        for (int i = startIndex; i < preData.size(); i++) {
+            Object[] dataItem = preData.get(i);
             double cv = new BigDecimal(dataItem[1].toString()).doubleValue();
             if (cv == 0 && cv != lastValue) {
                 return (String) dataItem[0];
@@ -507,18 +529,21 @@
     @Override
     public List<PreDataViewSimpleDTO> getPreDataByOutIds(PreDataBarLineReqVO reqVO) {
         PreDataBarLineRespVO preDataBarLineRespVO = mcsApi.getPreDataCharts(reqVO);
-        String predictTime = DateUtils.format(preDataBarLineRespVO.getPredictTime(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
+//        String predictTime = DateUtils.format(preDataBarLineRespVO.getPredictTime(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
 
         List<PreDataViewSimpleDTO> preDataViewSimpleDTOList = new ArrayList<>();
         preDataBarLineRespVO.getDataViewList().forEach(item -> {
             PreDataViewSimpleDTO preDataViewSimpleDTO = new PreDataViewSimpleDTO();
             preDataViewSimpleDTO.setItemName(item.getResultName());
             preDataViewSimpleDTO.setPredictTime(preDataBarLineRespVO.getPredictTime());
+
             preDataViewSimpleDTO.setCurData(item.getCurData());
             preDataViewSimpleDTO.setRealData(item.getRealData());
-            preDataViewSimpleDTO.setPreDataN(item.getPreDataN().stream()
-                    .filter(data -> !(DateUtils.parse(data[0].toString(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)).after(preDataBarLineRespVO.getPredictTime()))
-                    .collect(Collectors.toList()));
+            preDataViewSimpleDTO.setPreDataL(item.getPreDataL());
+            preDataViewSimpleDTO.setPreDataN(item.getPreDataN());
+            preDataViewSimpleDTO.setCumulantRealData(item.getCumulantRealData());
+            preDataViewSimpleDTO.setCumulantPreData(item.getCumulantPreData());
+
             preDataViewSimpleDTOList.add(preDataViewSimpleDTO);
         });
         return preDataViewSimpleDTOList;

--
Gitblit v1.9.3