From 226ab2258901ba3be9506a1870efea282ac59d14 Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期二, 29 四月 2025 19:14:33 +0800 Subject: [PATCH] 吨焦产蒸汽 --- ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingMainTask.java | 67 +++++++++++++++++++++++++-------- 1 files changed, 50 insertions(+), 17 deletions(-) diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingMainTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingMainTask.java index 254e305..06a98bb 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingMainTask.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingMainTask.java @@ -17,6 +17,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -43,8 +44,18 @@ logger.info("runCokingMainTask,参数为:{}", processTypes); try { - String[] split = processTypes.split(","); + 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); + // 清理旧数据 + cokingProcessMainService.deleteByClock(clock); + + String[] split = processTypes.split(","); for (String processType : split) { CokingProcessConfEntity queryParams = new CokingProcessConfEntity(); queryParams.setIndType(processType); @@ -54,24 +65,11 @@ continue; } - 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); - - // 清理旧数据 - cokingProcessMainService.deleteByClock(clock); - - // 主工序指标 筛选info_type = 0 - List<CokingProcessConfEntity> indList = list.stream().filter(e -> e.getInfoType().equals("0")).collect(Collectors.toList()); - if (CollectionUtils.isEmpty(indList)) { + if (CollectionUtils.isEmpty(list)) { continue; } - List<CokingProcessMainEntity> processMainEntities = new ArrayList<>(indList.size()); - for (CokingProcessConfEntity conf : indList) { + List<CokingProcessMainEntity> processMainEntities = new ArrayList<>(list.size()); + for (CokingProcessConfEntity conf : list) { if (StringUtils.isBlank(conf.getDataType())) { logger.info("DataType is Empty"); continue; @@ -125,6 +123,41 @@ processMainEntities.add(processMainEntity); } + // 计算吨焦产煤气,吨焦产蒸汽,吨焦耗煤气 + Map<String, CokingProcessMainEntity> resultCodeMap = processMainEntities.stream().collect(Collectors.toMap(CokingProcessMainEntity::getIndCode, Function.identity(), (e1, e2) -> e1)); + // 有焦炭产量 + if (resultCodeMap.containsKey("main_jcmq")) { + // 焦炭产量 + BigDecimal jtcl = resultCodeMap.get("main_jcmq").getRealValue(); + if (jtcl != null && !jtcl.equals(BigDecimal.ZERO)) { + processMainEntities.forEach(e -> { + // 吨焦产煤气 + if (e.getIndCode().equals("main_jcmq") && resultCodeMap.containsKey("main_jlmqfs")) { + // 焦炉煤气发生 + BigDecimal mainJlmqfs = resultCodeMap.get("main_jlmqfs").getRealValue(); + e.setRealValue(mainJlmqfs.divide(jtcl,2,BigDecimal.ROUND_HALF_UP)); + } + // 吨焦产蒸汽 + if (e.getIndCode().equals("main_djczq") && resultCodeMap.containsKey("main_gxjzqcs")) { + // 干熄焦蒸汽产生 + BigDecimal mainGxjzqcs = resultCodeMap.get("main_gxjzqcs").getRealValue(); + e.setRealValue(mainGxjzqcs.divide(jtcl,2,BigDecimal.ROUND_HALF_UP)); + + + e.setRealValue(e.getAvgValue()); + e.setAvgValue(e.getAvgValue().divide(jtcl,2,BigDecimal.ROUND_HALF_UP)); + } + // 吨焦耗煤气 + if (e.getIndCode().equals("main_djhmq") && resultCodeMap.containsKey("main_glmqxh") && resultCodeMap.containsKey("main_jlmqxh")) { + // 高炉煤气消耗 + BigDecimal mainGlmqxh = resultCodeMap.get("main_glmqxh").getRealValue(); + // 焦炉煤气消耗 + BigDecimal mainJlmqxh = resultCodeMap.get("main_jlmqxh").getRealValue(); + e.setRealValue(mainGlmqxh.add(mainJlmqxh).divide(jtcl,2,BigDecimal.ROUND_HALF_UP)); + } + }); + } + } cokingProcessMainService.save(processMainEntities); } } catch (Exception ex) { -- Gitblit v1.9.3