From 021d1ad58ed7cba1b7a8b5268bb7df8930e4b4c1 Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期二, 22 四月 2025 15:08:45 +0800 Subject: [PATCH] 焦化 概况-整体情况 月指标运行趋势 --- ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java | 38 +++++++++++++++++++++++++++++++++++--- 1 files changed, 35 insertions(+), 3 deletions(-) diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java index 0b9df33..0e2da10 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java @@ -4,9 +4,11 @@ import com.iailab.framework.common.util.date.DateUtils; import com.iailab.module.ansteel.coking.entity.CokingOverviewEntity; import com.iailab.module.ansteel.coking.entity.CokingProcessConfEntity; +import com.iailab.module.ansteel.coking.entity.CokingTraceChartEntity; import com.iailab.module.ansteel.coking.entity.CokingTraceReportEntity; import com.iailab.module.ansteel.coking.service.CokingOverviewService; import com.iailab.module.ansteel.coking.service.CokingProcessConfService; +import com.iailab.module.ansteel.coking.service.CokingTraceChartService; import com.iailab.module.ansteel.coking.service.CokingTraceReportService; import com.iailab.module.ansteel.common.enums.ProcessConfDataTypeEnum; import com.iailab.module.ansteel.common.enums.ProcessTypeEnum; @@ -23,6 +25,7 @@ import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 备煤工序-概况 @@ -46,6 +49,8 @@ private IndItemApi indItemApi; @Resource private CokingTraceReportService cokingTraceReportService; + @Resource + private CokingTraceChartService cokingTraceChartService; @Override public void run(String processTypes) { @@ -66,9 +71,11 @@ Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.MILLISECOND, 0); calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MINUTE, 0); + calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.add(Calendar.DAY_OF_YEAR, -1); String clock = DateUtils.format(calendar.getTime(), DateUtils.FORMAT_YEAR_MONTH_DAY); - // 插入溯源报告 + // 溯源报告 CokingTraceReportEntity reportEntity = new CokingTraceReportEntity(); String relId = UUID.randomUUID().toString(); reportEntity.setId(relId); @@ -78,8 +85,9 @@ reportEntity.setClock(clock); cokingTraceReportService.save(reportEntity); - // 按照子工序类型分组 - Map<String, List<CokingProcessConfEntity>> processTypeMap = list.stream().collect(Collectors.groupingBy(CokingProcessConfEntity::getExt2)); + // 整体情况 + // 筛选info_type = 2,按照子工序类型分组 + Map<String, List<CokingProcessConfEntity>> processTypeMap = list.stream().filter(e -> e.getInfoType().equals("2")).collect(Collectors.groupingBy(CokingProcessConfEntity::getExt2)); // 结果 <子工序类型,<数据key,数据value>> List<CokingOverviewEntity> result = new ArrayList<>(processTypeMap.size()); @@ -126,6 +134,30 @@ result.add(overviewEntity); } cokingOverviewService.insert(result); + + // 指标运行趋势 + List<CokingProcessConfEntity> indRunTrend = list.stream().filter(e -> e.getInfoType().equals("1")).collect(Collectors.toList()); + List<CokingTraceChartEntity> cokingTraceChartEntityList = new ArrayList<>(indRunTrend.size()); + indRunTrend.forEach(e -> { + CokingTraceChartEntity cokingTraceChartEntity = new CokingTraceChartEntity(); + cokingTraceChartEntity.setRelId(relId); + cokingTraceChartEntity.setName(e.getIndName()); + cokingTraceChartEntity.setClock(clock); + cokingTraceChartEntity.setDataNo(e.getPointNo()); + cokingTraceChartEntity.setDataType(e.getDataType()); + + cokingTraceChartEntity.setEndTime(calendar.getTime()); + if (e.getExt2().equals("month")) { + calendar.add(Calendar.MONTH,-1 * Integer.parseInt(e.getExt1())); + } else if (e.getExt2().equals("day")) { + calendar.add(Calendar.DAY_OF_YEAR,-1 * Integer.parseInt(e.getExt1())); + } + cokingTraceChartEntity.setStartTime(calendar.getTime()); + cokingTraceChartEntity.setCreateDate(new Date()); + cokingTraceChartEntityList.add(cokingTraceChartEntity); + }); + cokingTraceChartService.insert(cokingTraceChartEntityList); + } } catch (Exception ex) { logger.error("runCokingOverviewTask运行异常"); -- Gitblit v1.9.3