From a728cf138838c869c34cc330dec5cccbf95ed495 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期四, 24 四月 2025 09:14:59 +0800
Subject: [PATCH] 焦化溯源-历史数折线图

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/CokingController.java |   53 +++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 45 insertions(+), 8 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/CokingController.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/CokingController.java
index d9ac9c3..48672bc 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/CokingController.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/CokingController.java
@@ -1,5 +1,6 @@
 package com.iailab.module.ansteel.api.controller.admin;
 
+import com.alibaba.fastjson.JSONArray;
 import com.iailab.framework.common.pojo.CommonResult;
 import com.iailab.framework.common.util.date.DateUtils;
 import com.iailab.framework.common.util.object.ConvertUtils;
@@ -19,6 +20,7 @@
 import com.iailab.module.data.api.point.dto.ApiPointValueQueryDTO;
 import io.swagger.v3.oas.annotations.Operation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -74,6 +76,9 @@
     @Autowired
     private CokingTraceChartService cokingTraceChartService;
 
+    @Autowired
+    private CokingTraceDataService cokingTraceDataService;
+
     @Resource
     private DataPointApi dataPointApi;
 
@@ -81,38 +86,53 @@
     private IndItemApi indItemApi;
 
     @GetMapping("/analy-ind/list")
-    @Operation(summary = "焦化工序-指标分析")
+    @Operation(summary = "焦化总图-指标分析")
     public CommonResult<List<CokingAnalyIndDTO>> getCokingAnalyIndList(@RequestParam Map<String, Object> params) {
         List<CokingAnalyIndEntity> list = cokingAnalyIndService.list(params);
         return success(ConvertUtils.sourceToTarget(list, CokingAnalyIndDTO.class));
     }
 
     @GetMapping("/analy-trend/list")
-    @Operation(summary = "焦化工序-趋势分析")
+    @Operation(summary = "焦化工序-趋势分析(废弃)")
     public CommonResult<List<CokingAnalyTrendDTO>> getCokingAnalyTrendList(@RequestParam Map<String, Object> params) {
         List<CokingAnalyTrendEntity> list = cokingAnalyTrendService.list(params);
         return success(ConvertUtils.sourceToTarget(list, CokingAnalyTrendDTO.class));
     }
 
     @GetMapping("/process-child/list")
-    @Operation(summary = "焦化工序-子工序指标")
+    @Operation(summary = "焦化总图-子工序指标")
     public CommonResult<List<CokingProcessChildDTO>> getCokingProcessChildList(@RequestParam Map<String, Object> params) {
         List<CokingProcessChildEntity> list = cokingProcessChildService.list(params);
         return success(ConvertUtils.sourceToTarget(list, CokingProcessChildDTO.class));
     }
 
     @GetMapping("/process-main/list")
-    @Operation(summary = "焦化工序-主工序指标")
+    @Operation(summary = "焦化总图-主工序指标")
     public CommonResult<List<CokingProcessMainDTO>> getCokingProcessMainList(@RequestParam Map<String, Object> params) {
         List<CokingProcessMainEntity> list = cokingProcessMainService.list(params);
         return success(ConvertUtils.sourceToTarget(list, CokingProcessMainDTO.class));
     }
 
     @GetMapping("/prod-day/list")
-    @Operation(summary = "焦化工序-日生产信息")
+    @Operation(summary = "焦化总图-日生产信息")
     public CommonResult<List<CokingProdDayDTO>> getCokingProdDayList(@RequestParam Map<String, Object> params) {
         List<CokingProdDayEntity> list = cokingProdDayService.list(params);
         return success(ConvertUtils.sourceToTarget(list, CokingProdDayDTO.class));
+    }
+
+    @GetMapping("/ex-data/list")
+    @Operation(summary = "焦化总图-异常数据")
+    public CommonResult<List<CokingTraceDataDTO>> getExDataList(@RequestParam Map<String, Object> params) {
+        String clock = (String) params.get("clock");
+        if (StringUtils.isBlank(clock)) {
+            Calendar calendar = Calendar.getInstance();
+            calendar.add(Calendar.DAY_OF_YEAR, -1);
+            clock = DateUtils.format(calendar.getTime(), "yyyy-MM-dd");
+            params.put("clock", clock);
+        }
+
+        List<CokingTraceDataEntity> list = cokingTraceDataService.list(params);
+        return success(ConvertUtils.sourceToTarget(list, CokingTraceDataDTO.class));
     }
 
 
@@ -125,9 +145,21 @@
 
     @GetMapping("/overview/abnormal-data")
     @Operation(summary = "各工序-异常数据")
-    public CommonResult<List<CokingTraceSuggestEntity>> getAbnormalData(@RequestParam Map<String, Object> params) {
-        List<CokingTraceSuggestEntity> result = cokingTraceSuggestService.getAbnormalData(params);
-        return success(result);
+    public CommonResult<List<CokingTraceDataDTO>> getAbnormalData(@RequestParam Map<String, Object> params) {
+        String processType = (String) params.get("processType");
+        if (StringUtils.isBlank(processType)) {
+            return success(new ArrayList<>());
+        }
+
+        String clock = (String) params.get("clock");
+        if (StringUtils.isBlank(clock)) {
+            Calendar calendar = Calendar.getInstance();
+            calendar.add(Calendar.DAY_OF_YEAR, -1);
+            clock = DateUtils.format(calendar.getTime(), "yyyy-MM-dd");
+            params.put("clock", clock);
+        }
+        List<CokingTraceDataEntity> list = cokingTraceDataService.list(params);
+        return success(ConvertUtils.sourceToTarget(list, CokingTraceDataDTO.class));
     }
 
     @GetMapping("/trace-suggest/list")
@@ -157,13 +189,16 @@
         List<CokingTraceChartEntity> list = cokingTraceChartService.list(params);
         List<CokingTraceChartDTO> result = new ArrayList<>();
         if (CollectionUtils.isEmpty(list)) {
+            log.info("TraceChart is empty");
             return success(result);
         }
+        log.info("TraceChart List:" + JSONArray.toJSONString(list));
         for (CokingTraceChartEntity entity : list) {
             CokingTraceChartDTO dto = ConvertUtils.sourceToTarget(entity, CokingTraceChartDTO.class);
             List<Object[]> dataList = new ArrayList<>();
             switch (ProcessConfDataTypeEnum.getEumByCode(entity.getDataType())) {
                 case DATAPOINT:
+                    log.info("DATAPOINT");
                     ApiPointValueQueryDTO queryParams1 = new ApiPointValueQueryDTO();
                     queryParams1.setPointNo(entity.getDataNo());
                     queryParams1.setStart(entity.getStartTime());
@@ -177,6 +212,7 @@
                     });
                     break;
                 case IND:
+                    log.info("IND");
                     ApiIndItemQueryDTO queryParams2 = new ApiIndItemQueryDTO();
                     queryParams2.setItemNo(entity.getDataNo());
                     queryParams2.setStart(entity.getStartTime());
@@ -193,6 +229,7 @@
                     break;
             }
             dto.setDataList(dataList);
+            result.add(dto);
         }
         return success(result);
     }

--
Gitblit v1.9.3