| | |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Calendar; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | private Logger logger = LoggerFactory.getLogger(getClass()); |
| | | |
| | | private String AnStellCOAL = "AnStellCOAL"; //焦化备煤管控 |
| | | private String AnSteelCDQTrackImplv3 = "AnSteelCDQTrackImplv3"; //焦化干熄焦产蒸汽模型 |
| | | private String AnSteelChemProSteamTrack = "AnSteelChemProSteamTrack"; //焦化化产蒸汽消耗模型 |
| | | |
| | | @Autowired |
| | | private MdkApi mdkApi; |
| | |
| | | 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("调度方案结果下发成功"); |
| | |
| | | } |
| | | |
| | | //焦化备煤建议保存 |
| | | 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("finalResultStr"); |
| | | 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("resultList"); |
| | | 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("finalResultStr"); |
| | | 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("resultList"); |
| | | 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); |
| | | } |
| | | } |
| | | } 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))); |
| | | } |
| | | } |