| | |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Optional; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | serviceSubtaskVO.setStartOutHospTime(serviceTask.getStartOutHospTime()); |
| | | serviceSubtaskVO.setEndOutHospTime(serviceTask.getEndOutHospTime()); |
| | | // 批量查询所有子任务 |
| | | Map<Long, List<ServiceSubtask>> subtaskMap = iServiceSubtaskService |
| | | Map<String, List<ServiceSubtask>> subtaskMap = iServiceSubtaskService |
| | | .selectServiceSubtaskList(serviceSubtaskVO) |
| | | .stream() |
| | | .collect(Collectors.groupingBy(ServiceSubtask::getTaskid)); |
| | | .filter(subtask -> subtask.getTaskid() != null) // 添加过滤 |
| | | .collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeavehospitaldistrictcode()).orElse("Unknown"))); |
| | | |
| | | |
| | | if (CollectionUtils.isNotEmpty(serviceTaskVOS)) { |
| | | for (ServiceTaskVO taskVO : serviceTaskVOS) { |
| | | List<ServiceSubtask> subtasks = subtaskMap.getOrDefault(taskVO.getTaskid(), Collections.emptyList()); |
| | | List<ServiceSubtask> subtasks = subtaskMap.getOrDefault(taskVO.getTaskid().toString(), Collections.emptyList()); |
| | | |
| | | if (CollectionUtils.isNotEmpty(subtasks)) { |
| | | //已发送(子任务中的 sendstate=1为被领取) |