From 6605af34249a6fec0b3967698dcc53ae366d781c Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期一, 14 七月 2025 16:56:49 +0800 Subject: [PATCH] 保洁巡检本周代码 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ReportController.java | 135 +++++++++++++++++++++++++++++++++++--------- 1 files changed, 107 insertions(+), 28 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ReportController.java index 3c70789..014a8f3 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ReportController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/ReportController.java @@ -135,7 +135,7 @@ if (patrolInspectorIds.isEmpty()) { return R.ok(new PageInfo<>()); } - if (!query.getPatrolInspectorIds().isEmpty()) { + if (query.getPatrolInspectorIds()!=null&&!query.getPatrolInspectorIds().isEmpty()) { // 取交集 patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); } @@ -234,13 +234,21 @@ public void taskProgressExport(@RequestBody TaskProgressQuery query) { List<SysUser> sysUsers = sysUserService.selectAllList(); if (StringUtils.hasLength(query.getDeptName())) { - List<String> projectIds = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list() + List<TProjectDept> list = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list(); + List<String> projectIds = 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()); + for (TProjectDept projectDept : list) { + if (projectDept.getParentId().equals("0")){ + List<TProjectDept> list1 = projectDeptService.lambdaQuery().eq(TProjectDept::getParentId, projectDept.getId()).list(); + List<String> collect = list1.stream().map(TProjectDept::getId).collect(Collectors.toList()); + projectIds.addAll(collect); + } + } projectIds.addAll(deptIds); if (projectIds.isEmpty()) { - projectIds.add("-1"); + projectIds.add("0"); } // 用户ids List<Long> collect = sysUsers.stream().filter(e -> e.getDeptType() == 1 && projectIds.contains(e.getDeptId())).map(SysUser::getUserId) @@ -249,7 +257,7 @@ .collect(Collectors.toList()); collect.addAll(collect1); if (collect.isEmpty()) { - collect.add(0L); +projectIds.add("0"); } query.setPatrolInspectorIds(collect); @@ -913,10 +921,18 @@ tLeaveLambdaQueryWrapper.eq(TLeave::getAuditStatus, 2); List<TLeave> leaves = leaveService.list(tLeaveLambdaQueryWrapper); if (StringUtils.hasLength(query.getDeptName())) { - List<String> projectIds = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list() + List<TProjectDept> list = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list(); + List<String> projectIds = 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()); + for (TProjectDept projectDept : list) { + if (projectDept.getParentId().equals("0")){ + List<TProjectDept> list1 = projectDeptService.lambdaQuery().eq(TProjectDept::getParentId, projectDept.getId()).list(); + List<String> collect = list1.stream().map(TProjectDept::getId).collect(Collectors.toList()); + projectIds.addAll(collect); + } + } projectIds.addAll(deptIds); if (projectIds.isEmpty()) { projectIds.add("-1"); @@ -1103,37 +1119,71 @@ 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() + List<TProjectDept> list = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list(); + List<String> projectIds = 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()); + for (TProjectDept projectDept : list) { + if (projectDept.getParentId().equals("0")){ + List<TProjectDept> list1 = projectDeptService.lambdaQuery().eq(TProjectDept::getParentId, projectDept.getId()).list(); + List<String> collect = list1.stream().map(TProjectDept::getId).collect(Collectors.toList()); + projectIds.addAll(collect); + } + } projectIds.addAll(deptIds); if (projectIds.isEmpty()) { - return R.ok(new ArrayList<>()); + projectIds.add("0"); } + // 用户ids + List<Long> collect = sysUsers.stream().filter(e -> e.getDeptType() == 1 && projectIds.contains(e.getDeptId())).map(SysUser::getUserId) + .collect(Collectors.toList()); + List<Long> collect1 = sysUsers.stream().filter(e -> e.getDeptType() == 2 && deptIds.contains(e.getDeptId())).map(SysUser::getUserId) + .collect(Collectors.toList()); + collect.addAll(collect1); + if (collect.isEmpty()) { + collect.add(-1L); + } + query.setPatrolInspectorIds(collect); + 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()) { - return R.ok(new ArrayList<>()); + patrolInspectorIds.add(-1L); + } else { + patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); + query.setPatrolInspectorIds(patrolInspectorIds); } - query.setPatrolInspectorIds(patrolInspectorIds); } } - if (StringUtils.hasLength(query.getPhonenumber())) { + if (StringUtils.hasLength(query.getNickName())){ List<Long> patrolInspectorIds = sysUsers.stream().filter(sysUser -> - sysUser.getPhonenumber().equals(query.getPhonenumber()) + sysUser.getNickName().contains(query.getNickName()) ).map(SysUser::getUserId).collect(Collectors.toList()); - if (!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()) { - return R.ok(new ArrayList<>()); + if (patrolInspectorIds.isEmpty()){ + patrolInspectorIds.add(-1L); } + query.setPatrolInspectorIds(patrolInspectorIds); + } + 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()){ + // 取交集 + patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); + } + if (patrolInspectorIds.isEmpty()){ + patrolInspectorIds.add(-1L); + } + query.setPatrolInspectorIds(patrolInspectorIds); } LambdaQueryWrapper<TInspector> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); tTaskLambdaQueryWrapper.eq(TInspector::getAuditStatus, 1); @@ -1153,8 +1203,11 @@ } List<InspectorVO> res = new ArrayList<>(); List<TInspector> inspectors = inspectorService.list(tTaskLambdaQueryWrapper); - sysUsers = sysUsers.stream().filter(e -> e.getUserId() != 1).collect(Collectors.toList()); - for (SysUser sysUser : sysUsers) { + List<String> users = inspectors.stream().map(TInspector::getCommitPerson).collect(Collectors.toList()); + if (users.isEmpty()){ + users.add("0"); + } + sysUsers = sysUsers.stream().filter(e -> e.getUserId() != 1&&users.contains(e.getUserId()+"")).collect(Collectors.toList()); for (SysUser sysUser : sysUsers) { InspectorVO inspectorVO = new InspectorVO(); inspectorVO.setNickName(sysUser.getNickName()); inspectorVO.setPhonenumber(sysUser.getPhonenumber()); @@ -1202,37 +1255,59 @@ 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() + List<TProjectDept> list = projectDeptService.lambdaQuery().like(TProjectDept::getProjectName, query.getDeptName()).list(); + List<String> projectIds = 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()); + for (TProjectDept projectDept : list) { + if (projectDept.getParentId().equals("0")){ + List<TProjectDept> list1 = projectDeptService.lambdaQuery().eq(TProjectDept::getParentId, projectDept.getId()).list(); + List<String> collect = list1.stream().map(TProjectDept::getId).collect(Collectors.toList()); + projectIds.addAll(collect); + } + } projectIds.addAll(deptIds); if (projectIds.isEmpty()) { - projectIds.add("-1"); + projectIds.add("0"); } + // 用户ids + List<Long> collect = sysUsers.stream().filter(e -> e.getDeptType() == 1 && projectIds.contains(e.getDeptId())).map(SysUser::getUserId) + .collect(Collectors.toList()); + List<Long> collect1 = sysUsers.stream().filter(e -> e.getDeptType() == 2 && deptIds.contains(e.getDeptId())).map(SysUser::getUserId) + .collect(Collectors.toList()); + collect.addAll(collect1); + if (collect.isEmpty()) { + collect.add(-1L); + } + query.setPatrolInspectorIds(collect); + 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()) { - patrolInspectorIds.add(0L); + patrolInspectorIds.add(-1L); + } else { + patrolInspectorIds = patrolInspectorIds.stream().filter(query.getPatrolInspectorIds()::contains).collect(Collectors.toList()); + query.setPatrolInspectorIds(patrolInspectorIds); } - 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()) + sysUser.getPhonenumber().contains(query.getPhonenumber()) ).map(SysUser::getUserId).collect(Collectors.toList()); - if (!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()) { - patrolInspectorIds.add(0L); + if (patrolInspectorIds.isEmpty()){ + patrolInspectorIds.add(-1L); } + query.setPatrolInspectorIds(patrolInspectorIds); + } LambdaQueryWrapper<TInspector> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>(); tTaskLambdaQueryWrapper.eq(TInspector::getAuditStatus, 1); @@ -1252,7 +1327,11 @@ } List<InspectorVO> res = new ArrayList<>(); List<TInspector> inspectors = inspectorService.list(tTaskLambdaQueryWrapper); - sysUsers = sysUsers.stream().filter(e -> e.getUserId() != 1).collect(Collectors.toList()); + List<String> users = inspectors.stream().map(TInspector::getCommitPerson).collect(Collectors.toList()); + if (users.isEmpty()){ + users.add("0"); + } + sysUsers = sysUsers.stream().filter(e -> e.getUserId() != 1&&users.contains(e.getUserId()+"")).collect(Collectors.toList()); for (SysUser sysUser : sysUsers) { InspectorVO inspectorVO = new InspectorVO(); inspectorVO.setNickName(sysUser.getNickName()); -- Gitblit v1.7.1