鞍钢鲅鱼圈能源管控系统后端代码
dengzedong
3 天以前 021d1ad58ed7cba1b7a8b5268bb7df8930e4b4c1
焦化 概况-整体情况  月指标运行趋势
已修改3个文件
44 ■■■■■ 文件已修改
ansteel-biz/src/main/java/com/iailab/module/ansteel/coking/service/CokingTraceChartService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/coking/service/impl/CokingTraceChartServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunCokingOverviewTask.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/coking/service/CokingTraceChartService.java
@@ -15,4 +15,5 @@
    List<CokingTraceChartEntity> list(Map<String, Object> params);
    void save(CokingTraceChartEntity cokingTraceChartEntity);
    void insert(List<CokingTraceChartEntity> list);
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/coking/service/impl/CokingTraceChartServiceImpl.java
@@ -32,4 +32,9 @@
    public void save(CokingTraceChartEntity cokingTraceChartEntity) {
        cokingTraceChartDao.insert(cokingTraceChartEntity);
    }
    @Override
    public void insert(List<CokingTraceChartEntity> list) {
        cokingTraceChartDao.insert(list);
    }
}
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运行异常");