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/controller/admin/CokingController.java | 93 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 92 insertions(+), 1 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 c394d54..c91bd41 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; @@ -11,6 +12,7 @@ import com.iailab.module.ansteel.coking.entity.*; import com.iailab.module.ansteel.coking.service.*; import com.iailab.module.ansteel.common.enums.ProcessConfDataTypeEnum; +import com.iailab.module.ansteel.common.enums.TraceProcessTypeEnum; import com.iailab.module.data.api.ind.IndItemApi; import com.iailab.module.data.api.ind.dto.ApiIndItemQueryDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemValueDTO; @@ -62,6 +64,8 @@ @Autowired private CokingOverviewService cokingOverviewService; + @Autowired + private CokingOverviewIndService cokingOverviewIndService; @Autowired private CokingTraceSuggestService cokingTraceSuggestService; @@ -87,6 +91,16 @@ @GetMapping("/analy-ind/list") @Operation(summary = "焦化总图-指标分析") public CommonResult<List<CokingAnalyIndDTO>> getCokingAnalyIndList(@RequestParam Map<String, Object> params) { + String analyDate = (String) params.get("analyDate"); + if (StringUtils.isBlank(analyDate)) { + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.MILLISECOND, 0); + calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MINUTE, 0); + calendar.add(Calendar.DAY_OF_YEAR, -1); + analyDate = DateUtils.format(calendar.getTime()); + params.put("analyDate", analyDate); + } List<CokingAnalyIndEntity> list = cokingAnalyIndService.list(params); return success(ConvertUtils.sourceToTarget(list, CokingAnalyIndDTO.class)); } @@ -136,10 +150,17 @@ @GetMapping("/overview/list") - @Operation(summary = "各工序-概况数据") + @Operation(summary = "各工序-概况-整体数据") public CommonResult<Map<String,List<CokingOverviewDTO>>> getOverviewList(@RequestParam Map<String, Object> params) { Map<String,List<CokingOverviewDTO>> result = cokingOverviewService.list(params); return success(result); + } + + @GetMapping("/overview/indList") + @Operation(summary = "各工序-概况-能流图指标数据") + public CommonResult<List<CokingOverviewIndEntity>> getOverviewIndList(@RequestParam Map<String, Object> params) { + List<CokingOverviewIndEntity> list = cokingOverviewIndService.list(params); + return success(list); } @GetMapping("/overview/abnormal-data") @@ -164,6 +185,22 @@ @GetMapping("/trace-suggest/list") @Operation(summary = "焦化工序-异常溯源及优化建议") public CommonResult<List<CokingTraceSuggestDTO>> getTraceSuggestList(@RequestParam Map<String, Object> params) { + String relId = (String) params.get("relId"); + String processType = (String) params.get("processType"); + String clock = (String) params.get("clock"); + if (StringUtils.isBlank(relId) && StringUtils.isNotBlank(processType)) { + // 查找最新的relId + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DAY_OF_YEAR, -1); + String clockQ = StringUtils.isNotBlank(clock) ? clock : DateUtils.format(calendar.getTime(), "yyyy-MM-dd"); + CokingAnalyIndEntity analyInd = cokingAnalyIndService.get(TraceProcessTypeEnum.getEumByCode(processType.toUpperCase()).getProcess(), clockQ); + if (analyInd != null) { + relId = analyInd.getRelId(); + params.put("relId", relId); + } else { + return success(new ArrayList<>()); + } + } List<CokingTraceSuggestEntity> list = cokingTraceSuggestService.list(params); return success(ConvertUtils.sourceToTarget(list, CokingTraceSuggestDTO.class)); } @@ -171,6 +208,22 @@ @GetMapping("/trace-ind/list") @Operation(summary = "焦化工序-异常溯源指标") public CommonResult<List<CokingTraceIndDTO>> getTraceIndList(@RequestParam Map<String, Object> params) { + String relId = (String) params.get("relId"); + String processType = (String) params.get("processType"); + String clock = (String) params.get("clock"); + if (StringUtils.isBlank(relId) && StringUtils.isNotBlank(processType)) { + // 查找最新的relId + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DAY_OF_YEAR, -1); + String clockQ = StringUtils.isNotBlank(clock) ? clock : DateUtils.format(calendar.getTime(), "yyyy-MM-dd"); + CokingAnalyIndEntity analyInd = cokingAnalyIndService.get(TraceProcessTypeEnum.getEumByCode(processType.toUpperCase()).getProcess(), clockQ); + if (analyInd != null) { + relId = analyInd.getRelId(); + params.put("relId", relId); + } else { + return success(new ArrayList<>()); + } + } List<CokingTraceIndEntity> list = cokingTraceIndService.list(params); return success(ConvertUtils.sourceToTarget(list, CokingTraceIndDTO.class)); } @@ -178,6 +231,22 @@ @GetMapping("/trace-deviation/list") @Operation(summary = "焦化工序-异常溯源影响因素偏差值") public CommonResult<List<CokingTraceDeviationDTO>> getTraceDeviationList(@RequestParam Map<String, Object> params) { + String relId = (String) params.get("relId"); + String processType = (String) params.get("processType"); + String clock = (String) params.get("clock"); + if (StringUtils.isBlank(relId) && StringUtils.isNotBlank(processType)) { + // 查找最新的relId + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DAY_OF_YEAR, -1); + String clockQ = StringUtils.isNotBlank(clock) ? clock : DateUtils.format(calendar.getTime(), "yyyy-MM-dd"); + CokingAnalyIndEntity analyInd = cokingAnalyIndService.get(TraceProcessTypeEnum.getEumByCode(processType.toUpperCase()).getProcess(), clockQ); + if (analyInd != null) { + relId = analyInd.getRelId(); + params.put("relId", relId); + } else { + return success(new ArrayList<>()); + } + } List<CokingTraceDeviationEntity> list = cokingTraceDeviationService.list(params); return success(ConvertUtils.sourceToTarget(list, CokingTraceDeviationDTO.class)); } @@ -185,16 +254,36 @@ @GetMapping("/trace-chart/list") @Operation(summary = "焦化工序-异常溯源折线图") public CommonResult<List<CokingTraceChartDTO>> getCokingTraceChartList(@RequestParam Map<String, Object> params) { + String relId = (String) params.get("relId"); + String processType = (String) params.get("processType"); + String clock = (String) params.get("clock"); + if (StringUtils.isBlank(relId) && StringUtils.isNotBlank(processType)) { + // 查找最新的relId + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DAY_OF_YEAR, -1); + String clockQ = StringUtils.isNotBlank(clock) ? clock : DateUtils.format(calendar.getTime(), "yyyy-MM-dd"); + CokingAnalyIndEntity analyInd = cokingAnalyIndService.get(TraceProcessTypeEnum.getEumByCode(processType.toUpperCase()).getProcess(), clockQ); + if (analyInd != null) { + relId = analyInd.getRelId(); + params.put("relId", relId); + } else { + return success(new ArrayList<>()); + } + } + 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()); @@ -208,6 +297,7 @@ }); break; case IND: + log.info("IND"); ApiIndItemQueryDTO queryParams2 = new ApiIndItemQueryDTO(); queryParams2.setItemNo(entity.getDataNo()); queryParams2.setStart(entity.getStartTime()); @@ -224,6 +314,7 @@ break; } dto.setDataList(dataList); + result.add(dto); } return success(result); } -- Gitblit v1.9.3