|
|
@@ -79,36 +79,50 @@ public class ReviewTaskServiceImpl extends ServiceImpl<ReviewTaskMapper, ReviewT
|
|
|
|
|
|
|
|
|
@Override
|
|
|
- public List<List<ReviewTaskDto>> his(ReviewTask reviewTask,Long userId) {
|
|
|
+ public List<List<ReviewTaskDto>> his(ReviewTask reviewTask, Long userId) {
|
|
|
QueryWrapper<ReviewTask> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("status","1");
|
|
|
- if(StringUtils.isNotBlank(reviewTask.getType())){
|
|
|
- queryWrapper.eq("type",reviewTask.getType());
|
|
|
- }
|
|
|
- queryWrapper.eq("user_id",userId);
|
|
|
- queryWrapper.orderByDesc("create_time");
|
|
|
- List<ReviewTask> records = reviewTaskMapper.selectList(queryWrapper);
|
|
|
- List<ReviewTaskDto> recordDtos = new ArrayList<>();
|
|
|
- for (ReviewTask record : records) {
|
|
|
- ReviewTaskDto reviewTaskDto =new ReviewTaskDto();
|
|
|
- BeanUtils.copyProperties(record,reviewTaskDto);
|
|
|
- recordDtos.add(reviewTaskDto);
|
|
|
- if(record.getStatus().equals("1")){
|
|
|
- ReviewRecord reviewRecord = new ReviewRecord();
|
|
|
- reviewRecord.setReviewTaskId(String.valueOf(record.getId()));
|
|
|
- Map<String, Object> reviewResult = reviewService.findReviewResult(reviewRecord);
|
|
|
- reviewTaskDto.setResult(reviewResult);
|
|
|
- }
|
|
|
+ queryWrapper.eq("status", "1")
|
|
|
+ .eq("user_id", userId)
|
|
|
+ .orderByDesc("create_time");
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(reviewTask.getType())) {
|
|
|
+ queryWrapper.eq("type", reviewTask.getType());
|
|
|
}
|
|
|
- Map<String, List<ReviewTaskDto>> groups = recordDtos.stream().collect(Collectors.groupingBy(ReviewTaskDto::getReviewTaskId));
|
|
|
|
|
|
- List<List<ReviewTaskDto>> returnList = new ArrayList<>();
|
|
|
+ List<ReviewTask> records = reviewTaskMapper.selectList(queryWrapper);
|
|
|
+ List<ReviewTaskDto> recordDtos = records.stream()
|
|
|
+ .map(this::convertToDto)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+
|
|
|
+ Map<String, List<ReviewTaskDto>> groupedByTaskId = recordDtos.stream()
|
|
|
+ .collect(Collectors.groupingBy(ReviewTaskDto::getReviewTaskId));
|
|
|
+
|
|
|
+ Map<Date, List<ReviewTaskDto>> sortedByCreateTime = groupedByTaskId.entrySet().stream()
|
|
|
+ .collect(Collectors.toMap(
|
|
|
+ entry -> entry.getValue().get(0).getCreateTime(),
|
|
|
+ Map.Entry::getValue,
|
|
|
+ (existing, replacement) -> existing,
|
|
|
+ LinkedHashMap::new
|
|
|
+ ));
|
|
|
+
|
|
|
+ List<Map.Entry<Date, List<ReviewTaskDto>>> entryList = new ArrayList<>(sortedByCreateTime.entrySet());
|
|
|
+ entryList.sort((entry1, entry2) -> entry2.getKey().compareTo(entry1.getKey()));
|
|
|
+
|
|
|
+ return entryList.stream()
|
|
|
+ .map(Map.Entry::getValue)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ }
|
|
|
|
|
|
- Set<String> keySet = groups.keySet();
|
|
|
- for (String key:keySet) {
|
|
|
- returnList.add(groups.get(key));
|
|
|
+ private ReviewTaskDto convertToDto(ReviewTask record) {
|
|
|
+ ReviewTaskDto reviewTaskDto = new ReviewTaskDto();
|
|
|
+ BeanUtils.copyProperties(record, reviewTaskDto);
|
|
|
+ if ("1".equals(record.getStatus())) {
|
|
|
+ ReviewRecord reviewRecord = new ReviewRecord();
|
|
|
+ reviewRecord.setReviewTaskId(String.valueOf(record.getId()));
|
|
|
+ Map<String, Object> reviewResult = reviewService.findReviewResult(reviewRecord);
|
|
|
+ reviewTaskDto.setResult(reviewResult);
|
|
|
}
|
|
|
- return returnList;
|
|
|
+ return reviewTaskDto;
|
|
|
}
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@@ -117,43 +131,47 @@ public class ReviewTaskServiceImpl extends ServiceImpl<ReviewTaskMapper, ReviewT
|
|
|
log.info("添加测评任务start!!!"+ reviewTask.getUserId());
|
|
|
CurrentLoginUser currentUser = tokenUtil.getCurrentUser();
|
|
|
String taskId = IdUtils.get32UUID();
|
|
|
- reviewTask.setReviewTaskId(taskId);
|
|
|
- if(currentUser != null){
|
|
|
- reviewTask.setCreateBy(currentUser.getUsername());
|
|
|
- }else{
|
|
|
- reviewTask.setCreateBy("系统");
|
|
|
- }
|
|
|
- reviewTask.setType("MOCA");
|
|
|
- reviewTask.setReviewTaskName("MOCA测评任务");
|
|
|
- reviewTask.setCreateTime(new Date());
|
|
|
- reviewTask.setStatus("0");
|
|
|
- reviewTaskMapper.insert(reviewTask);
|
|
|
- ReviewTask reviewTask2 = new ReviewTask();
|
|
|
- reviewTask2.setUserId(reviewTask.getUserId());
|
|
|
- reviewTask2.setReviewTaskId(taskId);
|
|
|
- if(currentUser != null){
|
|
|
- reviewTask2.setCreateBy(currentUser.getUsername());
|
|
|
- }else{
|
|
|
- reviewTask2.setCreateBy("系统");
|
|
|
- }
|
|
|
- reviewTask2.setType("MMSE");
|
|
|
- reviewTask2.setReviewTaskName("MMSE测评任务");
|
|
|
- reviewTask2.setCreateTime(new Date());
|
|
|
- reviewTask2.setStatus("0");
|
|
|
- reviewTaskMapper.insert(reviewTask2);
|
|
|
- ReviewTask reviewTaskNCSE = new ReviewTask();
|
|
|
- reviewTaskNCSE.setUserId(reviewTask.getUserId());
|
|
|
- reviewTaskNCSE.setReviewTaskId(taskId);
|
|
|
- if(currentUser != null){
|
|
|
- reviewTaskNCSE.setCreateBy(currentUser.getUsername());
|
|
|
- }else{
|
|
|
- reviewTaskNCSE.setCreateBy("系统");
|
|
|
- }
|
|
|
- reviewTaskNCSE.setType("NCSE");
|
|
|
- reviewTaskNCSE.setReviewTaskName("NCSE测评任务");
|
|
|
- reviewTaskNCSE.setCreateTime(new Date());
|
|
|
- reviewTaskNCSE.setStatus("0");
|
|
|
- reviewTaskMapper.insert(reviewTaskNCSE);
|
|
|
+ reviewTask.getScaleNameList().forEach(item ->{
|
|
|
+ ReviewTask newTask = new ReviewTask();
|
|
|
+ newTask.setReviewTaskId(taskId);
|
|
|
+ newTask.setUserId(reviewTask.getUserId());
|
|
|
+ if(currentUser != null){
|
|
|
+ newTask.setCreateBy(currentUser.getUsername());
|
|
|
+ }else{
|
|
|
+ newTask.setCreateBy("系统");
|
|
|
+ }
|
|
|
+ newTask.setType(item);
|
|
|
+ newTask.setReviewTaskName(item+"测评任务");
|
|
|
+ newTask.setCreateTime(new Date());
|
|
|
+ newTask.setStatus("0");
|
|
|
+ reviewTaskMapper.insert(newTask);
|
|
|
+ });
|
|
|
+// ReviewTask reviewTask2 = new ReviewTask();
|
|
|
+// reviewTask2.setUserId(reviewTask.getUserId());
|
|
|
+// reviewTask2.setReviewTaskId(taskId);
|
|
|
+// if(currentUser != null){
|
|
|
+// reviewTask2.setCreateBy(currentUser.getUsername());
|
|
|
+// }else{
|
|
|
+// reviewTask2.setCreateBy("系统");
|
|
|
+// }
|
|
|
+// reviewTask2.setType("MMSE");
|
|
|
+// reviewTask2.setReviewTaskName("MMSE测评任务");
|
|
|
+// reviewTask2.setCreateTime(new Date());
|
|
|
+// reviewTask2.setStatus("0");
|
|
|
+// reviewTaskMapper.insert(reviewTask2);
|
|
|
+// ReviewTask reviewTaskNCSE = new ReviewTask();
|
|
|
+// reviewTaskNCSE.setUserId(reviewTask.getUserId());
|
|
|
+// reviewTaskNCSE.setReviewTaskId(taskId);
|
|
|
+// if(currentUser != null){
|
|
|
+// reviewTaskNCSE.setCreateBy(currentUser.getUsername());
|
|
|
+// }else{
|
|
|
+// reviewTaskNCSE.setCreateBy("系统");
|
|
|
+// }
|
|
|
+// reviewTaskNCSE.setType("NCSE");
|
|
|
+// reviewTaskNCSE.setReviewTaskName("NCSE测评任务");
|
|
|
+// reviewTaskNCSE.setCreateTime(new Date());
|
|
|
+// reviewTaskNCSE.setStatus("0");
|
|
|
+// reviewTaskMapper.insert(reviewTaskNCSE);
|
|
|
//修改患者测评状态为未测评
|
|
|
AppUser appUser = new AppUser();
|
|
|
appUser.setTestFlag("1");
|