|
|
@@ -60,6 +60,7 @@ import java.text.NumberFormat;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.CompletableFuture;
|
|
|
import java.util.stream.Collectors;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
|
|
|
/**
|
|
|
@@ -167,13 +168,17 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
|
|
|
@Override
|
|
|
public CoreEduTrainingTaskDetailVo selectCoreEduTrainingTaskById(Long id) {
|
|
|
CoreEduTrainingTaskDetailVo detailVo = coreEduTrainingTaskMapper.selectEduTrainingTaskDetail(id);
|
|
|
- List<CoreEduTrainingTaskToUser> userList = taskToUserMapper.selectByMap(MapUtil.of("edu_training_task_id", id));
|
|
|
+
|
|
|
detailVo.setTypeText(EduTrainingType.getName(detailVo.getType()));
|
|
|
if (ObjectUtil.isNotEmpty(detailVo.getFile())) {
|
|
|
detailVo.setFileList(JSON.parseArray(detailVo.getFile(), String.class));
|
|
|
}
|
|
|
+ List<CoreEduTrainingTaskToUser> userList = taskToUserMapper.selectByMap(MapUtil.of("edu_training_task_id", id));
|
|
|
if (ObjectUtil.isNotEmpty(userList)) {
|
|
|
detailVo.setTaskUserList(userList);
|
|
|
+ Map<Integer, List<CoreEduTrainingTaskToUser>> collect = userList.stream().collect(Collectors.groupingBy(CoreEduTrainingTaskToUser::getType));
|
|
|
+ detailVo.setAbsenceList(collect.get(1));
|
|
|
+ detailVo.setAbsentList(collect.get(2));
|
|
|
}
|
|
|
return detailVo;
|
|
|
}
|
|
|
@@ -227,7 +232,13 @@ public class CoreEduTrainingTaskServiceImpl extends ServiceImpl<CoreEduTrainingT
|
|
|
} else {
|
|
|
coreEduTrainingTask.setHostId(SecurityUtils.getUserId());
|
|
|
}
|
|
|
- List<CoreEduTrainingTaskToUser> taskUserList = request.getTaskUserList();
|
|
|
+ List<CoreEduTrainingTaskToUser> taskUserList;
|
|
|
+ if (ObjectUtil.isNotEmpty(request.getTaskUserList())) {
|
|
|
+ taskUserList = request.getTaskUserList();
|
|
|
+ } else {
|
|
|
+ taskUserList = Stream.of(request.getAbsenceList(), request.getAbsentList()).flatMap(Collection::stream).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
if (ObjectUtil.isNotEmpty(taskUserList)) {
|
|
|
checkTheSameUser(taskUserList);
|
|
|
for (CoreEduTrainingTaskToUser taskToUser : taskUserList) {
|