无关风月
6 小时以前 5e2d78f61bf7d1513d5d5c8cd55442133a6e898e
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);
@@ -381,6 +389,9 @@
        List<TLocation> locations = locationService.list();
        LambdaQueryWrapper<TTask> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>();
        if (StringUtils.hasLength(query.getStartTime()) && StringUtils.hasLength(query.getEndTime())) {
            String endTime = query.getEndTime();
            String replace = endTime.replace(" 00:00:00", " 23:59:59");
            query.setEndTime(replace);
            tTaskLambdaQueryWrapper.ge(TTask::getImplementTime, query.getStartTime());
            tTaskLambdaQueryWrapper.le(TTask::getImplementTime, query.getEndTime());
        }
@@ -511,11 +522,15 @@
        List<TLocation> locations = locationService.list();
        LambdaQueryWrapper<TTask> tTaskLambdaQueryWrapper = new LambdaQueryWrapper<>();
        if (StringUtils.hasLength(query.getStartTime()) && StringUtils.hasLength(query.getEndTime())) {
            String endTime = query.getEndTime();
            String replace = endTime.replace(" 00:00:00", " 23:59:59");
            query.setEndTime(replace);
            tTaskLambdaQueryWrapper.ge(TTask::getImplementTime, query.getStartTime());
            tTaskLambdaQueryWrapper.le(TTask::getImplementTime, query.getEndTime());
        }
        List<ProjectDeptDetailsVO> res = new ArrayList<>();
        List<TTask> tasks = taskCleanerService.list(tTaskLambdaQueryWrapper);
        List<TTaskDetail> taskDetails = taskDetailService.lambdaQuery().orderByDesc(BaseModel::getCreateTime).list();
        List<String> collect = tasks.stream().map(TTask::getProjectId).distinct().collect(Collectors.toList());
        List<TProjectDept> projectDepts = projectDeptService.list();
@@ -654,25 +669,25 @@
            entityList.add(excelExportEntity1);
        }
        ExcelExportEntity excelExportEntity8 = new ExcelExportEntity("整改完成任务", "total", 15);
        ExcelExportEntity excelExportEntity8 = new ExcelExportEntity("整改完成任务", "num7", 15);
        excelExportEntity8.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity8);
        ExcelExportEntity excelExportEntity7 = new ExcelExportEntity("超时未执行任务", "total", 15);
        ExcelExportEntity excelExportEntity7 = new ExcelExportEntity("超时未执行任务", "num6", 15);
        excelExportEntity7.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity7);
        ExcelExportEntity excelExportEntity6 = new ExcelExportEntity("审核通过任务", "total", 15);
        ExcelExportEntity excelExportEntity6 = new ExcelExportEntity("审核通过任务", "num5", 15);
        excelExportEntity6.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity6);
        ExcelExportEntity excelExportEntity5 = new ExcelExportEntity("待整改任务", "total", 15);
        ExcelExportEntity excelExportEntity5 = new ExcelExportEntity("待整改任务", "num4", 15);
        excelExportEntity5.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity5);
        ExcelExportEntity excelExportEntity4 = new ExcelExportEntity("未执行任务", "total", 15);
        ExcelExportEntity excelExportEntity4 = new ExcelExportEntity("未执行任务", "num3", 15);
        excelExportEntity4.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity4);
        ExcelExportEntity excelExportEntity3 = new ExcelExportEntity("清洁不合格", "total", 15);
        ExcelExportEntity excelExportEntity3 = new ExcelExportEntity("清洁不合格", "num2", 15);
        excelExportEntity3.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity3);
        ExcelExportEntity excelExportEntity2 = new ExcelExportEntity("清洁合格", "total", 15);
        ExcelExportEntity excelExportEntity2 = new ExcelExportEntity("清洁合格", "num1", 15);
        excelExportEntity2.setGroupName("任务情况汇总");
        entityList.add(excelExportEntity2);
        ExcelExportEntity excelExportEntity1 = new ExcelExportEntity("总数", "total", 15);
@@ -704,6 +719,7 @@
                map.put("num6", row.getNum6());
                map.put("num7", row.getNum7());
                mapList.add(map);
                break;
            }
        }
@@ -884,7 +900,7 @@
                    .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);
            patrolInspectorVO.setNum11(!taskList.isEmpty() ? new BigDecimal(status6.size()).divide(new BigDecimal(taskList.size()), 2, RoundingMode.HALF_DOWN).multiply(new BigDecimal(100)) : BigDecimal.ZERO);
            List<TLeave> collect1 = leaves.stream().filter(e -> e.getLeavePerson().equals(sysUser.getUserId() + "")).collect(Collectors.toList());
            patrolInspectorVO.setNum12(collect1.size());
            res.add(patrolInspectorVO);
@@ -905,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");
@@ -1095,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);
@@ -1145,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());
@@ -1194,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);
@@ -1244,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());