| | |
| | | private CokingTraceChartService cokingTraceChartService; |
| | | @Resource |
| | | private CokingTraceSuggestService cokingTraceSuggestService; |
| | | @Resource |
| | | private CokingTraceDataService cokingTraceDataService; |
| | | |
| | | @Override |
| | | public void run(String processTypes) { |
| | |
| | | overviewEntity.setSubProcessType(entry.getKey()); |
| | | overviewEntity.setClock(clock); |
| | | result.add(overviewEntity); |
| | | |
| | | // 清理旧数据 |
| | | cokingOverviewService.deleteByProcessType(processType, clock); |
| | | cokingTraceDataService.deleteByExObj(processType, clock); |
| | | } |
| | | cokingOverviewService.insert(result); |
| | | |
| | | // 指标运行趋势 |
| | | List<CokingProcessConfEntity> indRunTrend = list.stream().filter(e -> e.getInfoType().equals("1")).collect(Collectors.toList()); |
| | | List<CokingTraceChartEntity> cokingTraceChartEntityList = new ArrayList<>(indRunTrend.size()); |
| | | List<CokingTraceSuggestEntity> suggestEntitieList = new ArrayList<>(); |
| | | // List<CokingTraceSuggestEntity> suggestEntitieList = new ArrayList<>(); |
| | | List<CokingTraceDataEntity> exDatalist = new ArrayList<>(indRunTrend.size()); |
| | | indRunTrend.forEach(e -> { |
| | | CokingTraceChartEntity cokingTraceChartEntity = new CokingTraceChartEntity(); |
| | | cokingTraceChartEntity.setRelId(relId); |
| | |
| | | cokingTraceChartEntityList.add(cokingTraceChartEntity); |
| | | |
| | | // 异常数据处理 |
| | | suggestEntitieList.addAll(handleAbnormalData(e, cokingTraceChartEntity.getStartTime(), cokingTraceChartEntity.getEndTime(),relId,clock)); |
| | | exDatalist.addAll(handleAbnormalData(e, cokingTraceChartEntity.getStartTime(), cokingTraceChartEntity.getEndTime(),relId,clock)); |
| | | }); |
| | | cokingTraceChartService.insert(cokingTraceChartEntityList); |
| | | cokingTraceSuggestService.insert(suggestEntitieList); |
| | | // cokingTraceSuggestService.insert(suggestEntitieList); |
| | | cokingTraceDataService.insertList(exDatalist); |
| | | |
| | | } |
| | | } catch (Exception ex) { |
| | |
| | | |
| | | } |
| | | |
| | | private List<CokingTraceSuggestEntity> handleAbnormalData(CokingProcessConfEntity e, Date startTime, Date endTime, String relId, String clock) { |
| | | List<CokingTraceSuggestEntity> suggestEntities = new ArrayList<>(); |
| | | private List<CokingTraceDataEntity> handleAbnormalData(CokingProcessConfEntity e, Date startTime, Date endTime, String relId, String clock) { |
| | | List<CokingTraceDataEntity> suggestEntities = new ArrayList<>(); |
| | | switch (ProcessConfDataTypeEnum.getEumByCode(e.getDataType())) { |
| | | case DATAPOINT: |
| | | ApiPointValueQueryDTO queryDTO = new ApiPointValueQueryDTO(); |
| | |
| | | content = DateUtils.format(calendar.getTime()) + " " + e.getIndName() + "数据异常(无数据)"; |
| | | } |
| | | if (StringUtils.isNotBlank(content)) { |
| | | suggestEntities.add(new CokingTraceSuggestEntity(UUID.randomUUID().toString(),relId,ProcessTypeEnum.getEumByCode(e.getIndType()).getReportName(),e.getIndType()+"_AD",clock,content,new Date())); |
| | | CokingTraceDataEntity ctd = new CokingTraceDataEntity(); |
| | | ctd.setId(UUID.randomUUID().toString()); |
| | | ctd.setRelId(relId); |
| | | ctd.setProcess(ProcessTypeEnum.getEumByCode(e.getIndType()).getReportName()); |
| | | ctd.setClock(clock); |
| | | ctd.setExObj(e.getIndType()+"_AD"); |
| | | ctd.setExTime(calendar.getTime()); |
| | | ctd.setExType(content); |
| | | suggestEntities.add(ctd); |
| | | } |
| | | calendar.add(Calendar.DAY_OF_YEAR,1); |
| | | } |
| | |
| | | content = time + " " + e.getIndName() + "数据异常(无数据)"; |
| | | } |
| | | if (StringUtils.isNotBlank(content)) { |
| | | suggestEntities.add(new CokingTraceSuggestEntity(UUID.randomUUID().toString(),relId,ProcessTypeEnum.getEumByCode(e.getIndType()).getReportName(),e.getIndType()+"_AD",clock,content,new Date())); |
| | | CokingTraceDataEntity ctd = new CokingTraceDataEntity(); |
| | | ctd.setId(UUID.randomUUID().toString()); |
| | | ctd.setRelId(relId); |
| | | ctd.setProcess(ProcessTypeEnum.getEumByCode(e.getIndType()).getReportName()); |
| | | ctd.setClock(clock); |
| | | ctd.setExObj(e.getIndType()+"_AD"); |
| | | ctd.setExTime(intCalendar.getTime()); |
| | | ctd.setExType(content); |
| | | suggestEntities.add(ctd); |
| | | // suggestEntities.add(new CokingTraceSuggestEntity(UUID.randomUUID().toString(),relId,ProcessTypeEnum.getEumByCode(e.getIndType()).getReportName(),e.getIndType()+"_AD",clock,content,new Date())); |
| | | } |
| | | intCalendar.add(Calendar.DAY_OF_YEAR,1); |
| | | } |