| | |
| | | package com.iailab.module.ansteel.job.task; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | 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; |
| | |
| | | dto.setScheduleCode(params); |
| | | MdkScheduleRespDTO mdkScheduleRespDTO = mdkApi.doSchedule(dto); |
| | | logger.info(params + "调度方案执行完成," + mdkScheduleRespDTO); |
| | | Map<String, Object> result = mdkScheduleRespDTO.getResult(); |
| | | for (Map.Entry<String, Object> entry : result.entrySet()) { |
| | | String key = entry.getKey(); |
| | | if (key.contains("advice") || |
| | | key.contains("off_power_up_flag") || |
| | | key.contains("cos")) { |
| | | this.saveScheduleSuggest("无功优化", key, entry.getValue(), "WGYH", calendar.getTime()); |
| | | // Map<String, Object> result = mdkScheduleRespDTO.getResult(); |
| | | String fakeDate = "{\n" + |
| | | "\t\"off_power_up_flag\": \"无功上网\",\n" + |
| | | "\t\"wangtie_cos_flag\": \"功率因数达标预计0.93\",\n" + |
| | | "\t\"advice1\": \"退运 钢铁变#5电容器, 容量: 20.0 MVAR, 电压等级: 220.0kV\",\n" + |
| | | "\t\"advice2\": \"退运 钢铁变#6电容器, 容量: 20.0 MVAR, 电压等级: 220.0kV\",\n" + |
| | | "\t\"advice3\": \"退运 钢铁变#8电容器, 容量: 20.0 MVAR, 电压等级: 220.0kV\",\n" + |
| | | "\t\"advice4\": \"退运 钢铁变#9电容器, 容量: 20.0 MVAR, 电压等级: 220.0kV\",\n" + |
| | | "\t\"advice5\": \"退运 钢铁变#10电容器, 容量: 20.0 MVAR, 电压等级: 220.0kV\",\n" + |
| | | "\t\"advice6\": \"投运 原料场1ER电容器, 容量: 2.7 MVAR, 电压等级: 10.0kV\",\n" + |
| | | "\t\"advice7\": \"投运 备煤筛焦综合电气室Ⅰ段电容补偿, 容量: 1.8 MVAR, 电压等级: 10.0kV\",\n" + |
| | | "\t\"advice8\": \"投运 备煤筛焦综合电气室Ⅱ段电容补偿, 容量: 1.8 MVAR, 电压等级: 10.0kV\",\n" + |
| | | "\t\"advice9\": \"投运 煤气净化综合电气室Ⅰ段电容补偿, 容量: 1.8 MVAR, 电压等级: 10.0kV\",\n" + |
| | | "\t\"advice10\": \"投运 煤气净化综合电气室Ⅱ段电容补偿, 容量: 1.8 MVAR, 电压等级: 10.0kV\",\n" + |
| | | "\t\"advice11\": \"CCPP功率因数建议:0.98\",\n" + |
| | | "\t\"advice12\": \"135机组功率因数建议:0.97\",\n" + |
| | | "\t\"advice13\": \"1#TRT功率因数建议:0.98\",\n" + |
| | | "\t\"back_wugong\": 98.96\n" + |
| | | "}"; |
| | | Map<String, Object> result = JSONObject.parseObject(fakeDate); |
| | | if (result.containsKey("off_power_up_flag")) { |
| | | this.saveScheduleSuggest("无功上网标记", "off_power_up_flag", result.get("off_power_up_flag"), "WGYH", calendar.getTime(), 0); |
| | | } |
| | | int adviceCount = 0; |
| | | for (int i = 1; i < 100; i++) { |
| | | String key = "advice" + i; |
| | | if (result.containsKey(key)) { |
| | | adviceCount ++; |
| | | } |
| | | } |
| | | for (int i = 1; i < (adviceCount - 2); i++) { |
| | | String key = "advice" + i; |
| | | if (result.containsKey(key)) { |
| | | this.saveScheduleSuggest("投退建议", key, result.get(key), "WGYH", calendar.getTime(), i); |
| | | } |
| | | } |
| | | for (int i = (adviceCount - 2); i < (adviceCount + 1); i++) { |
| | | String key = "advice" + i; |
| | | if (result.containsKey(key)) { |
| | | this.saveScheduleSuggest("功率因数建议", key, result.get(key), "WGYH", calendar.getTime(), i); |
| | | } |
| | | } |
| | | |
| | | if (mdkApi.scheduleModelOut(mdkScheduleRespDTO)) { |
| | | logger.info("调度方案结果下发成功"); |
| | | } else { |
| | |
| | | logger.info("runOffPowerOptimTask运行完成"); |
| | | } |
| | | |
| | | private void saveScheduleSuggest(String title, String key, Object content, String scheduleObj, Date scheduleTime) { |
| | | private void saveScheduleSuggest(String title, String key, Object content, String scheduleObj, Date scheduleTime, int sort) { |
| | | if (content == null || StringUtils.isBlank(content.toString()) || "0".equals(content.toString())) { |
| | | logger.info(title + "content为空"); |
| | | return; |
| | |
| | | suggest.setContent(content.toString()); |
| | | suggest.setScheduleObj(scheduleObj); |
| | | suggest.setScheduleTime(scheduleTime); |
| | | suggest.setSort(0); |
| | | if(key.contains("off_power_up_flag")){ |
| | | suggest.setScheduleType("off"); |
| | | }else if(key.contains("cos")) { |
| | | suggest.setScheduleType("cos"); |
| | | }else if(key.contains("advice")) { |
| | | suggest.setScheduleType("advice"); |
| | | } |
| | | suggest.setSort(sort); |
| | | mcsApi.createScheduleSuggest(suggest); |
| | | } |
| | | } |