From 39739e34af928aae204c55db7974213c9b938c5a Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 21 二月 2024 18:33:14 +0800
Subject: [PATCH] 整理

---
 server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java |   32 +++++++++++++++++++++++---------
 1 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
index 84656aa..a827a1b 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.config.DataSyncConfig;
 import com.doumee.core.annotation.excel.ExcelColumn;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
@@ -56,6 +57,8 @@
 
     @Autowired
     private CompanyMapper companyMapper;
+    @Autowired
+    private DataSyncConfig dataSyncConfig;
     @Autowired
     private SystemDictDataBiz systemDictDataBiz;
 
@@ -441,23 +444,29 @@
     @Override
     public List<CompanyDTO> findCompanyTreePage(Integer type) {
         //閰嶇疆缁勫憳浜哄憳绫诲瀷鏉ユ簮鏂瑰紡 0鑷缓 1ERP
-        String origin = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.ORG_USER_ORIGIN).getCode();
         LambdaQueryWrapper<Company> wrapper = new LambdaQueryWrapper<>();
 
         wrapper.eq(Company::getIsdeleted,Constants.ZERO)
                 .eq(Constants.equalsInteger(type,Constants.ONE),Company::getType,type);
         List<Company> companies = companyMapper.selectList(wrapper);
-        return getCompanyTree( companies, null,origin);
+        return getCompanyTree( companies, null);
     }
 
 
-    private List<CompanyDTO> getCompanyTree(List<Company> companies, String parentId,String origin){
+    private List<CompanyDTO> getCompanyTree(List<Company> companies, String parentId){
         if (CollectionUtils.isEmpty(companies)){
             return null;
         }
-        List<Company> collect = companies.stream()
-                                        .filter(s -> (StringUtils.equals(origin, Constants.ONE+"")?StringUtils.equals(s.getErpParentId(), parentId):StringUtils.equals(s.getParentId()+"", parentId)))
-                                        .collect(Collectors.toList());
+        int  origin =Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin());
+        List<Company> collect = null;
+        if(origin == DataSyncConfig.origin.erp){
+            companies.stream().filter(s -> ( StringUtils.equals(s.getErpParentId()+"", parentId))).collect(Collectors.toList());
+        }else if(origin == DataSyncConfig.origin.hk){
+            companies.stream().filter(s -> ( StringUtils.equals(s.getHkParentId()+"", parentId))).collect(Collectors.toList());
+        }else{
+            companies.stream().filter(s -> ( StringUtils.equals(s.getParentId()+"", parentId))).collect(Collectors.toList());
+        }
+
         if (CollectionUtils.isEmpty(companies)){
             return null;
         }
@@ -466,7 +475,13 @@
             Company company = collect.get(i);
             CompanyDTO companyDTO = new CompanyDTO();
             BeanUtils.copyProperties(company,companyDTO);
-            companyDTO.setCompanyDTOList(getCompanyTree(companies,StringUtils.equals(origin, Constants.ONE+"")?company.getErpId(): company.getId()+"",origin));
+            String pId = company.getId()+"";
+            if(origin == 1){
+                pId = company.getErpId();
+            }else if(origin == 2){
+                pId = company.getHkParentId();
+            }
+            companyDTO.setCompanyDTOList(getCompanyTree(companies,pId));
             companyDTOList.add(companyDTO);
         }
         return companyDTOList;
@@ -510,8 +525,7 @@
         queryWrapper.eq(Company::getType,type);
         List<Company> companyList = companyJoinMapper.selectJoinList(Company.class,queryWrapper);
         //閰嶇疆缁勫憳浜哄憳绫诲瀷鏉ユ簮鏂瑰紡 0鑷缓 1ERP
-        String origin = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.ORG_USER_ORIGIN).getCode();
-        CompanyTree treeBuild = new CompanyTree(companyList,Integer.valueOf(origin));
+        CompanyTree treeBuild = new CompanyTree(companyList, dataSyncConfig.getOrgUserDataOrigin());
         companyList = treeBuild.buildTree();
         return companyList;
     }

--
Gitblit v1.9.3