From 24996ea75ec4ca3b7d154387bfe37ec9dd387255 Mon Sep 17 00:00:00 2001
From: houzhongjian <houzhongyi@126.com>
Date: 星期四, 29 五月 2025 14:40:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StSuggestSnapshotRecordController.java |   69 ++++++++++++++++------------------
 1 files changed, 33 insertions(+), 36 deletions(-)

diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StSuggestSnapshotRecordController.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StSuggestSnapshotRecordController.java
index 4e44d8d..1be57c0 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StSuggestSnapshotRecordController.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StSuggestSnapshotRecordController.java
@@ -14,17 +14,22 @@
 import com.iailab.module.model.api.mcs.dto.PreDataBarLineReqVO;
 import com.iailab.module.model.api.mcs.dto.PreDataBarLineRespVO;
 import com.iailab.module.model.common.enums.DataCategoryEnum;
+import com.iailab.module.model.common.utils.DateUtils;
 import com.iailab.module.model.mcs.sche.service.StSuggestSnapshotRecordService;
 import com.iailab.module.model.mcs.sche.vo.StSuggestSnapshotRecordRespVO;
+import com.mysql.cj.util.TimeUtil;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.text.DateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 import static com.iailab.framework.common.pojo.CommonResult.success;
+import static com.iailab.module.model.common.utils.DateUtils.DATE_TIME_PATTERN;
 
 /**
  * @author Jay
@@ -59,20 +64,20 @@
     @PostMapping("/getChartData")
     public CommonResult<List<StSuggestSnapshotRecordRespVO>> getChartData(@RequestBody List<StSuggestSnapshotRecordRespVO> reqList){
         reqList.forEach(item -> {
-            List<Object[][]> dataList = new ArrayList<>();
+            List<Object[]> dataList = new ArrayList<>();
             if(DataCategoryEnum.DATAPOINT.getCode().equals(item.getDataType())){
                 ApiPointValueQueryDTO queryDTO = new ApiPointValueQueryDTO();
                 queryDTO.setPointNo(item.getDataNo());
                 queryDTO.setStart(item.getStartTime());
                 queryDTO.setEnd(item.getEndTime());
                 List<ApiPointValueDTO> valueList = dataPointApi.queryPointHistoryValue(queryDTO);
-                if (valueList != null && valueList.size() > 0){
-                    Object [][] data = new Object[valueList.size()+1][2];
-                    for (int i = 0; i < valueList.size(); i++){
-                        data[i][0] = valueList.get(i).getT();
-                        data[i][1] = valueList.get(i).getV();
+                if (valueList != null && !valueList.isEmpty()){
+                    for (ApiPointValueDTO apiPointValueDTO : valueList) {
+                        Object[] data = new Object[2];
+                        data[0] = DateUtils.format(new Date(String.valueOf(apiPointValueDTO.getT())), DATE_TIME_PATTERN);
+                        data[1] = apiPointValueDTO.getV();
+                        dataList.add(data);
                     }
-                    dataList.add(data);
                 }
             } else if (DataCategoryEnum.IND.getCode().equals(item.getDataType())) {
                 ApiIndItemQueryDTO queryDTO = new ApiIndItemQueryDTO();
@@ -80,13 +85,13 @@
                 queryDTO.setStart(item.getStartTime());
                 queryDTO.setEnd(item.getEndTime());
                 List<ApiIndItemValueDTO> valueList = indItemApi.queryIndItemHistoryValue(queryDTO);
-                if (valueList != null && valueList.size() > 0){
-                    Object [][] data = new Object[valueList.size()+1][2];
-                    for (int i = 0; i < valueList.size(); i++){
-                        data[i][0] = valueList.get(i).getDataTime();
-                        data[i][1] = valueList.get(i).getDataValue();
+                if (valueList != null && !valueList.isEmpty()){
+                    for (ApiIndItemValueDTO apiIndItemValueDTO : valueList) {
+                        Object[] data = new Object[2];
+                        data[0] = DateUtils.format(new Date(apiIndItemValueDTO.getDataTime()), DATE_TIME_PATTERN);
+                        data[1] = apiIndItemValueDTO.getDataValue();
+                        dataList.add(data);
                     }
-                    dataList.add(data);
                 }
             } else if (DataCategoryEnum.PLAN.getCode().equals(item.getDataType())) {
                 ApiDataQueryDTO queryDTO = new ApiDataQueryDTO();
@@ -94,13 +99,13 @@
                 queryDTO.setStart(item.getStartTime());
                 queryDTO.setEnd(item.getEndTime());
                 List<ApiDataValueDTO> valueList = planItemApi.queryPlanItemHistoryValue(queryDTO);
-                if (valueList != null && valueList.size() > 0){
-                    Object [][] data = new Object[valueList.size()+1][2];
-                    for (int i = 0; i < valueList.size(); i++){
-                        data[i][0] = valueList.get(i).getDataTime();
-                        data[i][1] = valueList.get(i).getDataValue();
+                if (valueList != null && !valueList.isEmpty()){
+                    for (ApiDataValueDTO apiDataValueDTO : valueList) {
+                        Object[] data = new Object[2];
+                        data[0] = DateUtils.format(apiDataValueDTO.getDataTime(), DATE_TIME_PATTERN);
+                        data[1] = apiDataValueDTO.getDataValue();
+                        dataList.add(data);
                     }
-                    dataList.add(data);
                 }
             } else if (DataCategoryEnum.PREDICT_ITEM_N.getCode().equals(item.getDataType())) {
                 dataList = getPreDataList(item, "N");
@@ -114,8 +119,8 @@
         });
         return success(reqList);
     }
-    private List<Object[][]> getPreDataList(StSuggestSnapshotRecordRespVO resVo, String type){
-        List<Object[][]> dataList = new ArrayList<>();
+    private List<Object[]> getPreDataList(StSuggestSnapshotRecordRespVO resVo, String type){
+        List<Object[]> dataList = new ArrayList<>();
         PreDataBarLineReqVO reqVO  = new PreDataBarLineReqVO();
         List<String> outIds = new ArrayList<>();
         outIds.add(resVo.getDataNo());
@@ -123,23 +128,15 @@
         reqVO.setStartTime(resVo.getStartTime());
         reqVO.setEndTime(resVo.getEndTime());
         PreDataBarLineRespVO result = mcsApi.getPreDataCharts(reqVO);
-        if (result == null || result.getDataViewList() == null || result.getDataViewList().size() == 0){
+        if (result == null || result.getDataViewList() == null || result.getDataViewList().isEmpty()){
             return dataList;
         }
-        List<String> xData = result.getCategories();
-        List<Object[]> yData = new ArrayList<>();
-        if ("N".equals(type)){
-            yData = result.getDataViewList().get(0).getPreDataN();
-        }else if ("L".equals(type)){
-            yData = result.getDataViewList().get(0).getPreDataL();
-        }else if ("C".equals(type)){
-            yData = result.getDataViewList().get(0).getCurData();
-        }
-        Object [][] data = new Object[xData.size()][1];
-        for (int i = 0; i < xData.size(); i++){
-            data[i][0] = xData.get(i);
-            data[i][1] = yData.get(i);
-            dataList.add(data);
+        if ("N".equals(type) && result.getDataViewList().get(0).getPreDataN()!=null){
+            dataList = result.getDataViewList().get(0).getPreDataN();
+        }else if ("L".equals(type) && result.getDataViewList().get(0).getPreDataL()!=null){
+            dataList = result.getDataViewList().get(0).getPreDataL();
+        }else if ("C".equals(type) && result.getDataViewList().get(0).getCurData()!=null){
+            dataList = result.getDataViewList().get(0).getCurData();
         }
         return dataList;
     }

--
Gitblit v1.9.3