|
|
|
@ -51,44 +51,46 @@ public class ScheduleQueueReceiver {
|
|
|
|
|
LOGGER.info("【MQ-IMPP_SCHEDULE_QUEUE】数据接收成功:{}",logTaskTime);
|
|
|
|
|
// 跟新最后执行时间 及 任务状态
|
|
|
|
|
SysTaskPlan taskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(logTaskTime.getName(),logTaskTime.getGroupName());
|
|
|
|
|
taskPlan.setLastRunDateTime(logTaskTime.getCreateDatetime());
|
|
|
|
|
taskPlan.setTaskPlanExecNum(taskPlan.getTaskPlanExecNum() + 1);
|
|
|
|
|
taskPlan.setTaskPlanStatus(logTaskTime.getTaskStatus());
|
|
|
|
|
// 更新任务状态以及最后执行时间
|
|
|
|
|
sysTaskPlanService.updateSysTaskPlan(taskPlan);
|
|
|
|
|
if (taskPlan != null) {
|
|
|
|
|
taskPlan.setLastRunDateTime(logTaskTime.getCreateDatetime());
|
|
|
|
|
taskPlan.setTaskPlanExecNum(taskPlan.getTaskPlanExecNum() + 1);
|
|
|
|
|
taskPlan.setTaskPlanStatus(logTaskTime.getTaskStatus());
|
|
|
|
|
// 更新任务状态以及最后执行时间
|
|
|
|
|
sysTaskPlanService.updateSysTaskPlan(taskPlan);
|
|
|
|
|
|
|
|
|
|
// 添加定时任务日志
|
|
|
|
|
logTaskTime.setTaskPlanId(taskPlan.getId());
|
|
|
|
|
logTaskTime.setTaskCycleNameRdd(taskPlan.getTaskCycleNameRdd());
|
|
|
|
|
logTaskTime.setTaskCycleExpsRdd(taskPlan.getTaskCycleExpsRdd());
|
|
|
|
|
sysTaskPlanService.logInsertSysLogTaskTime(logTaskTime);
|
|
|
|
|
// 添加定时任务日志
|
|
|
|
|
logTaskTime.setTaskPlanId(taskPlan.getId());
|
|
|
|
|
logTaskTime.setTaskCycleNameRdd(taskPlan.getTaskCycleNameRdd());
|
|
|
|
|
logTaskTime.setTaskCycleExpsRdd(taskPlan.getTaskCycleExpsRdd());
|
|
|
|
|
sysTaskPlanService.logInsertSysLogTaskTime(logTaskTime);
|
|
|
|
|
|
|
|
|
|
// 定时任务失败通知
|
|
|
|
|
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == logTaskTime.getTaskStatus()
|
|
|
|
|
&& CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) {
|
|
|
|
|
// 设置通知邮件内容
|
|
|
|
|
SysMessage sysMessage = new SysMessage();
|
|
|
|
|
sysMessage.setMessageSenderNameRdd("系统管理员");
|
|
|
|
|
sysMessage.setMessageTitle("任务计划失败通知");
|
|
|
|
|
sysMessage.setMessageContent(
|
|
|
|
|
String.format("<p>管理员 您好:</p><div style=\"text-align:center\">任务计划(Name: %s,GroupName: %s)执行失败,详细信息请查看定时任务日志(ID: %s).</div>",
|
|
|
|
|
taskPlan.getName(),taskPlan.getGroupName(),logTaskTime.getId())
|
|
|
|
|
);
|
|
|
|
|
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
|
|
|
|
|
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
|
|
|
|
|
sysMessage.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
|
|
|
// 定时任务失败通知
|
|
|
|
|
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == logTaskTime.getTaskStatus()
|
|
|
|
|
&& CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) {
|
|
|
|
|
// 设置通知邮件内容
|
|
|
|
|
SysMessage sysMessage = new SysMessage();
|
|
|
|
|
sysMessage.setMessageSenderNameRdd("系统管理员");
|
|
|
|
|
sysMessage.setMessageTitle("任务计划失败通知");
|
|
|
|
|
sysMessage.setMessageContent(
|
|
|
|
|
String.format("<p>管理员 您好:</p><div style=\"text-align:center\">任务计划(Name: %s,GroupName: %s)执行失败,详细信息请查看定时任务日志(ID: %s).</div>",
|
|
|
|
|
taskPlan.getName(),taskPlan.getGroupName(),logTaskTime.getId())
|
|
|
|
|
);
|
|
|
|
|
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
|
|
|
|
|
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
|
|
|
|
|
sysMessage.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
|
|
|
|
|
|
|
|
// 是否内部成员
|
|
|
|
|
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == taskPlan.getIsInternalUser()) {
|
|
|
|
|
sysMessage.setMessageReceiversId(PlatformConstWords.EXTERNAL_MAIL);
|
|
|
|
|
sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel());
|
|
|
|
|
}
|
|
|
|
|
// 是否内部成员
|
|
|
|
|
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == taskPlan.getIsInternalUser()) {
|
|
|
|
|
sysMessage.setMessageReceiversId(PlatformConstWords.EXTERNAL_MAIL);
|
|
|
|
|
sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 发送到对应处理队列
|
|
|
|
|
if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()){
|
|
|
|
|
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
|
|
|
|
|
}else{
|
|
|
|
|
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage);
|
|
|
|
|
// 发送到对应处理队列
|
|
|
|
|
if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()){
|
|
|
|
|
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
|
|
|
|
|
}else{
|
|
|
|
|
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|