From 92c4c336c64a46d08be5a38f31216d6fc5ac505d Mon Sep 17 00:00:00 2001 From: 潘志宝 <979469083@qq.com> Date: 星期四, 26 六月 2025 14:34:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunDayScheduleModuleTask.java | 129 ++++++++++++++++++++++++++++++++++--------- 1 files changed, 102 insertions(+), 27 deletions(-) diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunDayScheduleModuleTask.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunDayScheduleModuleTask.java index fb2f572..33e2603 100644 --- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunDayScheduleModuleTask.java +++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/job/task/RunDayScheduleModuleTask.java @@ -1,7 +1,5 @@ package com.iailab.module.ansteel.job.task; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; import com.iailab.module.model.api.mcs.McsApi; import com.iailab.module.model.api.mcs.dto.ScheduleSuggestRespDTO; import com.iailab.module.model.api.mdk.MdkApi; @@ -13,9 +11,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import java.util.ArrayList; import java.util.Calendar; -import java.util.List; +import java.util.Date; /** * 执行天粒度调度方案定时任务 @@ -25,28 +22,46 @@ private Logger logger = LoggerFactory.getLogger(getClass()); private String AnStellCOAL = "AnStellCOAL"; //焦化备煤管控 + private String AnSteelCDQTrackImplv3 = "AnSteelCDQTrackImplv3"; //焦化干熄焦产蒸汽模型 + private String AnSteelChemProSteamTrack = "AnSteelChemProSteamTrack"; //焦化化产蒸汽消耗模型 + private String lianjiaoguankong = "lianjiaoguankong"; //焦化炼焦管控模型 @Autowired private MdkApi mdkApi; @Autowired private McsApi mcsApi; + private final String finalResultStrKey = "finalResultStr"; + private final String resultListKey = "resultList"; + @Override public void run(String params) { logger.info("runDayScheduleModuleTask定时任务正在执行,参数为:{}", params); try { + String[] split = params.split(","); + String code; + String day = "0"; + if (split.length > 1) { + code = split[0]; + day = split[1]; + }else { + code = split[0]; + } + + Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); calendar.set(Calendar.MINUTE,0); calendar.set(Calendar.HOUR_OF_DAY,0); + calendar.add(Calendar.DAY_OF_YEAR,Integer.parseInt(day)); MdkScheduleReqDTO dto = new MdkScheduleReqDTO(); dto.setScheduleTime(calendar.getTime()); - dto.setScheduleCode(params); + dto.setScheduleCode(code); MdkScheduleRespDTO mdkScheduleRespDTO = mdkApi.doSchedule(dto); - logger.info(params + "调度方案执行完成," + mdkScheduleRespDTO); + logger.info(code + "调度方案执行完成," + mdkScheduleRespDTO); logger.info("调度方案结果开始下发"); if (mdkApi.scheduleModelOut(mdkScheduleRespDTO)) { logger.info("调度方案结果下发成功"); @@ -55,33 +70,93 @@ } //焦化备煤建议保存 - if (AnStellCOAL.equals(params)) { + if (AnStellCOAL.equals(code)) { Object equipOperationInfo = mdkScheduleRespDTO.getResult().get("EquipOperationInfo"); - if(equipOperationInfo != null && StringUtils.isNotBlank(equipOperationInfo.toString())) { - JSONArray jsonArray = JSON.parseArray(equipOperationInfo.toString()); - if (jsonArray.size() > 0) { - for (Object suggest : jsonArray) { - ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); - suggestDto.setTitle("焦化备煤建议"); - suggestDto.setContent(suggest.toString()); - suggestDto.setScheduleObj("COAL"); - suggestDto.setScheduleTime(dto.getScheduleTime()); - suggestDto.setCreateTime(calendar.getTime()); - mcsApi.createScheduleSuggest(suggestDto); - } - } + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("焦化备煤建议"); + suggestDto.setContent(equipOperationInfo.toString()); + suggestDto.setScheduleObj("COAL"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); + } + } + //焦化干熄焦产蒸汽模型 建议保存 + if (AnSteelCDQTrackImplv3.equals(code)) { + Object finalResultStr = mdkScheduleRespDTO.getResult().get(finalResultStrKey); + if(finalResultStr != null && StringUtils.isNotBlank(finalResultStr.toString())) { + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("干熄焦产蒸汽建议"); + suggestDto.setContent(finalResultStr.toString()); + suggestDto.setScheduleObj("GXJCZQ"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); + } + + Object resultList = mdkScheduleRespDTO.getResult().get(resultListKey); + if(resultList != null && StringUtils.isNotBlank(resultList.toString())) { + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("干熄焦产蒸汽异常溯源"); + suggestDto.setContent(resultList.toString()); + suggestDto.setScheduleObj("GXJCZQ_YCSY"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); + } + } + //焦化化产蒸汽消耗模型 建议保存 + if (AnSteelChemProSteamTrack.equals(code)) { + Object finalResultStr = mdkScheduleRespDTO.getResult().get(finalResultStrKey); + if(finalResultStr != null && StringUtils.isNotBlank(finalResultStr.toString())) { + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("化产蒸汽消耗建议"); + suggestDto.setContent(finalResultStr.toString()); + suggestDto.setScheduleObj("HCZQXH"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); + } + + Object resultList = mdkScheduleRespDTO.getResult().get(resultListKey); + if(resultList != null && StringUtils.isNotBlank(resultList.toString())) { + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("化产蒸汽消耗异常溯源"); + suggestDto.setContent(resultList.toString()); + suggestDto.setScheduleObj("HCZQXH_YCSY"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); + } + } + //焦化炼焦管控模型 建议保存 + if (lianjiaoguankong.equals(code)) { + Object finalResultStr = mdkScheduleRespDTO.getResult().get(finalResultStrKey); + if(finalResultStr != null && StringUtils.isNotBlank(finalResultStr.toString())) { + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("炼焦管控建议"); + suggestDto.setContent(finalResultStr.toString()); + suggestDto.setScheduleObj("LJGK"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); + } + + Object resultList = mdkScheduleRespDTO.getResult().get(resultListKey); + if(resultList != null && StringUtils.isNotBlank(resultList.toString())) { + ScheduleSuggestRespDTO suggestDto = new ScheduleSuggestRespDTO(); + suggestDto.setTitle("炼焦管控异常溯源"); + suggestDto.setContent(resultList.toString()); + suggestDto.setScheduleObj("LJGK_YCSY"); + suggestDto.setScheduleTime(dto.getScheduleTime()); + suggestDto.setCreateTime(new Date()); + mcsApi.createScheduleSuggest(suggestDto); } } } catch (Exception ex) { - logger.error("runDayScheduleModuleTask运行异常"); - ex.printStackTrace(); + logger.error("runDayScheduleModuleTask运行异常",ex); } logger.info("runDayScheduleModuleTask运行完成"); - } - - public static void main(String[] args) { - String s = "[\"\\u5f53\\u65e5\\u5907\\u7164\\u5de5\\u5e8f\\u572807:29-10:29\\u65f6\\u6bb5\\u5185\\u8eb2\\u5cf0\\u6210\\u529f\", \"\\u5efa\\u8bae\\u5907\\u7164\\u5de5\\u5e8f\\u572815:59-16:45\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5efa\\u8bae\\u5907\\u7164\\u5de5\\u5e8f\\u572820:07-20:59\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5f53\\u65e5\\u9ad8\\u538b\\u76ae\\u5e26\\u572807:29-10:29\\u65f6\\u6bb5\\u5185\\u8eb2\\u5cf0\\u6210\\u529f\", \"\\u5efa\\u8bae\\u9ad8\\u538b\\u76ae\\u5e26\\u572815:59-16:45\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5efa\\u8bae\\u9ad8\\u538b\\u76ae\\u5e26\\u572820:07-20:59\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5f53\\u65e51#\\u7c89\\u788e\\u673a\\u572807:29-10:29\\u65f6\\u6bb5\\u5185\\u8eb2\\u5cf0\\u6210\\u529f\", \"\\u5efa\\u8bae1#\\u7c89\\u788e\\u673a\\u572815:59-16:28\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5efa\\u8bae1#\\u7c89\\u788e\\u673a\\u572820:31-20:59\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5f53\\u65e52#\\u7c89\\u788e\\u673a\\u672a\\u8fd0\\u884c\", \"\\u5f53\\u65e53#\\u7c89\\u788e\\u673a\\u572807:29-10:29\\u65f6\\u6bb5\\u5185\\u8eb2\\u5cf0\\u6210\\u529f\", \"\\u5efa\\u8bae3#\\u7c89\\u788e\\u673a\\u572815:59-16:28\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5efa\\u8bae3#\\u7c89\\u788e\\u673a\\u572820:32-20:59\\u65f6\\u6bb5\\u7ee7\\u7eed\\u8eb2\\u5cf0\", \"\\u5f53\\u65e51#\\u9884\\u7c89\\u788e\\u673a\\u672a\\u8fd0\\u884c\", \"\\u5f53\\u65e52#\\u9884\\u7c89\\u788e\\u673a\\u672a\\u8fd0\\u884c\"]"; - System.out.println(JSON.toJSONString(JSON.parse(s))); } } -- Gitblit v1.9.3