Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java
@@ -460,4 +460,45 @@
      return true;
   }
   /**
    * 获取所有部门的信息
    * @return key:部门由名称组成的路径(/间隔),value对应最小层级的部门信息
    */
   @Override
   public Map<String, OrgDepartmentVO> getDeptAllTreeMap() {
      List<OrgDepartmentVO> orgDepartmentVOList = listAllLevelChildrenDeptByParentOid(null, null);
      Map<String, OrgDepartmentVO> stringOrgDepartmentVOMap = convertToMap(orgDepartmentVOList);
      return stringOrgDepartmentVOMap;
   }
   public Map<String, OrgDepartmentVO> convertToMap(List<OrgDepartmentVO> orgDepartmentVOList) {
      Map<String, OrgDepartmentVO> map = new HashMap<>();
      for (OrgDepartmentVO orgDepartmentVO : orgDepartmentVOList) {
         String key = buildKey(orgDepartmentVO, orgDepartmentVOList);
         map.put(key, orgDepartmentVO);
      }
      return map;
   }
   private String buildKey(OrgDepartmentVO orgDepartmentVO, List<OrgDepartmentVO> orgDepartmentVOList) {
      StringBuilder keyBuilder = new StringBuilder();
      OrgDepartmentVO current = orgDepartmentVO;
      while (current != null) {
         keyBuilder.insert(0, current.getName());
         keyBuilder.insert(0, "/");
         current = getParentDepartment(current.getPkFatherDepartment(), orgDepartmentVOList);
      }
      keyBuilder.deleteCharAt(0);
      return keyBuilder.toString();
   }
   private OrgDepartmentVO getParentDepartment(String pkFatherDepartment, List<OrgDepartmentVO> orgDepartmentVOList) {
      for (OrgDepartmentVO orgDepartmentVO : orgDepartmentVOList) {
         if (pkFatherDepartment != null && pkFatherDepartment.equals(orgDepartmentVO.getOid())) {
            return orgDepartmentVO;
         }
      }
      return null;
   }
}