lyhzzz 1 年之前
父节点
当前提交
40e7b8a722

+ 2 - 0
src/main/java/com/fdkankan/fusion/service/ITmDepartmentService.java

@@ -38,4 +38,6 @@ public interface ITmDepartmentService extends IService<TmDepartment> {
     List<String> getByZdDeptIds();
     List<String> getByZdDeptIds();
 
 
     List<TmDepartment> getLikeName(String organizerDeptName);
     List<TmDepartment> getLikeName(String organizerDeptName);
+
+    List<String> getSonByDeptIdAndDeptIds(List<String> deptIds, String deptId);
 }
 }

+ 4 - 9
src/main/java/com/fdkankan/fusion/service/impl/TmCameraServiceImpl.java

@@ -184,18 +184,13 @@ public class TmCameraServiceImpl extends ServiceImpl<ITmCameraMapper, TmCamera>
         if (StringUtils.isNotBlank(snCode)) {
         if (StringUtils.isNotBlank(snCode)) {
             wrapper.like(TmCamera::getCameraSn,snCode);
             wrapper.like(TmCamera::getCameraSn,snCode);
         }
         }
+
         List<String> deptIds = tmDepartmentService.getDeptIds();
         List<String> deptIds = tmDepartmentService.getDeptIds();
-        List<String> deptIds2 = new ArrayList<>();
         if(StringUtils.isNotBlank(deptId)){
         if(StringUtils.isNotBlank(deptId)){
-            List<TmDepartment> sonByDeptId = tmDepartmentService.getSonByDeptId(deptId);
-            deptIds2 = sonByDeptId.stream().map(TmDepartment::getId).collect(Collectors.toList());
-            deptIds2.add(deptId);
-        }
-        if(!deptIds2.isEmpty()){
-            List<String> finalDeptIds = deptIds2;
-            List<String> collect = deptIds.stream().filter(e -> finalDeptIds.contains(e)).collect(Collectors.toList());
-            wrapper.in(TmCamera::getDeptId,collect);
+            deptIds = tmDepartmentService.getSonByDeptIdAndDeptIds(deptIds,deptId);
         }
         }
+        wrapper.in(TmCamera::getDeptId,deptIds);
+
         wrapper.orderByDesc(TmCamera::getCreateTime);
         wrapper.orderByDesc(TmCamera::getCreateTime);
         Page<TmCamera> page = this.page(new Page<>(pageNum, pageSize), wrapper);
         Page<TmCamera> page = this.page(new Page<>(pageNum, pageSize), wrapper);
         if(page.getRecords().size()<=0){
         if(page.getRecords().size()<=0){

+ 22 - 4
src/main/java/com/fdkankan/fusion/service/impl/TmDepartmentServiceImpl.java

@@ -8,10 +8,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.fdkankan.fusion.common.ResultCode;
 import com.fdkankan.fusion.common.ResultCode;
 import com.fdkankan.fusion.common.enums.IdPreEnum;
 import com.fdkankan.fusion.common.enums.IdPreEnum;
-import com.fdkankan.fusion.entity.TmDepartment;
-import com.fdkankan.fusion.entity.TmRole;
-import com.fdkankan.fusion.entity.TmUser;
-import com.fdkankan.fusion.entity.TmUserRole;
+import com.fdkankan.fusion.entity.*;
 import com.fdkankan.fusion.exception.BusinessException;
 import com.fdkankan.fusion.exception.BusinessException;
 import com.fdkankan.fusion.mapper.ITmDepartmentMapper;
 import com.fdkankan.fusion.mapper.ITmDepartmentMapper;
 import com.fdkankan.fusion.service.ITmDepartmentService;
 import com.fdkankan.fusion.service.ITmDepartmentService;
@@ -269,4 +266,25 @@ public class TmDepartmentServiceImpl extends ServiceImpl<ITmDepartmentMapper, Tm
         wrapper.like(TmDepartment::getName,organizerDeptName);
         wrapper.like(TmDepartment::getName,organizerDeptName);
         return this.list(wrapper);
         return this.list(wrapper);
     }
     }
+
+    @Override
+    public List<String> getSonByDeptIdAndDeptIds(List<String> deptIds, String deptId) {
+        List<String> deptIds2 = new ArrayList<>();
+        if(StringUtils.isNotBlank(deptId)){
+            List<TmDepartment> sonByDeptId = this.getSonByDeptId(deptId);
+            deptIds2 = sonByDeptId.stream().map(TmDepartment::getId).collect(Collectors.toList());
+            deptIds2.add(deptId);
+        }
+        if(!deptIds2.isEmpty()){
+            List<String> collect = deptIds.stream().filter(deptIds2::contains).collect(Collectors.toList());
+            if(collect.size()<=0){
+                collect.add("empty-dept");
+            }
+            return collect;
+        }
+        if(deptIds.size()<=0){
+            deptIds.add("empty-dept");
+        }
+        return deptIds;
+    }
 }
 }

+ 6 - 1
src/main/java/com/fdkankan/fusion/service/impl/TmProjectServiceImpl.java

@@ -82,7 +82,12 @@ public class TmProjectServiceImpl extends ServiceImpl<ITmProjectMapper, TmProjec
                return PageInfo.PageInfo(new Page<>(tmProject.getPageNum(),tmProject.getPageSize()));
                return PageInfo.PageInfo(new Page<>(tmProject.getPageNum(),tmProject.getPageSize()));
            }
            }
             List<String> collect = list.stream().map(TmDepartment::getId).collect(Collectors.toList());
             List<String> collect = list.stream().map(TmDepartment::getId).collect(Collectors.toList());
-            deptIds = deptIds.stream().filter(collect::contains).collect(Collectors.toList());
+            HashSet<String> allDeptIds = new HashSet<>(collect);
+            for (String deptId : collect) {
+                List<TmDepartment> sonByDeptId = tmDepartmentService.getSonByDeptId(deptId);
+                allDeptIds.addAll( sonByDeptId.stream().map(TmDepartment::getId).collect(Collectors.toList()));
+            }
+            deptIds = deptIds.stream().filter(allDeptIds::contains).collect(Collectors.toList());
         }
         }
 
 
         wrapper.in(TmProject::getDeptId,deptIds);
         wrapper.in(TmProject::getDeptId,deptIds);

+ 4 - 5
src/main/java/com/fdkankan/fusion/service/impl/TmUserServiceImpl.java

@@ -282,17 +282,16 @@ public class TmUserServiceImpl extends ServiceImpl<ITmUserMapper, TmUser> implem
         if(StringUtils.isNotBlank(nickName)){
         if(StringUtils.isNotBlank(nickName)){
             wrapper.like(TmUser::getNickName,nickName);
             wrapper.like(TmUser::getNickName,nickName);
         }
         }
-        if(StringUtils.isNotBlank(deptId)){
-            wrapper.eq(TmUser::getDeptId,deptId);
-        }
+
         if(status != null){
         if(status != null){
             wrapper.eq(TmUser::getStatus,status);
             wrapper.eq(TmUser::getStatus,status);
         }
         }
         List<String> deptIds = tmDepartmentService.getDeptIds();
         List<String> deptIds = tmDepartmentService.getDeptIds();
-        if(deptIds.size() <=0){
-            deptIds.add("not-dept");
+        if(StringUtils.isNotBlank(deptId)){
+            deptIds = tmDepartmentService.getSonByDeptIdAndDeptIds(deptIds,deptId);
         }
         }
         wrapper.in(TmUser::getDeptId,deptIds);
         wrapper.in(TmUser::getDeptId,deptIds);
+
         wrapper.orderByDesc(TmUser::getCreateTime);
         wrapper.orderByDesc(TmUser::getCreateTime);
         Page<TmUser> page = this.page(new Page<>(pageNum, pageSize), wrapper);
         Page<TmUser> page = this.page(new Page<>(pageNum, pageSize), wrapper);
         Set<String> deptIdSet = page.getRecords().stream().map(TmUser::getDeptId).collect(Collectors.toSet());
         Set<String> deptIdSet = page.getRecords().stream().map(TmUser::getDeptId).collect(Collectors.toSet());