|
|
@@ -7,6 +7,7 @@ import com.java110.dto.task.TaskDto;
|
|
|
import com.java110.intf.community.IInspectionTaskDetailInnerServiceSMO;
|
|
|
import com.java110.intf.community.IInspectionTaskInnerServiceSMO;
|
|
|
import com.java110.job.quartz.TaskSystemQuartz;
|
|
|
+import com.java110.utils.util.ListUtil;
|
|
|
import com.java110.utils.util.StringUtil;
|
|
|
import org.slf4j.Logger;
|
|
|
import com.java110.core.log.LoggerFactory;
|
|
|
@@ -55,6 +56,7 @@ public class InspectionTaskDetailTemplate extends TaskSystemQuartz {
|
|
|
private void generatorTask(TaskDto taskDto, CommunityDto communityDto) {
|
|
|
//取出今天的日期
|
|
|
Calendar cal = Calendar.getInstance(Locale.CHINA);
|
|
|
+ cal.add(Calendar.DAY_OF_MONTH,-3);
|
|
|
String today = new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
|
|
|
String nowTime = today + " 00:00:00";
|
|
|
InspectionTaskDetailDto inspectionTaskDetailDto = new InspectionTaskDetailDto();
|
|
|
@@ -62,36 +64,38 @@ public class InspectionTaskDetailTemplate extends TaskSystemQuartz {
|
|
|
inspectionTaskDetailDto.setNowTime(nowTime);
|
|
|
inspectionTaskDetailDto.setInspectionTimeFlag("1");
|
|
|
List<InspectionTaskDetailDto> inspectionTaskDetailDtos = iInspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetails(inspectionTaskDetailDto);
|
|
|
- if (inspectionTaskDetailDtos != null && inspectionTaskDetailDtos.size() > 0) {
|
|
|
- String taskId = "";
|
|
|
- List<InspectionTaskDetailDto> taskDetailDtos = new ArrayList<>();
|
|
|
- for (InspectionTaskDetailDto inspectionTaskDetail : inspectionTaskDetailDtos) {
|
|
|
- //巡检任务明细表签到状态改为未到
|
|
|
- inspectionTaskDetail.setInspectionState("70000");
|
|
|
- if (!taskId.equals(inspectionTaskDetail.getTaskId())) {
|
|
|
- //获取巡检任务id
|
|
|
- taskId = inspectionTaskDetail.getTaskId();
|
|
|
- InspectionTaskDetailDto taskDetail = new InspectionTaskDetailDto();
|
|
|
- taskDetail.setTaskId(taskId);
|
|
|
- taskDetail.setInspectionTimeFlag("2");
|
|
|
- taskDetailDtos = iInspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetails(taskDetail);
|
|
|
- }
|
|
|
- iInspectionTaskDetailInnerServiceSMOImpl.updateInspectionTaskDetail(inspectionTaskDetail);
|
|
|
- if (taskDetailDtos != null && taskDetailDtos.size() > 0) { //如果查询结果不为空且有数据,说明该任务id下的巡检计划有过打卡的数据,该条巡检任务状态就变为缺勤
|
|
|
- InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
|
|
|
- inspectionTaskDto.setTaskId(taskId);
|
|
|
- //巡检任务表巡检状态变为缺勤
|
|
|
- inspectionTaskDto.setState("20200409");
|
|
|
- iInspectionTaskInnerServiceSMOImpl.updateInspectionTask(inspectionTaskDto);
|
|
|
- } else { //如果查询数据为空,说明该任务id下的巡检计划没有打卡的数据,该条巡检任务状态就变为已超时
|
|
|
- InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
|
|
|
- inspectionTaskDto.setTaskId(taskId);
|
|
|
- //巡检任务表巡检状态变为已超时
|
|
|
- inspectionTaskDto.setState("20200408");
|
|
|
- iInspectionTaskInnerServiceSMOImpl.updateInspectionTask(inspectionTaskDto);
|
|
|
- }
|
|
|
+ if (ListUtil.isNull(inspectionTaskDetailDtos)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ String taskId = "";
|
|
|
+ List<InspectionTaskDetailDto> taskDetailDtos = new ArrayList<>();
|
|
|
+ for (InspectionTaskDetailDto inspectionTaskDetail : inspectionTaskDetailDtos) {
|
|
|
+ //巡检任务明细表签到状态改为未到
|
|
|
+ inspectionTaskDetail.setInspectionState("70000");
|
|
|
+ if (!taskId.equals(inspectionTaskDetail.getTaskId())) {
|
|
|
+ //获取巡检任务id
|
|
|
+ taskId = inspectionTaskDetail.getTaskId();
|
|
|
+ InspectionTaskDetailDto taskDetail = new InspectionTaskDetailDto();
|
|
|
+ taskDetail.setTaskId(taskId);
|
|
|
+ taskDetail.setInspectionTimeFlag("2");
|
|
|
+ taskDetailDtos = iInspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetails(taskDetail);
|
|
|
+ }
|
|
|
+ iInspectionTaskDetailInnerServiceSMOImpl.updateInspectionTaskDetail(inspectionTaskDetail);
|
|
|
+ if (!ListUtil.isNull(taskDetailDtos)) { //如果查询结果不为空且有数据,说明该任务id下的巡检计划有过打卡的数据,该条巡检任务状态就变为缺勤
|
|
|
+ InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
|
|
|
+ inspectionTaskDto.setTaskId(taskId);
|
|
|
+ //巡检任务表巡检状态变为缺勤
|
|
|
+ inspectionTaskDto.setState("20200409");
|
|
|
+ iInspectionTaskInnerServiceSMOImpl.updateInspectionTask(inspectionTaskDto);
|
|
|
+ } else { //如果查询数据为空,说明该任务id下的巡检计划没有打卡的数据,该条巡检任务状态就变为已超时
|
|
|
+ InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
|
|
|
+ inspectionTaskDto.setTaskId(taskId);
|
|
|
+ //巡检任务表巡检状态变为已超时
|
|
|
+ inspectionTaskDto.setState("20200408");
|
|
|
+ iInspectionTaskInnerServiceSMOImpl.updateInspectionTask(inspectionTaskDto);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
private void changeToadyTask(TaskDto taskDto, CommunityDto communityDto) throws ParseException {
|