|
@@ -12,7 +12,10 @@ import org.springframework.stereotype.Component;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.HashSet;
|
|
|
import java.util.List;
|
|
|
+import java.util.Set;
|
|
|
|
|
|
|
|
|
* 计划超时处理
|
|
@@ -26,16 +29,19 @@ public class PlanTimeoutHandler {
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public void planTimeoutHandler(String param) {
|
|
|
-
|
|
|
+
|
|
|
+ List<String> planStateList = new ArrayList<>();
|
|
|
+ planStateList.add(PlanStateEnum.PLAN_STATE_BEING_PERFORMED.getCode());
|
|
|
+ planStateList.add(PlanStateEnum.PLAN_STATE_EXECUTION_NOT_STARTED.getCode());
|
|
|
+ planStateList.add(PlanStateEnum.PLAN_STATE_NOT_START_ON_TIME.getCode());
|
|
|
+
|
|
|
List<Plan> planList = planService.list(new QueryWrapper<Plan>().lambda()
|
|
|
- .eq(Plan::getPlanState, PlanStateEnum.PLAN_STATE_BEING_PERFORMED.getCode())
|
|
|
- .or()
|
|
|
- .eq(Plan::getPlanState, PlanStateEnum.PLAN_STATE_EXECUTION_NOT_STARTED.getCode()));
|
|
|
+ .in(Plan::getPlanState, planStateList));
|
|
|
|
|
|
LocalDateTime now = LocalDateTime.now();
|
|
|
- planList.forEach(info ->{
|
|
|
+ planList.forEach(info -> {
|
|
|
LocalDateTime dateTime = DateTimeUtil.fromLong2LocalDateTime(info.getPlanEnddate().getTime());
|
|
|
- if(!now.isBefore(dateTime)){
|
|
|
+ if (!now.isBefore(dateTime)) {
|
|
|
info.setPlanState(PlanStateEnum.PLAN_STATE_PLAN_UNFINISHED.getCode());
|
|
|
}
|
|
|
});
|