| | |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.time.LocalDate; |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | |
| | | private IServiceTaskService serviceTaskService; |
| | | |
| | | @Autowired |
| | | private IServiceSubtaskService iServiceTaskCallService; |
| | | private IServiceSubtaskService iServiceSubtaskService; |
| | | |
| | | @Value("${pub_key}") |
| | | private String pub_key; |
| | |
| | | List<ServiceTask> list = serviceTaskService.selectServiceTaskAndtaskDeptList(serviceTask); |
| | | List<ServiceTaskVO> serviceTaskVOS = DtoConversionUtils.sourceToTarget(list, ServiceTaskVO.class); |
| | | |
| | | List<Long> taskIds = list.stream().map(ServiceTask::getTaskid).collect(Collectors.toList()); |
| | | |
| | | ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO(); |
| | | serviceSubtaskVO.setTaskIds(taskIds); |
| | | serviceSubtaskVO.setStartOutHospTime(serviceTask.getStartOutHospTime()); |
| | | serviceSubtaskVO.setEndOutHospTime(serviceTask.getEndOutHospTime()); |
| | | // 批量查询所有子任务 |
| | | Map<Long, List<ServiceSubtask>> subtaskMap = iServiceSubtaskService |
| | | .selectServiceSubtaskList(serviceSubtaskVO) |
| | | .stream() |
| | | .collect(Collectors.groupingBy(ServiceSubtask::getTaskid)); |
| | | |
| | | |
| | | if (CollectionUtils.isNotEmpty(serviceTaskVOS)) { |
| | | for (ServiceTaskVO ServiceTaskVO : serviceTaskVOS) { |
| | | ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO(); |
| | | serviceSubtaskVO.setTaskid(ServiceTaskVO.getTaskid()); |
| | | serviceSubtaskVO.setStartOutHospTime(serviceTask.getStartOutHospTime()); |
| | | serviceSubtaskVO.setEndOutHospTime(serviceTask.getEndOutHospTime()); |
| | | List<ServiceSubtask> ServiceTaskcalls = iServiceTaskCallService.selectServiceSubtaskList(serviceSubtaskVO); |
| | | if (CollectionUtils.isNotEmpty(ServiceTaskcalls)) { |
| | | for (ServiceTaskVO taskVO : serviceTaskVOS) { |
| | | List<ServiceSubtask> subtasks = subtaskMap.getOrDefault(taskVO.getTaskid(), Collections.emptyList()); |
| | | |
| | | if (CollectionUtils.isNotEmpty(subtasks)) { |
| | | //已发送(子任务中的 sendstate=1为被领取) |
| | | long yfs = ServiceTaskcalls.stream().filter(serviceTaskcall1 -> (serviceTaskcall1.getSendstate() != null && serviceTaskcall1.getSendstate() >= 3L) || (serviceTaskcall1.getSendstate() != null && serviceTaskcall1.getSendstate() == 1L)).collect(Collectors.toList()).stream().count(); |
| | | long yfs = subtasks.stream().filter(s -> s.getSendstate() != null && |
| | | (s.getSendstate() >= 3L || s.getSendstate() == 1L)).count(); |
| | | //未发送 |
| | | long wfs = ServiceTaskcalls.stream().filter(serviceTaskcall1 -> serviceTaskcall1.getSendstate() != null && serviceTaskcall1.getSendstate() == 2L).collect(Collectors.toList()).stream().count(); |
| | | ServiceTaskVO.setYfs(yfs); |
| | | ServiceTaskVO.setWfs(wfs); |
| | | long wfs = subtasks.stream().filter(s -> s.getSendstate() != null && |
| | | s.getSendstate() == 2L).count(); |
| | | taskVO.setYfs(yfs); |
| | | taskVO.setWfs(wfs); |
| | | |
| | | } |
| | | |
| | | } |