Browse Source

Merge remote-tracking branch 'origin/V0.0.2' into V0.0.2

jingyuanchao 2 years ago
parent
commit
2a88406bbf

+ 2 - 1
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysDeptController.java

@@ -6,6 +6,7 @@ import com.xunmei.common.core.constant.Constants;
 import com.xunmei.common.core.domain.OrgTreeReq;
 import com.xunmei.common.core.domain.OrgTreeResp;
 import com.xunmei.common.core.domain.R;
+import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.utils.StringUtils;
 import com.xunmei.common.core.web.controller.BaseController;
 import com.xunmei.common.core.web.domain.AjaxResult;
@@ -155,7 +156,7 @@ public class SysDeptController extends BaseController {
      */
     @GetMapping("/deptTree/hangshe")
     public AjaxResult hangsheDeptTree() {
-        return success(deptService.selectHangsheTreeList());
+        return success(deptService.selectTreeByOrgType(OrgTypeEnum.HANG_SHE));
     }
 
     @PostMapping("/deptTree/business")

+ 6 - 2
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/ISysDeptService.java

@@ -1,6 +1,7 @@
 package com.xunmei.system.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.system.api.Eto.SysOrgTreeRequestDto;
 import com.xunmei.system.api.domain.SysDept;
 import com.xunmei.system.api.domain.SysOrg;
@@ -34,21 +35,24 @@ public interface ISysDeptService extends IService<SysDept> {
 
     /**
      * 返回行社树
+     *
      * @return
      */
-    List<SysOrgVO> selectHangsheTreeList();
+    List<SysOrgVO> selectTreeByOrgType(OrgTypeEnum orgType);
 
     List<SysOrgVO> selectBusinessTreeList(SysOrgTreeRequestDto request);
 
     /**
      * 获取缓存的行社及行社上级机构
+     *
      * @param path
      * @return
      */
-    List<SysOrgVO> getHangsheTreeCache(String path);
+    List<SysOrgVO> getWholeTreeInCache(String path, OrgTypeEnum orgType);
 
     /**
      * 获取指定机构树,包含到顶级节点的路径及下级所有机构
+     *
      * @param orgId
      * @return
      */

+ 12 - 5
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysDeptServiceImpl.java

@@ -140,10 +140,15 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
         return generateTree(orgs, sysOrg);
     }
 
+    /**
+     * 获取指定机构类型及其上级机构
+     * @param orgType
+     * @return
+     */
     @Override
-    public List<SysOrgVO> selectHangsheTreeList() {
+    public List<SysOrgVO> selectTreeByOrgType(OrgTypeEnum orgType) {
         SysOrg sysOrg = getLoginUserOrg();
-        List<SysOrgVO> hangshelist = getHangsheTreeCache(sysOrg.getPath());
+        List<SysOrgVO> hangshelist = getWholeTreeInCache(sysOrg.getPath(),orgType);
 
         return generateTree(hangshelist, sysOrg);
     }
@@ -221,9 +226,9 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
      * @return
      */
     @Override
-    public List<SysOrgVO> getHangsheTreeCache(String path) {
+    public List<SysOrgVO> getWholeTreeInCache(String path, OrgTypeEnum orgType) {
         List<SysOrgVO> cacheList = getOrgCache();
-        List<SysOrgVO> hangshelist = cacheList.stream().filter(c -> ObjectUtil.equal(c.getType(), OrgTypeEnum.HANG_SHE.getCode())
+        List<SysOrgVO> hangshelist = cacheList.stream().filter(c -> ObjectUtil.equal(c.getType(), orgType.getCode())
                 && ObjectUtil.isNotEmpty(c.getPath()) && c.getPath().startsWith(path))
                 .collect(Collectors.toList());
         Set<Long> hangsheSet = hangshelist.stream().map(o -> o.getId()).collect(Collectors.toSet());
@@ -252,7 +257,7 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
      */
     @Override
     public List<SysOrgVO> hangsheWholePathTree(Long orgId) {
-        List<SysOrgVO> orgs = getHangsheTreeCache("");
+        List<SysOrgVO> orgs = getWholeTreeInCache("", OrgTypeEnum.HANG_SHE);
         Map<Long, SysOrgVO> orgMap = orgs.stream().collect(Collectors.toMap(o -> o.getId(), o -> o));
         if (!orgMap.containsKey(orgId)) {
             return new ArrayList<>();
@@ -268,6 +273,8 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
         return orgVOS;
     }
 
+
+
     @Override
     public List<SysOrgVO> orgWholePathTree(SysOrgTreeRequestDto request) {
         SysOrgVO sysOrg = null;

+ 5 - 1
soc-modules/soc-modules-system/src/main/resources/mapper/system/SysOrgMapper.xml

@@ -28,6 +28,8 @@
         <result property="source" column="source"/>
         <result property="createBy" column="create_by"/>
         <result property="updateBy" column="update_by"/>
+        <result property="treeShowParentId" column="tree_show_parent_id"/>
+        <result property="treeShowPath" column="tree_show_path"/>
     </resultMap>
 
     <sql id="selectSysOrgVo">
@@ -54,7 +56,9 @@
                source,
                short_name,
                remark,
-               path
+               path,
+               tree_show_parent_id,
+               tree_show_path
         from sys_org
     </sql>