| | |
| | | package com.ruoyi.web.controller.smartor; |
| | | |
| | | import com.github.pagehelper.ISelect; |
| | | import com.ruoyi.common.annotation.AddOrgId; |
| | | import com.ruoyi.common.annotation.Log; |
| | | import com.ruoyi.common.core.controller.BaseController; |
| | | import com.ruoyi.common.core.domain.AjaxResult; |
| | |
| | | |
| | | 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; |
| | |
| | | */ |
| | | @ApiOperation("查询任务列表") |
| | | //@PreAuthorize("@ss.hasPermi('smartor:ServiceTask:list')") |
| | | @PostMapping("/list") |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("list") |
| | | public TableDataInfo list(@RequestBody ServiceTask serviceTask) { |
| | | PageUtils.startPageByPost(serviceTask.getPageNum(), serviceTask.getPageSize()); |
| | | // List<ServiceTask> list = serviceTaskService.selectServiceTaskList(serviceTask); |
| | | 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); |
| | | |
| | | } |
| | | |
| | | } |
| | |
| | | @ApiOperation("新增任务") |
| | | //@PreAuthorize("@ss.hasPermi('smartor:ServiceTask:add')") |
| | | @Log(title = "语音任务", businessType = BusinessType.INSERT) |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/add") |
| | | public AjaxResult add(@RequestBody ServiceTask ServiceTask) { |
| | | SysUser user = getLoginUser().getUser(); |
| | |
| | | @ApiOperation("修改任务") |
| | | //@PreAuthorize("@ss.hasPermi('smartor:ServiceTask:edit')") |
| | | @Log(title = "任务", businessType = BusinessType.UPDATE) |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/edit") |
| | | public AjaxResult edit(@RequestBody ServiceTask ServiceTask) { |
| | | return toAjax(serviceTaskService.updateServiceTask(ServiceTask)); |