guoshilong
2024-02-28 7f85ff7e882ed4d3d39c3261bc996af9cf656aa1
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -54,6 +54,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -408,11 +409,34 @@
   @Override
   public List<DeptUserTreeNode> getDeptAndUserTree(DeptUserTreeNode treeNode) {
      // 查询数据
      Map<String, DeptUserTreeNode> deptMap = baseMapper.getDeptMap(treeNode);
//      Map<String, DeptUserTreeNode> deptMap = baseMapper.getDeptMap(treeNode);
      Map<String, DeptUserTreeNode> deptMap = baseMapper.getDeptMapAndChildren(treeNode);
      Map<String, DeptUserTreeNode> userMap = baseMapper.getUserMap(treeNode);
      deptMap.putAll(userMap);
      List<DeptUserTreeNode> deptAndUserNodeTree = NodeTreeUtil.getDeptAndUserNodeTree(deptMap);
      // 处理并返回
      return deptAndUserNodeTree;
   }
   @Override
   public Object getDeptAndUserTreeLazyTree(DeptUserTreeNode treeNode) {
      //传一个部门id,查询出该部门的下一级部门
      Map<String, DeptUserTreeNode> deptMap = baseMapper.getDeptMapAndChild(treeNode);
      String deptIds = "";
      int count = 0;
      for (String key:deptMap.keySet()){
         count++;
         deptIds += key;
         if (count<deptMap.size()){
            deptIds +=",";
         }
      }
      Map<String, DeptUserTreeNode> userMap = baseMapper.getUserMapByDeptIds(deptIds);
      deptMap.putAll(userMap);
      List<DeptUserTreeNode> deptAndUserNodeTree = NodeTreeUtil.getDeptAndUserNodeTree(deptMap);
      return deptAndUserNodeTree;
   }
@@ -460,4 +484,5 @@
   public Dept getDeptByDeptIds(String deptId) {
      return baseMapper.getDeptByDeptIds(deptId);
   }
}