| | |
| | | import com.iailab.module.model.api.mdk.MdkApi; |
| | | import com.iailab.module.model.api.mdk.dto.MdkScheduleReqDTO; |
| | | import com.iailab.module.model.api.mdk.dto.MdkScheduleRespDTO; |
| | | import com.iailab.module.model.enums.ScheduleTriggerMethodEnum; |
| | | import com.iailab.module.shasteel.mq.common.constant.CommonConstant; |
| | | import com.iailab.module.shasteel.mq.common.enums.TriggerConditionEnum; |
| | | import com.iailab.module.shasteel.mq.config.QueueModelAlarmConfig; |
| | | import com.iailab.module.shasteel.mq.config.QueuePredictFinishConfig; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.amqp.core.Message; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.UUID; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 监听报警信息 |
| | |
| | | return; |
| | | } |
| | | // 查找需要执行的调度方案 |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("trigger_method", TriggerConditionEnum.EVENT); |
| | | params.put("trigger_condition", routingKey); |
| | | List<StScheduleSchemeDTO> scheduleSchemeList = mcsApi.listScheduleScheme(params);//根据触发条件获取调度方案列表 |
| | | List<StScheduleSchemeDTO> scheduleSchemeList = mcsApi.listScheduleScheme(ScheduleTriggerMethodEnum.EVENT.getCode(), routingKey); |
| | | for(StScheduleSchemeDTO stScheduleSchemeDTO : scheduleSchemeList){ |
| | | MdkScheduleReqDTO mdkScheduleReqDTO = new MdkScheduleReqDTO(); |
| | | mdkScheduleReqDTO.setScheduleCode(stScheduleSchemeDTO.getCode()); |
| | |
| | | break; |
| | | } |
| | | } |
| | | // 电力预测完成,执行电力调度模型 |
| | | String moduleType = messageJson.get("moduleType").toString(); |
| | | if (null != moduleType && moduleType.equals(CommonConstant.TRIGGER_CONDITION_ELEC)) { |
| | | List<StScheduleSchemeDTO> elecSche = scheduleSchemeList.stream().filter(e -> e.getTriggerCondition().equals(CommonConstant.TRIGGER_CONDITION_ELEC)).collect(Collectors.toList()); |
| | | 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); |
| | | Date scheduleTime = calendar.getTime(); |
| | | for (StScheduleSchemeDTO stScheduleSchemeDTO : elecSche) { |
| | | MdkScheduleReqDTO mdkScheduleReqDTO = new MdkScheduleReqDTO(); |
| | | mdkScheduleReqDTO.setScheduleCode(stScheduleSchemeDTO.getCode()); |
| | | mdkScheduleReqDTO.setScheduleTime(scheduleTime); |
| | | mdkApi.doSchedule(mdkScheduleReqDTO); |
| | | } |
| | | } |
| | | } |
| | | } |