Commit f64bfb3b authored by tianyiming's avatar tianyiming

项目启动初始化巡检任务修改

parent 41a3d7fa
...@@ -231,5 +231,9 @@ public interface PlanTaskMapper extends BaseMapper { ...@@ -231,5 +231,9 @@ public interface PlanTaskMapper extends BaseMapper {
void updatePlanTaskByPlanId(List<Long> ids, int finishStatus); void updatePlanTaskByPlanId(List<Long> ids, int finishStatus);
void updatePlanTaskDetailsByPlanId(List<Long> ids, int finishStatus); void updatePlanTaskDetailsByPlanId(List<Long> ids);
List<PlanTask> getInitPlanTaskList();
void updatePlanTaskList(long planId, int oldStatus, int newStatus);
} }
...@@ -120,7 +120,7 @@ public class JobService implements IJobService { ...@@ -120,7 +120,7 @@ public class JobService implements IJobService {
log.debug("======================initScheduler==========================="); log.debug("======================initScheduler===========================");
initTaskJob(); initTaskJob();
initPlanTaskJob(); initPlanTaskJob();
initMsgJob(); // initMsgJob();
} }
@Override @Override
...@@ -161,7 +161,7 @@ public class JobService implements IJobService { ...@@ -161,7 +161,7 @@ public class JobService implements IJobService {
List<Integer> statusList = new ArrayList<Integer>(); List<Integer> statusList = new ArrayList<Integer>();
statusList.add(PlanTaskFinishStatusEnum.NOTSTARTED.getValue()); statusList.add(PlanTaskFinishStatusEnum.NOTSTARTED.getValue());
statusList.add(PlanTaskFinishStatusEnum.UNDERWAY.getValue()); statusList.add(PlanTaskFinishStatusEnum.UNDERWAY.getValue());
List<PlanTask> planTaskList = iPlanTaskDao.findAllByFinishStatusIn(statusList); List<PlanTask> planTaskList = planTaskMapper.getInitPlanTaskList();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
log.error("项目初始化执行开始添加定时任务监控========"); log.error("项目初始化执行开始添加定时任务监控========");
planTaskList.forEach(planTask -> { planTaskList.forEach(planTask -> {
...@@ -172,19 +172,18 @@ public class JobService implements IJobService { ...@@ -172,19 +172,18 @@ public class JobService implements IJobService {
if (PlanTaskFinishStatusEnum.NOTSTARTED.getValue() == planTask.getFinishStatus()) { if (PlanTaskFinishStatusEnum.NOTSTARTED.getValue() == planTask.getFinishStatus()) {
if (beginTime.getTime() > timestamp) { if (beginTime.getTime() > timestamp) {
planTaskAddJob(planTask); planTaskAddJob(planTask);
} else if (beginTime.getTime() < timestamp && endTime.getTime() > timestamp) { } else if (beginTime.getTime() < timestamp && endTime.getTime() > timestamp) {
planTask.setFinishStatus(PlanTaskFinishStatusEnum.UNDERWAY.getValue()); planTaskMapper.updatePlanTaskList(planTask.getPlanId(), PlanTaskFinishStatusEnum.NOTSTARTED.getValue(), PlanTaskFinishStatusEnum.UNDERWAY.getValue());
iPlanTaskDao.save(planTask);
planTaskAddJob(planTask); planTaskAddJob(planTask);
} else if (endTime.getTime() < timestamp) { } else if (endTime.getTime() < timestamp) {
updatePlanTaskStatus(planTask, PlanTaskFinishStatusEnum.OVERTIME.getValue()); updatePlanTaskAndDetailStatus(planTask);
} }
} else { } else {
if (endTime.getTime() < timestamp) { if (endTime.getTime() < timestamp) {
updatePlanTaskStatus(planTask, PlanTaskFinishStatusEnum.OVERTIME.getValue()); planTaskMapper.updatePlanTaskList(planTask.getPlanId(), PlanTaskFinishStatusEnum.NOTSTARTED.getValue(), PlanTaskFinishStatusEnum.UNDERWAY.getValue());
} else {
planTaskAddJob(planTask); planTaskAddJob(planTask);
} else {
updatePlanTaskAndDetailStatus(planTask);
} }
} }
} catch (ParseException e) { } catch (ParseException e) {
...@@ -196,6 +195,14 @@ public class JobService implements IJobService { ...@@ -196,6 +195,14 @@ public class JobService implements IJobService {
} }
private void updatePlanTaskAndDetailStatus(PlanTask planTask) {
planTaskMapper.updatePlanTaskList(planTask.getPlanId(), PlanTaskFinishStatusEnum.UNDERWAY.getValue(), PlanTaskFinishStatusEnum.OVERTIME.getValue());
List<Long> ids = new ArrayList<>();
ids.add(planTask.getId());
planTaskMapper.updatePlanTaskDetailsByPlanId(ids);
createOmissionCheckRecord(planTask);
}
private void initMsgJob() { private void initMsgJob() {
List<Msg> msgList = iMsgDao.findAllByIsImmediatelyTrueAndStatus(0); List<Msg> msgList = iMsgDao.findAllByIsImmediatelyTrueAndStatus(0);
if (!msgList.isEmpty()) { if (!msgList.isEmpty()) {
...@@ -602,7 +609,7 @@ public class JobService implements IJobService { ...@@ -602,7 +609,7 @@ public class JobService implements IJobService {
} else if (XJConstant.STATUS_MONITOR_END.equals(jobType)) { } else if (XJConstant.STATUS_MONITOR_END.equals(jobType)) {
if (!ValidationUtil.isEmpty(StartPlanTaskList)) { if (!ValidationUtil.isEmpty(StartPlanTaskList)) {
planTaskMapper.updatePlanTaskByPlanId(StartPlanTaskList,PlanTaskFinishStatusEnum.OVERTIME.getValue()); planTaskMapper.updatePlanTaskByPlanId(StartPlanTaskList,PlanTaskFinishStatusEnum.OVERTIME.getValue());
planTaskMapper.updatePlanTaskDetailsByPlanId(StartPlanTaskList,PlanTaskFinishStatusEnum.OVERTIME.getValue()); planTaskMapper.updatePlanTaskDetailsByPlanId(StartPlanTaskList);
for (PlanTask planTask: planTaskList for (PlanTask planTask: planTaskList
) { ) {
......
...@@ -1606,4 +1606,27 @@ ...@@ -1606,4 +1606,27 @@
</foreach> </foreach>
AND is_finish = 0 AND is_finish = 0
</update> </update>
<select id="getInitPlanTaskList" resultType="com.yeejoin.amos.patrol.dao.entity.PlanTask">
SELECT
*
FROM
"p_plan_task"
WHERE
finish_status = '1'
OR finish_status = '0'
GROUP BY
plan_id,
finish_status
</select>
<update id="updatePlanTaskList">
update
"p_plan_task"
set
finish_status = #{newStatus}
where
plan_id = #{planId}
and finish_status = #{oldStatus}
</update>
</mapper> </mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment