智慧保安后台管理-外网
Administrator
2021-11-26 9c6a2288eec3ecfd42528d5d35b7d88fe897a475
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -234,10 +234,41 @@
    * 懒加载获取部门树形结构,不包含顶级管理员公安局
    */
   @Override
   public List<DeptVO> securityLazyTree(String jurisdiction, Long parentId) {
   public List<DeptVO> securityLazyTree(String jurisdiction, Long parentId,Long deptId) {
      //如果传了deptId
      if (null!=deptId){
         //递归查询
//         recursionDeptInfo(deptVOS, list);
         //tree 组装并返回
         return ForestNodeMerger.merge(baseMapper.securityDeptUnitList(null,deptId));
      }
      return ForestNodeMerger.merge(baseMapper.securityLazyTree(jurisdiction, parentId));
   }
   /**
    * 递归查询子级菜单
    * @param deptVOS
    * @param list
    * @return
    */
   private List<DeptVO> recursionDeptInfo(List<DeptVO> deptVOS,List<DeptVO> list) {
      //如果有子级
      if (list.size()>0){
         deptVOS.addAll(list);
         //遍历子级
         for (int i = 0; i < list.size(); i++) {
            //查看是否有子级
            List<DeptVO> childList = baseMapper.securityDeptUnitList(list.get(i).getId(), null);
            //如果有
            if (childList.size()>0){
               //递归
               recursionDeptInfo(deptVOS,childList);
            }
         }
      }
      return deptVOS;
   }
   /**
    * 懒加载获取部门树形结构(包含用户数据)