From 4eb5d51d54abef7ed4377f13118f49beaa097be7 Mon Sep 17 00:00:00 2001 From: liriming <1343021927@qq.com> Date: 星期五, 25 四月 2025 15:39:55 +0800 Subject: [PATCH] 焦化总图-指标分析新增clock判断 --- ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/CokingController.java | 73 ++++++++++++++++++++++++++++++++---- 1 files changed, 65 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..c3c856c 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,73 @@ private IndItemApi indItemApi; @GetMapping("/analy-ind/list") - @Operation(summary = "焦化工序-指标分析") + @Operation(summary = "焦化总图-指标分析") public CommonResult<List<CokingAnalyIndDTO>> getCokingAnalyIndList(@RequestParam Map<String, Object> params) { + String clock = (String) params.get("clock"); + if (StringUtils.isBlank(clock)) { + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.MILLISECOND, 0); + calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MINUTE, 0); + int hour = calendar.get(Calendar.HOUR_OF_DAY); + if (hour >= 8 && hour < 16) { + calendar.set(Calendar.HOUR_OF_DAY, 0); + clock = DateUtils.format(calendar.getTime()).concat("-").concat("A"); + } else if (hour >= 16 && hour < 24) { + calendar.set(Calendar.HOUR_OF_DAY, 8); + clock = DateUtils.format(calendar.getTime()).concat("-").concat("B"); + } else if (hour >= 0 && hour < 8) { + calendar.add(Calendar.DAY_OF_YEAR, -1); + calendar.set(Calendar.HOUR_OF_DAY, 16); + clock = DateUtils.format(calendar.getTime()).concat("-").concat("B"); + } + params.put("clock", clock); + } 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 +165,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 +209,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 +232,7 @@ }); break; case IND: + log.info("IND"); ApiIndItemQueryDTO queryParams2 = new ApiIndItemQueryDTO(); queryParams2.setItemNo(entity.getDataNo()); queryParams2.setStart(entity.getStartTime()); @@ -193,6 +249,7 @@ break; } dto.setDataList(dataList); + result.add(dto); } return success(result); } -- Gitblit v1.9.3