|
@@ -120,6 +120,9 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
@Resource
|
|
@Resource
|
|
private TaskDailyAllocateService taskDailyAllocateService;
|
|
private TaskDailyAllocateService taskDailyAllocateService;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private TaskDailyAllocateMapper taskDailyAllocateMapper;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
private InformationService informationService;
|
|
private InformationService informationService;
|
|
@Autowired
|
|
@Autowired
|
|
@@ -943,11 +946,8 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
initworkHourExector=hoursDifference;
|
|
initworkHourExector=hoursDifference;
|
|
taskExecutor.setProjectId(task.getProjectId());
|
|
taskExecutor.setProjectId(task.getProjectId());
|
|
|
|
|
|
- Integer count = taskMapper.getUserConflitTaskCount(user.getId(), task.getId(), task.getStartDate(), task.getEndDate());
|
|
|
|
|
|
+// Integer count = taskMapper.getUserConflitTaskCount(user.getId(), task.getId(), task.getStartDate(), task.getEndDate());
|
|
// List<Task> taskConflitList = taskMapper.getTaskConflitList(user.getId(), task.getId(), task.getStartDate(), task.getEndDate());
|
|
// List<Task> taskConflitList = taskMapper.getTaskConflitList(user.getId(), task.getId(), task.getStartDate(), task.getEndDate());
|
|
- if (count > 0) {
|
|
|
|
- throw new Exception("第" + (rowIndex + 1) + "行,执行人" + user.getName() + "在其他任务上有时间冲突");
|
|
|
|
- }
|
|
|
|
|
|
|
|
Optional<Project> projectFirst = allProjectList.stream().filter(t -> t.getId().equals(task.getProjectId())).findFirst();
|
|
Optional<Project> projectFirst = allProjectList.stream().filter(t -> t.getId().equals(task.getProjectId())).findFirst();
|
|
projectFirst.ifPresent(project -> taskExecutor.setFirstAuditorId(project.getInchargerId()));
|
|
projectFirst.ifPresent(project -> taskExecutor.setFirstAuditorId(project.getInchargerId()));
|
|
@@ -970,6 +970,11 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
taskMapper.updateById(task);
|
|
taskMapper.updateById(task);
|
|
|
|
|
|
taskDailyAllocate.setTaskId(task.getId());
|
|
taskDailyAllocate.setTaskId(task.getId());
|
|
|
|
+
|
|
|
|
+ int count=taskDailyAllocateService.getConflict(taskDailyAllocate, request);
|
|
|
|
+ if (count > 0) {
|
|
|
|
+ throw new Exception("第" + (rowIndex + 1) + "行,执行人" + executorStr + "在每日工时分配上有时间冲突");
|
|
|
|
+ }
|
|
taskDailyAllocateService.save(taskDailyAllocate);
|
|
taskDailyAllocateService.save(taskDailyAllocate);
|
|
|
|
|
|
//给第一审核人发送信息提醒
|
|
//给第一审核人发送信息提醒
|
|
@@ -1113,10 +1118,6 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
taskExecutor.setPlanHours(initworkHourExector);//todo 每个执行人的计划工时,要累加
|
|
taskExecutor.setPlanHours(initworkHourExector);//todo 每个执行人的计划工时,要累加
|
|
taskExecutor.setProjectId(initProjectId);
|
|
taskExecutor.setProjectId(initProjectId);
|
|
|
|
|
|
- Integer count = taskMapper.getUserConflitTaskCount(user.getId(), initTaskId, initStartDate, initEndDate);
|
|
|
|
- if (count > 0) {
|
|
|
|
- throw new Exception("第" + (rowIndex + 1) + "行,执行人" + user.getName() + "在其他任务上有时间冲突");
|
|
|
|
- }
|
|
|
|
|
|
|
|
Integer finalInitProjectId = initProjectId;
|
|
Integer finalInitProjectId = initProjectId;
|
|
Optional<Project> projectFirst = allProjectList.stream().filter(t -> t.getId().equals(finalInitProjectId)).findFirst();
|
|
Optional<Project> projectFirst = allProjectList.stream().filter(t -> t.getId().equals(finalInitProjectId)).findFirst();
|
|
@@ -1132,6 +1133,11 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
taskDailyAllocate.setTaskId(initTaskId);
|
|
taskDailyAllocate.setTaskId(initTaskId);
|
|
taskDailyAllocate.setUserId(first.get().getId());
|
|
taskDailyAllocate.setUserId(first.get().getId());
|
|
|
|
|
|
|
|
+ int count=taskDailyAllocateService.getConflict(taskDailyAllocate, request);
|
|
|
|
+ if (count > 0) {
|
|
|
|
+ throw new Exception("第" + (rowIndex + 1) + "行,执行人" + first.get().getName() + "在每日工时分配上有时间冲突");
|
|
|
|
+ }
|
|
|
|
+
|
|
initUserStr=executorStr;
|
|
initUserStr=executorStr;
|
|
initExectorIds = getString(initExectorIds, first.get().getId());
|
|
initExectorIds = getString(initExectorIds, first.get().getId());
|
|
initExectorColors=getString(initExectorColors, first.get().getColor());
|
|
initExectorColors=getString(initExectorColors, first.get().getColor());
|
|
@@ -1878,7 +1884,25 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
|
|
public HttpRespMsg viewUserTaskSchedule(Integer taskId, String userId, String startDate, String endDate, HttpServletRequest request) {
|
|
public HttpRespMsg viewUserTaskSchedule(Integer taskId, String userId, String startDate, String endDate, HttpServletRequest request) {
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
- msg.data = taskMapper.getUserTaskTimeList(taskId, userId, LocalDateTime.parse(startDate, dtf), LocalDateTime.parse(endDate, dtf));
|
|
|
|
|
|
+// msg.data = taskMapper.getUserTaskTimeList(taskId, userId, LocalDateTime.parse(startDate, dtf), LocalDateTime.parse(endDate, dtf));
|
|
|
|
+ ArrayList<TaskDailyAllocate> userTaskTimeList = taskDailyAllocateMapper.getUserTaskTimeList(taskId, userId, LocalDateTime.parse(startDate, dtf), LocalDateTime.parse(endDate, dtf));
|
|
|
|
+ if (!userTaskTimeList.isEmpty()){
|
|
|
|
+ for (TaskDailyAllocate allocate : userTaskTimeList) {
|
|
|
|
+ LocalDate allocateDate = allocate.getAllocateDate();
|
|
|
|
+ LocalTime startTime = allocate.getStartTime();
|
|
|
|
+ LocalTime endTime = allocate.getEndTime();
|
|
|
|
+
|
|
|
|
+ LocalDateTime startDateTime = LocalDateTime.of(allocateDate, startTime);
|
|
|
|
+ LocalDateTime endDateTime = LocalDateTime.of(allocateDate, endTime);
|
|
|
|
+
|
|
|
|
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
|
+ String formattedStart = startDateTime.format(formatter);
|
|
|
|
+ String formattedEnd = endDateTime.format(formatter);
|
|
|
|
+ allocate.setStartDate(formattedStart);
|
|
|
|
+ allocate.setEndDate(formattedEnd);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ msg.data=userTaskTimeList;
|
|
return msg;
|
|
return msg;
|
|
}
|
|
}
|
|
|
|
|