| | |
| | | } |
| | | TTemplate tTemplate = templates.stream().filter(e -> e.getId().equals(record.getTemplateId())).findFirst().orElse(null); |
| | | record.setNum1(1); |
| | | if(Objects.nonNull(tTemplate)){ |
| | | if (Objects.nonNull(tTemplate)) { |
| | | TTemplateCount templateCount = templateCountService.lambdaQuery().eq(TTemplateCount::getUserId, record.getUserId()) |
| | | .eq(TTemplateCount::getTemplateId, tTemplate.getId()) |
| | | .orderByDesc(TTemplateCount::getCreateTime).last("limit 1").one(); |
| | | if (templateCount!=null){ |
| | | if (templateCount != null) { |
| | | record.setNum1(templateCount.getTaskCount()); |
| | | } |
| | | // todo 应生成计划数 |
| | |
| | | break; |
| | | } |
| | | } |
| | | LocalDateTime localDateTime = tTemplate.getCreateTime().plusDays(temp-1); |
| | | LocalDateTime localDateTime = tTemplate.getCreateTime().plusDays(temp - 1); |
| | | stringBuilder.append(localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); |
| | | record.setTemplateDate(stringBuilder.toString()); |
| | | } |
| | |
| | | progressListVOPageInfo.setRecords(records); |
| | | return R.ok(progressListVOPageInfo); |
| | | } |
| | | |
| | | @ApiOperation(value = "任务进度导出") |
| | | @Log(title = "任务进度导出", businessType = BusinessType.OTHER) |
| | | @PostMapping(value = "/taskProgressExport") |
| | |
| | | } |
| | | List<ProjectDeptDetailsVO> res = new ArrayList<>(); |
| | | List<TTask> tasks = taskCleanerService.list(tTaskLambdaQueryWrapper); |
| | | if(CollectionUtils.isEmpty(tasks)){ |
| | | if (CollectionUtils.isEmpty(tasks)) { |
| | | return R.ok(res); |
| | | } |
| | | List<TTaskDetail> taskDetails = taskDetailService.lambdaQuery().orderByDesc(BaseModel::getCreateTime).list(); |
| | |
| | | LocationTypeListByProjectVO temp = new LocationTypeListByProjectVO(); |
| | | BeanUtils.copyProperties(locationTypeListByProjectVO, temp); |
| | | List<String> locationIds = locations.stream().filter(e -> |
| | | e.getProjectId().equals(projectDeptDetailsChildVO.getProjectId())&& |
| | | e.getLocationType().equals(locationTypeListByProjectVO.getId())) |
| | | e.getProjectId().equals(projectDeptDetailsChildVO.getProjectId()) && |
| | | e.getLocationType().equals(locationTypeListByProjectVO.getId())) |
| | | .map(TLocation::getId).collect(Collectors.toList()); |
| | | if (locationIds.isEmpty()) { |
| | | locationTypeListByProjectVO.setLocationNum(0); |
| | |
| | | locationTypeListByProjectVOS1.add(temp); |
| | | } |
| | | List<TTask> taskList = tasks.stream().filter(e -> e.getProjectId().equals(projectDeptDetailsChildVO.getProjectId()) |
| | | ).collect(Collectors.toList()); |
| | | ).collect(Collectors.toList()); |
| | | int total = taskList.size(); |
| | | int num1 = 0; |
| | | int num2 = 0; |
| | |
| | | int num7 = 0; |
| | | for (TTask tTask : taskList) { |
| | | TTaskDetail tTaskDetail = taskDetails.stream().filter(e -> e.getTaskId().equals(tTask.getId()) && e.getClearStatus() != null).findFirst().orElse(null); |
| | | if (tTaskDetail!=null&&(tTask.getStatus()==5||tTask.getStatus()==6)){ |
| | | if (tTaskDetail != null && (tTask.getStatus() == 5 || tTask.getStatus() == 6)) { |
| | | switch (tTaskDetail.getClearStatus()) { |
| | | case 1: |
| | | num1++; |
| | |
| | | } |
| | | return R.ok(res); |
| | | } |
| | | |
| | | @ApiOperation(value = "任务报表导出") |
| | | @PostMapping(value = "/taskDetailsExport") |
| | | public void taskDetailsExport(@RequestBody TaskDetailsQuery query,HttpServletResponse response) throws IOException { |
| | | public void taskDetailsExport(@RequestBody TaskDetailsQuery query, HttpServletResponse response) throws IOException { |
| | | List<TLocationType> locationTypeList = locationTypeService.list(); |
| | | List<TLocation> locations = locationService.list(); |
| | | LambdaQueryWrapper<TTask> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | |
| | | LocationTypeListByProjectVO temp = new LocationTypeListByProjectVO(); |
| | | BeanUtils.copyProperties(locationTypeListByProjectVO, temp); |
| | | List<String> locationIds = locations.stream().filter(e -> |
| | | e.getProjectId().equals(projectDeptDetailsChildVO.getProjectId())&& |
| | | e.getProjectId().equals(projectDeptDetailsChildVO.getProjectId()) && |
| | | e.getLocationType().equals(locationTypeListByProjectVO.getId())) |
| | | .map(TLocation::getId).collect(Collectors.toList()); |
| | | if (locationIds.isEmpty()) { |
| | |
| | | int num7 = 0; |
| | | for (TTask tTask : taskList) { |
| | | TTaskDetail tTaskDetail = taskDetails.stream().filter(e -> e.getTaskId().equals(tTask.getId()) && e.getClearStatus() != null).findFirst().orElse(null); |
| | | if (tTaskDetail!=null&&(tTask.getStatus()==5||tTask.getStatus()==6)){ |
| | | if (tTaskDetail != null && (tTask.getStatus() == 5 || tTask.getStatus() == 6)) { |
| | | switch (tTaskDetail.getClearStatus()) { |
| | | case 1: |
| | | num1++; |
| | |
| | | ExcelExportEntity excelExportEntity = new ExcelExportEntity("项目", "projectName", 15); |
| | | excelExportEntity.setMergeVertical(true); |
| | | entityList.add(excelExportEntity); |
| | | entityList.add(new ExcelExportEntity("片区名称", "areaName",15)); |
| | | entityList.add(new ExcelExportEntity("巡检保洁员数", "inspectorCount",15)); |
| | | entityList.add(new ExcelExportEntity("片区名称", "areaName", 15)); |
| | | entityList.add(new ExcelExportEntity("巡检保洁员数", "inspectorCount", 15)); |
| | | |
| | | // 动态添加作业类型分类 |
| | | List<String> list = new ArrayList<>(allTypeNames); |
| | |
| | | public R<List<PatrolInspectorVO>> patrolInspectorList(@RequestBody PatrolInspectorQuery query) { |
| | | List<SysUser> sysUsers = sysUserService.selectAllList(); |
| | | LambdaQueryWrapper<TLeave> tLeaveLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (StringUtils.hasLength(query.getStartTime())){ |
| | | tLeaveLambdaQueryWrapper.ge(TLeave::getCreateTime, query.getStartTime()+" :00:00:00"); |
| | | tLeaveLambdaQueryWrapper.le(TLeave::getCreateTime, query.getEndTime()+" :23:59:59"); |
| | | if (StringUtils.hasLength(query.getStartTime())) { |
| | | tLeaveLambdaQueryWrapper.ge(TLeave::getCreateTime, query.getStartTime() + " :00:00:00"); |
| | | tLeaveLambdaQueryWrapper.le(TLeave::getCreateTime, query.getEndTime() + " :23:59:59"); |
| | | } |
| | | tLeaveLambdaQueryWrapper.eq(TLeave::getAuditStatus,2); |
| | | tLeaveLambdaQueryWrapper.eq(TLeave::getAuditStatus, 2); |
| | | List<TLeave> leaves = leaveService.list(tLeaveLambdaQueryWrapper); |
| | | if (StringUtils.hasLength(query.getDeptName())){ |
| | | if (StringUtils.hasLength(query.getDeptName())) { |
| | | List<String> projectIds = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list() |
| | | .stream().map(TProjectDept::getId).collect(Collectors.toList()); |
| | | List<String> deptIds = deptService.lambdaQuery().like(TDept::getDeptName, query.getDeptName()).list() |
| | | .stream().map(TDept::getId).collect(Collectors.toList()); |
| | | projectIds.addAll(deptIds); |
| | | if (projectIds.isEmpty()){ |
| | | if (projectIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | query.setDeptIds(projectIds); |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().contains(query.getPhonenumber()) |
| | | && projectIds.contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | } |
| | | if (StringUtils.hasLength(query.getNickName())){ |
| | | if (StringUtils.hasLength(query.getNickName())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getNickName().contains(query.getNickName()) |
| | | && projectIds.contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | } |
| | | } |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().contains(query.getPhonenumber()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | if (StringUtils.hasLength(query.getNickName())){ |
| | | if (StringUtils.hasLength(query.getNickName())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getNickName().contains(query.getNickName()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | if (query.getDeptIds()!=null&&!query.getDeptIds().isEmpty()){ |
| | | if (query.getDeptIds() != null && !query.getDeptIds().isEmpty()) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | query.getDeptIds().contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | List<PatrolInspectorVO> res = new ArrayList<>(); |
| | | LambdaQueryWrapper<TTask> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (StringUtils.hasLength(query.getStartTime())){ |
| | | tTaskLambdaQueryWrapper.ge(TTask::getImplementTime, query.getStartTime()+" :00:00:00"); |
| | | tTaskLambdaQueryWrapper.le(TTask::getImplementTime, query.getEndTime()+" :23:59:59"); |
| | | if (StringUtils.hasLength(query.getStartTime())) { |
| | | tTaskLambdaQueryWrapper.ge(TTask::getImplementTime, query.getStartTime() + " :00:00:00"); |
| | | tTaskLambdaQueryWrapper.le(TTask::getImplementTime, query.getEndTime() + " :23:59:59"); |
| | | } |
| | | if(query.getPatrolInspectorIds()!=null&& !query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | tTaskLambdaQueryWrapper.in(TTask::getPatrolInspector, query.getPatrolInspectorIds()); |
| | | sysUsers = sysUsers.stream().filter(sysUser -> query.getPatrolInspectorIds().contains(sysUser.getUserId())).collect(Collectors.toList()); |
| | | } |
| | |
| | | |
| | | patrolInspectorVO.setNickName(sysUser.getNickName()); |
| | | patrolInspectorVO.setPhonenumber(sysUser.getPhonenumber()); |
| | | if (sysUser.getDeptType() == 1){ |
| | | if (sysUser.getDeptType() == 1) { |
| | | TProjectDept tProjectDept = projectDeptService.getById(sysUser.getDeptId()); |
| | | if (tProjectDept!=null&&!tProjectDept.getParentId().equals("0")){ |
| | | if (tProjectDept != null && !tProjectDept.getParentId().equals("0")) { |
| | | TProjectDept tProjectDept1 = projectDeptService.getById(tProjectDept.getParentId()); |
| | | if (tProjectDept1!=null) |
| | | patrolInspectorVO.setDeptName(tProjectDept1.getProjectName()+">"+tProjectDept.getProjectName()); |
| | | }else{ |
| | | if (tProjectDept1 != null) |
| | | patrolInspectorVO.setDeptName(tProjectDept1.getProjectName() + ">" + tProjectDept.getProjectName()); |
| | | } else { |
| | | patrolInspectorVO.setDeptName(tProjectDept.getProjectName()); |
| | | } |
| | | }else{ |
| | | } else { |
| | | TDept tDept = deptService.getById(sysUser.getDeptId()); |
| | | if (tDept!=null) |
| | | patrolInspectorVO.setDeptName(tDept.getDeptName()); |
| | | if (tDept != null) |
| | | patrolInspectorVO.setDeptName(tDept.getDeptName()); |
| | | } |
| | | // 查询巡检员任务ids |
| | | List<String> taskIds = tasks.stream().filter(e->e.getPatrolInspector().equals(sysUser.getUserId()+"")).map(TTask::getId).collect(Collectors.toList()); |
| | | if (taskIds.isEmpty()){ |
| | | List<String> taskIds = tasks.stream().filter(e -> e.getPatrolInspector().equals(sysUser.getUserId() + "")).map(TTask::getId).collect(Collectors.toList()); |
| | | if (taskIds.isEmpty()) { |
| | | taskIds.add("-1"); |
| | | } |
| | | // 完成的任务 |
| | | List<String> taskIdsFinish = tasks.stream().filter(e-> |
| | | (e.getStatus()==5 || e.getStatus()==6) |
| | | && |
| | | e.getPatrolInspector().equals(sysUser.getUserId()+"")).map(TTask::getId).collect(Collectors.toList()); |
| | | List<String> taskIdsFinish = tasks.stream().filter(e -> |
| | | (e.getStatus() == 5 || e.getStatus() == 6) |
| | | && |
| | | e.getPatrolInspector().equals(sysUser.getUserId() + "")).map(TTask::getId).collect(Collectors.toList()); |
| | | |
| | | if (taskIdsFinish.isEmpty()){ |
| | | if (taskIdsFinish.isEmpty()) { |
| | | taskIdsFinish.add("-1"); |
| | | } |
| | | List<TTaskDetail> list = taskDetailService.lambdaQuery() |
| | | .eq(TTaskDetail::getAuditStatus, 1) |
| | | .eq(TTaskDetail::getHandleType,1) |
| | | .eq(TTaskDetail::getHandleType, 1) |
| | | .isNotNull(TTaskDetail::getClearStatus).orderByDesc(BaseModel::getCreateTime) |
| | | .in(!taskIds.isEmpty(), TTaskDetail::getTaskId,taskIdsFinish).list(); |
| | | .in(!taskIds.isEmpty(), TTaskDetail::getTaskId, taskIdsFinish).list(); |
| | | list = new ArrayList<>(list.stream() |
| | | .collect(Collectors.groupingBy( |
| | | TTaskDetail::getTaskId, |
| | |
| | | patrolInspectorVO.setNum2(clearStatus2.size()); |
| | | patrolInspectorVO.setNum3(!clearStatus1.isEmpty() ? |
| | | (new BigDecimal(clearStatus1.size())) |
| | | .divide(new BigDecimal(clearStatus1.size()+clearStatus2.size()), 2, RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)):BigDecimal.ZERO); |
| | | .divide(new BigDecimal(clearStatus1.size() + clearStatus2.size()), 2, RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)) : BigDecimal.ZERO); |
| | | // 未执行 |
| | | List<TTask> status1 = taskList.stream().filter(e -> e.getStatus() == 1).collect(Collectors.toList()); |
| | | List<TTask> status2 = taskList.stream().filter(e -> e.getStatus() == 3).collect(Collectors.toList()); |
| | |
| | | patrolInspectorVO.setNum6(status3.size()); |
| | | patrolInspectorVO.setNum7(status4.size()); |
| | | patrolInspectorVO.setNum8(status5.size()); |
| | | patrolInspectorVO.setNum9(!status5.isEmpty()||!status4.isEmpty()?new BigDecimal(status5.size()) |
| | | .divide(new BigDecimal(status4.size()).add(new BigDecimal(status5.size())),2,RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)):BigDecimal.ZERO); |
| | | patrolInspectorVO.setNum9(!status5.isEmpty() || !status4.isEmpty() ? new BigDecimal(status5.size()) |
| | | .divide(new BigDecimal(status4.size()).add(new BigDecimal(status5.size())), 2, RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)) : BigDecimal.ZERO); |
| | | patrolInspectorVO.setNum10(status6.size()); |
| | | patrolInspectorVO.setNum11(!taskList.isEmpty()?new BigDecimal(status6.size()).divide(new BigDecimal(taskList.size()),2,RoundingMode.HALF_DOWN):BigDecimal.ZERO); |
| | | List<TLeave> collect1 = leaves.stream().filter(e -> e.getLeavePerson().equals(sysUser.getUserId()+"")).collect(Collectors.toList()); |
| | | patrolInspectorVO.setNum11(!taskList.isEmpty() ? new BigDecimal(status6.size()).divide(new BigDecimal(taskList.size()), 2, RoundingMode.HALF_DOWN) : BigDecimal.ZERO); |
| | | List<TLeave> collect1 = leaves.stream().filter(e -> e.getLeavePerson().equals(sysUser.getUserId() + "")).collect(Collectors.toList()); |
| | | patrolInspectorVO.setNum12(collect1.size()); |
| | | res.add(patrolInspectorVO); |
| | | } |
| | | return R.ok(res); |
| | | } |
| | | |
| | | @ApiOperation(value = "巡检人员报表导出") |
| | | @PostMapping(value = "/patrolInspectorListExport") |
| | | @Log(title = "巡检人员报表导出", businessType = BusinessType.OTHER) |
| | | public void patrolInspectorListExport(@RequestBody PatrolInspectorQuery query) { |
| | | List<SysUser> sysUsers = sysUserService.selectAllList(); |
| | | LambdaQueryWrapper<TLeave> tLeaveLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (StringUtils.hasLength(query.getStartTime())){ |
| | | tLeaveLambdaQueryWrapper.ge(TLeave::getCreateTime, query.getStartTime()+" :00:00:00"); |
| | | tLeaveLambdaQueryWrapper.le(TLeave::getCreateTime, query.getEndTime()+" :23:59:59"); |
| | | if (StringUtils.hasLength(query.getStartTime())) { |
| | | tLeaveLambdaQueryWrapper.ge(TLeave::getCreateTime, query.getStartTime() + " :00:00:00"); |
| | | tLeaveLambdaQueryWrapper.le(TLeave::getCreateTime, query.getEndTime() + " :23:59:59"); |
| | | } |
| | | tLeaveLambdaQueryWrapper.eq(TLeave::getAuditStatus,2); |
| | | tLeaveLambdaQueryWrapper.eq(TLeave::getAuditStatus, 2); |
| | | List<TLeave> leaves = leaveService.list(tLeaveLambdaQueryWrapper); |
| | | if (StringUtils.hasLength(query.getDeptName())){ |
| | | if (StringUtils.hasLength(query.getDeptName())) { |
| | | List<String> projectIds = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list() |
| | | .stream().map(TProjectDept::getId).collect(Collectors.toList()); |
| | | List<String> deptIds = deptService.lambdaQuery().like(TDept::getDeptName, query.getDeptName()).list() |
| | | .stream().map(TDept::getId).collect(Collectors.toList()); |
| | | projectIds.addAll(deptIds); |
| | | if (projectIds.isEmpty()){ |
| | | if (projectIds.isEmpty()) { |
| | | projectIds.add("-1"); |
| | | } |
| | | query.setDeptIds(projectIds); |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().equals(query.getPhonenumber()) |
| | | && projectIds.contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | } |
| | | if (StringUtils.hasLength(query.getNickName())){ |
| | | if (StringUtils.hasLength(query.getNickName())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getNickName().contains(query.getNickName()) |
| | | && projectIds.contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | } |
| | | } |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().equals(query.getPhonenumber()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | } |
| | | if (StringUtils.hasLength(query.getNickName())){ |
| | | if (StringUtils.hasLength(query.getNickName())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getNickName().contains(query.getNickName()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | } |
| | | if (query.getDeptIds()!=null&&!query.getDeptIds().isEmpty()){ |
| | | if (query.getDeptIds() != null && !query.getDeptIds().isEmpty()) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | query.getDeptIds().contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | } |
| | | List<PatrolInspectorVO> res = new ArrayList<>(); |
| | | LambdaQueryWrapper<TTask> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (StringUtils.hasLength(query.getStartTime())){ |
| | | tTaskLambdaQueryWrapper.ge(TTask::getImplementTime, query.getStartTime()+" :00:00:00"); |
| | | tTaskLambdaQueryWrapper.le(TTask::getImplementTime, query.getEndTime()+" :23:59:59"); |
| | | if (StringUtils.hasLength(query.getStartTime())) { |
| | | tTaskLambdaQueryWrapper.ge(TTask::getImplementTime, query.getStartTime() + " :00:00:00"); |
| | | tTaskLambdaQueryWrapper.le(TTask::getImplementTime, query.getEndTime() + " :23:59:59"); |
| | | } |
| | | if(query.getPatrolInspectorIds()!=null&& !query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null && !query.getPatrolInspectorIds().isEmpty()) { |
| | | tTaskLambdaQueryWrapper.in(TTask::getPatrolInspector, query.getPatrolInspectorIds()); |
| | | sysUsers = sysUsers.stream().filter(sysUser -> query.getPatrolInspectorIds().contains(sysUser.getUserId())).collect(Collectors.toList()); |
| | | } |
| | |
| | | |
| | | patrolInspectorVO.setNickName(sysUser.getNickName()); |
| | | patrolInspectorVO.setPhonenumber(sysUser.getPhonenumber()); |
| | | if (sysUser.getDeptType() == 1){ |
| | | if (sysUser.getDeptType() == 1) { |
| | | TProjectDept tProjectDept = projectDeptService.getById(sysUser.getDeptId()); |
| | | if (tProjectDept!=null&&!tProjectDept.getParentId().equals("0")){ |
| | | if (tProjectDept != null && !tProjectDept.getParentId().equals("0")) { |
| | | TProjectDept tProjectDept1 = projectDeptService.getById(tProjectDept.getParentId()); |
| | | if (tProjectDept1!=null) |
| | | patrolInspectorVO.setDeptName(tProjectDept1.getProjectName()+">"+tProjectDept.getProjectName()); |
| | | }else{ |
| | | if (tProjectDept1 != null) |
| | | patrolInspectorVO.setDeptName(tProjectDept1.getProjectName() + ">" + tProjectDept.getProjectName()); |
| | | } else { |
| | | patrolInspectorVO.setDeptName(tProjectDept.getProjectName()); |
| | | } |
| | | }else{ |
| | | } else { |
| | | TDept tDept = deptService.getById(sysUser.getDeptId()); |
| | | if (tDept!=null) |
| | | if (tDept != null) |
| | | patrolInspectorVO.setDeptName(tDept.getDeptName()); |
| | | } |
| | | // 查询巡检员任务ids |
| | | List<String> taskIds = tasks.stream().filter(e->e.getPatrolInspector().equals(sysUser.getUserId()+"")).map(TTask::getId).collect(Collectors.toList()); |
| | | if (taskIds.isEmpty()){ |
| | | List<String> taskIds = tasks.stream().filter(e -> e.getPatrolInspector().equals(sysUser.getUserId() + "")).map(TTask::getId).collect(Collectors.toList()); |
| | | if (taskIds.isEmpty()) { |
| | | taskIds.add("-1"); |
| | | } |
| | | // 完成的任务 |
| | | List<String> taskIdsFinish = tasks.stream().filter(e-> |
| | | (e.getStatus()==5 || e.getStatus()==6) |
| | | List<String> taskIdsFinish = tasks.stream().filter(e -> |
| | | (e.getStatus() == 5 || e.getStatus() == 6) |
| | | && |
| | | e.getPatrolInspector().equals(sysUser.getUserId()+"")).map(TTask::getId).collect(Collectors.toList()); |
| | | e.getPatrolInspector().equals(sysUser.getUserId() + "")).map(TTask::getId).collect(Collectors.toList()); |
| | | |
| | | if (taskIdsFinish.isEmpty()){ |
| | | if (taskIdsFinish.isEmpty()) { |
| | | taskIdsFinish.add("-1"); |
| | | } |
| | | List<TTaskDetail> list = taskDetailService.lambdaQuery() |
| | | .eq(TTaskDetail::getAuditStatus, 1) |
| | | .eq(TTaskDetail::getHandleType,1) |
| | | .eq(TTaskDetail::getHandleType, 1) |
| | | .isNotNull(TTaskDetail::getClearStatus).orderByDesc(BaseModel::getCreateTime) |
| | | .in(!taskIds.isEmpty(), TTaskDetail::getTaskId,taskIdsFinish).list(); |
| | | .in(!taskIds.isEmpty(), TTaskDetail::getTaskId, taskIdsFinish).list(); |
| | | list = new ArrayList<>(list.stream() |
| | | .collect(Collectors.groupingBy( |
| | | TTaskDetail::getTaskId, |
| | |
| | | patrolInspectorVO.setNum2(clearStatus2.size()); |
| | | patrolInspectorVO.setNum3(!clearStatus1.isEmpty() ? |
| | | (new BigDecimal(clearStatus1.size())) |
| | | .divide(new BigDecimal(clearStatus1.size()+clearStatus2.size()), 2, RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)):BigDecimal.ZERO); |
| | | .divide(new BigDecimal(clearStatus1.size() + clearStatus2.size()), 2, RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)) : BigDecimal.ZERO); |
| | | // 未执行 |
| | | List<TTask> status1 = taskList.stream().filter(e -> e.getStatus() == 1).collect(Collectors.toList()); |
| | | List<TTask> status2 = taskList.stream().filter(e -> e.getStatus() == 3).collect(Collectors.toList()); |
| | |
| | | patrolInspectorVO.setNum6(status3.size()); |
| | | patrolInspectorVO.setNum7(status4.size()); |
| | | patrolInspectorVO.setNum8(status5.size()); |
| | | patrolInspectorVO.setNum9(!status5.isEmpty()||!status4.isEmpty()?new BigDecimal(status5.size()) |
| | | .divide(new BigDecimal(status4.size()).add(new BigDecimal(status5.size())),2,RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)):BigDecimal.ZERO); |
| | | patrolInspectorVO.setNum9(!status5.isEmpty() || !status4.isEmpty() ? new BigDecimal(status5.size()) |
| | | .divide(new BigDecimal(status4.size()).add(new BigDecimal(status5.size())), 2, RoundingMode.HALF_DOWN) |
| | | .multiply(new BigDecimal(100)) : BigDecimal.ZERO); |
| | | patrolInspectorVO.setNum10(status6.size()); |
| | | patrolInspectorVO.setNum11(!taskList.isEmpty()?new BigDecimal(status6.size()).divide(new BigDecimal(taskList.size()),2,RoundingMode.HALF_DOWN):BigDecimal.ZERO); |
| | | List<TLeave> collect1 = leaves.stream().filter(e -> e.getLeavePerson().equals(sysUser.getUserId()+"")).collect(Collectors.toList()); |
| | | patrolInspectorVO.setNum11(!taskList.isEmpty() ? new BigDecimal(status6.size()).divide(new BigDecimal(taskList.size()), 2, RoundingMode.HALF_DOWN) : BigDecimal.ZERO); |
| | | List<TLeave> collect1 = leaves.stream().filter(e -> e.getLeavePerson().equals(sysUser.getUserId() + "")).collect(Collectors.toList()); |
| | | patrolInspectorVO.setNum12(collect1.size()); |
| | | res.add(patrolInspectorVO); |
| | | } |
| | |
| | | List<SysUser> sysUsers = sysUserService.selectAllList(); |
| | | List<TTask> listAll = taskCleanerService.list(); |
| | | List<String> listAllTaskIds = listAll.stream().map(TTask::getId).collect(Collectors.toList()); |
| | | if (StringUtils.hasLength(query.getDeptName())){ |
| | | if (StringUtils.hasLength(query.getDeptName())) { |
| | | List<String> projectIds = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list() |
| | | .stream().map(TProjectDept::getId).collect(Collectors.toList()); |
| | | List<String> deptIds = deptService.lambdaQuery().like(TDept::getDeptName, query.getDeptName()).list() |
| | | .stream().map(TDept::getId).collect(Collectors.toList()); |
| | | projectIds.addAll(deptIds); |
| | | if (projectIds.isEmpty()){ |
| | | if (projectIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().equals(query.getPhonenumber()) |
| | | && projectIds.contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | } |
| | | } |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().equals(query.getPhonenumber()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (!query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | LambdaQueryWrapper<TInspector> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | tTaskLambdaQueryWrapper.eq(TInspector::getAuditStatus,1); |
| | | tTaskLambdaQueryWrapper.eq(TInspector::getAuditStatus, 1); |
| | | tTaskLambdaQueryWrapper.isNotNull(TInspector::getClearStatus); |
| | | if (StringUtils.hasLength(query.getStartTime())){ |
| | | if (StringUtils.hasLength(query.getStartTime())) { |
| | | tTaskLambdaQueryWrapper.ge(TInspector::getCreateTime, query.getStartTime()); |
| | | tTaskLambdaQueryWrapper.le(TInspector::getCreateTime, query.getEndTime()); |
| | | } |
| | | if(query.getPatrolInspectorIds()!=null){ |
| | | if (query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null) { |
| | | if (query.getPatrolInspectorIds().isEmpty()) { |
| | | List<Long> patrolInspectorIds = query.getPatrolInspectorIds(); |
| | | patrolInspectorIds.add(0L); |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | |
| | | InspectorVO inspectorVO = new InspectorVO(); |
| | | inspectorVO.setNickName(sysUser.getNickName()); |
| | | inspectorVO.setPhonenumber(sysUser.getPhonenumber()); |
| | | if (sysUser.getDeptType() == 1){ |
| | | if (sysUser.getDeptType() == 1) { |
| | | TProjectDept tProjectDept = projectDeptService.getById(sysUser.getDeptId()); |
| | | if (tProjectDept!=null&&!tProjectDept.getParentId().equals("0")){ |
| | | if (tProjectDept != null && !tProjectDept.getParentId().equals("0")) { |
| | | TProjectDept tProjectDept1 = projectDeptService.getById(tProjectDept.getParentId()); |
| | | if (tProjectDept1!=null) |
| | | inspectorVO.setDeptName(tProjectDept1.getProjectName()+">"+tProjectDept.getProjectName()); |
| | | }else{ |
| | | if (tProjectDept1 != null) |
| | | inspectorVO.setDeptName(tProjectDept1.getProjectName() + ">" + tProjectDept.getProjectName()); |
| | | } else { |
| | | inspectorVO.setDeptName(tProjectDept.getProjectName()); |
| | | } |
| | | }else{ |
| | | } else { |
| | | TDept tDept = deptService.getById(sysUser.getDeptId()); |
| | | if (tDept!=null) |
| | | if (tDept != null) |
| | | inspectorVO.setDeptName(tDept.getDeptName()); |
| | | } |
| | | List<TInspector> collect = inspectors.stream().filter(e -> listAllTaskIds.contains(e.getTaskId())).collect(Collectors.toList()); |
| | | List<String> collect1 = listAll.stream().filter(e -> e.getPatrolInspector().equals(sysUser.getUserId() + "")).map(TTask::getId).collect(Collectors.toList()); |
| | | List<TInspector> collect = inspectors.stream().filter(e -> collect1.contains(e.getTaskId())).collect(Collectors.toList()); |
| | | inspectorVO.setTotal(collect.size()); |
| | | List<TInspector> status1 = collect.stream().filter(e -> e.getClearStatus() == 1).collect(Collectors.toList()); |
| | | List<TInspector> status2 = collect.stream().filter(e -> e.getClearStatus() == 2).collect(Collectors.toList()); |
| | |
| | | |
| | | inspectorVO.setNum1(status1.size()); |
| | | inspectorVO.setNum2(status2.size()); |
| | | inspectorVO.setNum3(!status1.isEmpty()||!status2.isEmpty()?new BigDecimal(status1.size()).divide(new BigDecimal(status2.size()+status1.size()),2,RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)):BigDecimal.ZERO); |
| | | inspectorVO.setNum3(!status1.isEmpty() || !status2.isEmpty() ? new BigDecimal(status1.size()).divide(new BigDecimal(status2.size() + status1.size()), 2, RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)) : BigDecimal.ZERO); |
| | | inspectorVO.setNum4(status4.size()); |
| | | inspectorVO.setNum5(status5.size()); |
| | | inspectorVO.setNum6(status6.size()); |
| | | inspectorVO.setNum7(!status6.isEmpty()||!status5.isEmpty()?new BigDecimal(status6.size()).divide(new BigDecimal(status5.size()+status6.size()),2,RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)):new BigDecimal(0)); |
| | | inspectorVO.setNum7(!status6.isEmpty() || !status5.isEmpty() ? new BigDecimal(status6.size()).divide(new BigDecimal(status5.size() + status6.size()), 2, RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)) : new BigDecimal(0)); |
| | | res.add(inspectorVO); |
| | | } |
| | | return R.ok(res); |
| | | } |
| | | |
| | | @ApiOperation(value = "随机督察报表导出") |
| | | @PostMapping(value = "/inspectorListExport") |
| | | @Log(title = "随机督察报表导出", businessType = BusinessType.OTHER) |
| | | public void inspectorListExport(@RequestBody InspectorQuery query) { |
| | | query.setPatrolInspectorIds(null); |
| | | List<SysUser> sysUsers = sysUserService.selectAllList(); |
| | | if (StringUtils.hasLength(query.getDeptName())){ |
| | | List<TTask> listAll = taskCleanerService.list(); |
| | | List<String> listAllTaskIds = listAll.stream().map(TTask::getId).collect(Collectors.toList()); |
| | | if (StringUtils.hasLength(query.getDeptName())) { |
| | | List<String> projectIds = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list() |
| | | .stream().map(TProjectDept::getId).collect(Collectors.toList()); |
| | | List<String> deptIds = deptService.lambdaQuery().like(TDept::getDeptName, query.getDeptName()).list() |
| | | .stream().map(TDept::getId).collect(Collectors.toList()); |
| | | projectIds.addAll(deptIds); |
| | | if (projectIds.isEmpty()){ |
| | | if (projectIds.isEmpty()) { |
| | | projectIds.add("-1"); |
| | | } |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().equals(query.getPhonenumber()) |
| | | && projectIds.contains(sysUser.getDeptId()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | } |
| | | } |
| | | if (StringUtils.hasLength(query.getPhonenumber())){ |
| | | if (StringUtils.hasLength(query.getPhonenumber())) { |
| | | List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> |
| | | sysUser.getPhonenumber().equals(query.getPhonenumber()) |
| | | ).map(SysUser::getUserId).collect(Collectors.toList()); |
| | | if (!query.getPatrolInspectorIds().isEmpty()){ |
| | | if (!query.getPatrolInspectorIds().isEmpty()) { |
| | | // 取交集 |
| | | patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); |
| | | } |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | | if (patrolInspectorIds.isEmpty()){ |
| | | if (patrolInspectorIds.isEmpty()) { |
| | | patrolInspectorIds.add(0L); |
| | | } |
| | | } |
| | | LambdaQueryWrapper<TInspector> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | tTaskLambdaQueryWrapper.eq(TInspector::getAuditStatus,1); |
| | | tTaskLambdaQueryWrapper.eq(TInspector::getAuditStatus, 1); |
| | | tTaskLambdaQueryWrapper.isNotNull(TInspector::getClearStatus); |
| | | if (StringUtils.hasLength(query.getStartTime())){ |
| | | if (StringUtils.hasLength(query.getStartTime())) { |
| | | tTaskLambdaQueryWrapper.ge(TInspector::getCreateTime, query.getStartTime()); |
| | | tTaskLambdaQueryWrapper.le(TInspector::getCreateTime, query.getEndTime()); |
| | | } |
| | | if(query.getPatrolInspectorIds()!=null){ |
| | | if (query.getPatrolInspectorIds().isEmpty()){ |
| | | if (query.getPatrolInspectorIds() != null) { |
| | | if (query.getPatrolInspectorIds().isEmpty()) { |
| | | List<Long> patrolInspectorIds = query.getPatrolInspectorIds(); |
| | | patrolInspectorIds.add(0L); |
| | | query.setPatrolInspectorIds(patrolInspectorIds); |
| | |
| | | InspectorVO inspectorVO = new InspectorVO(); |
| | | inspectorVO.setNickName(sysUser.getNickName()); |
| | | inspectorVO.setPhonenumber(sysUser.getPhonenumber()); |
| | | if (sysUser.getDeptType() == 1){ |
| | | if (sysUser.getDeptType() == 1) { |
| | | TProjectDept tProjectDept = projectDeptService.getById(sysUser.getDeptId()); |
| | | if (tProjectDept!=null&&!tProjectDept.getParentId().equals("0")){ |
| | | if (tProjectDept != null && !tProjectDept.getParentId().equals("0")) { |
| | | TProjectDept tProjectDept1 = projectDeptService.getById(tProjectDept.getParentId()); |
| | | if (tProjectDept1!=null) |
| | | inspectorVO.setDeptName(tProjectDept1.getProjectName()+">"+tProjectDept.getProjectName()); |
| | | }else{ |
| | | if (tProjectDept1 != null) |
| | | inspectorVO.setDeptName(tProjectDept1.getProjectName() + ">" + tProjectDept.getProjectName()); |
| | | } else { |
| | | inspectorVO.setDeptName(tProjectDept.getProjectName()); |
| | | } |
| | | }else{ |
| | | } else { |
| | | TDept tDept = deptService.getById(sysUser.getDeptId()); |
| | | if (tDept!=null) |
| | | if (tDept != null) |
| | | inspectorVO.setDeptName(tDept.getDeptName()); |
| | | } |
| | | inspectorVO.setTotal(inspectors.size()); |
| | | List<TInspector> status1 = inspectors.stream().filter(e -> e.getClearStatus() == 1).collect(Collectors.toList()); |
| | | List<TInspector> status2 = inspectors.stream().filter(e -> e.getClearStatus() == 2).collect(Collectors.toList()); |
| | | List<TInspector> status4 = inspectors.stream().filter(e -> e.getStatus() == 1).collect(Collectors.toList()); |
| | | List<TInspector> status5 = inspectors.stream().filter(e -> e.getStatus() == 2).collect(Collectors.toList()); |
| | | List<TInspector> status6 = inspectors.stream().filter(e -> e.getStatus() == 3).collect(Collectors.toList()); |
| | | List<String> collect1 = listAll.stream().filter(e -> e.getPatrolInspector().equals(sysUser.getUserId() + "")).map(TTask::getId).collect(Collectors.toList()); |
| | | List<TInspector> collect = inspectors.stream().filter(e -> collect1.contains(e.getTaskId())).collect(Collectors.toList()); |
| | | inspectorVO.setTotal(collect.size()); |
| | | List<TInspector> status1 = collect.stream().filter(e -> e.getClearStatus() == 1).collect(Collectors.toList()); |
| | | List<TInspector> status2 = collect.stream().filter(e -> e.getClearStatus() == 2).collect(Collectors.toList()); |
| | | List<TInspector> status4 = collect.stream().filter(e -> e.getStatus() == 1).collect(Collectors.toList()); |
| | | List<TInspector> status5 = collect.stream().filter(e -> e.getStatus() == 2).collect(Collectors.toList()); |
| | | List<TInspector> status6 = collect.stream().filter(e -> e.getStatus() == 3).collect(Collectors.toList()); |
| | | |
| | | inspectorVO.setNum1(status1.size()); |
| | | inspectorVO.setNum2(status2.size()); |
| | | inspectorVO.setNum3(!status1.isEmpty()||!status2.isEmpty()?new BigDecimal(status1.size()).divide(new BigDecimal(status2.size()+status1.size()),2,RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)):BigDecimal.ZERO); |
| | | inspectorVO.setNum3(!status1.isEmpty() || !status2.isEmpty() ? new BigDecimal(status1.size()).divide(new BigDecimal(status2.size() + status1.size()), 2, RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)) : BigDecimal.ZERO); |
| | | inspectorVO.setNum4(status4.size()); |
| | | inspectorVO.setNum5(status5.size()); |
| | | inspectorVO.setNum6(status6.size()); |
| | | inspectorVO.setNum7(!status6.isEmpty()||!status5.isEmpty()?new BigDecimal(status6.size()).divide(new BigDecimal(status5.size()+status6.size()),2,RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)):new BigDecimal(0)); |
| | | inspectorVO.setNum7(!status6.isEmpty() || !status5.isEmpty() ? new BigDecimal(status6.size()).divide(new BigDecimal(status5.size() + status6.size()), 2, RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)) : new BigDecimal(0)); |
| | | res.add(inspectorVO); |
| | | } |
| | | //1.获取excel模板 |
| | |
| | | |
| | | @ApiOperation(value = "任务报表导出模板") |
| | | @PostMapping(value = "/exportExcel") |
| | | public void exportExcel(@RequestBody TaskDetailsQuery query,HttpServletResponse response) throws Exception{ |
| | | public void exportExcel(@RequestBody TaskDetailsQuery query, HttpServletResponse response) throws Exception { |
| | | List<TLocationType> locationTypeList = locationTypeService.list(); |
| | | List<TLocation> locations = locationService.list(); |
| | | LambdaQueryWrapper<TTask> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | |
| | | int num7 = 0; |
| | | for (TTask tTask : taskList) { |
| | | TTaskDetail tTaskDetail = taskDetails.stream().filter(e -> e.getTaskId().equals(tTask.getId()) && e.getClearStatus() != null).findFirst().orElse(null); |
| | | if (tTaskDetail!=null){ |
| | | if (tTaskDetail != null) { |
| | | switch (tTaskDetail.getClearStatus()) { |
| | | case 1: |
| | | num1++; |
| | |
| | | ExcelExportEntity excelExportEntity = new ExcelExportEntity("项目", "projectName", 15); |
| | | excelExportEntity.setMergeVertical(true); |
| | | entityList.add(excelExportEntity); |
| | | entityList.add(new ExcelExportEntity("片区名称", "areaName",15)); |
| | | entityList.add(new ExcelExportEntity("巡检保洁员数", "inspectorCount",15)); |
| | | entityList.add(new ExcelExportEntity("片区名称", "areaName", 15)); |
| | | entityList.add(new ExcelExportEntity("巡检保洁员数", "inspectorCount", 15)); |
| | | |
| | | // 动态添加作业类型分类 |
| | | List<String> list = new ArrayList<>(allTypeNames); |