From eb49564ab17c6695d8928d5a63a57c58b3cfd79c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 11 十二月 2024 18:21:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
index ea21e28..e7aa1ca 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -356,7 +356,6 @@
     @Override
     public List<Company> findList(Company company) {
         MPJLambdaWrapper<Company> queryWrapper = new MPJLambdaWrapper<>();
-        company.setIsdeleted(Constants.ZERO);
         if (company.getId() != null) {
             queryWrapper.eq(Company::getId, company.getId());
         }
@@ -450,12 +449,16 @@
             queryWrapper.ge(Company::getFsDate, Utils.Date.getStart(company.getFsDate()));
             queryWrapper.le(Company::getFsDate, Utils.Date.getEnd(company.getFsDate()));
         }
+        if (company.getQueryHiddenDanger() != null && Constants.equalsInteger(company.getQueryHiddenDanger(),Constants.ONE)) {
+            queryWrapper.apply(" t.id in ( select hdp.COMPANY_ID from hidden_danger_param hdp where hdp.ISDELETED = 0 and hdp.STATUS = 0 and hdp.TYPE = 0  ) ");
+        }
         queryWrapper.orderByDesc(Company::getCreateDate);
         queryWrapper.leftJoin(Company.class,Company::getId,Company::getParentId);
         queryWrapper.select(" t.* ")
                 .select("(select count(m.id) from member m where m.COMPANY_ID=t.id and m.ISDELETED=0) as countNum") ;
         queryWrapper.select("t1.name",Company::getParentName);
         queryWrapper.select("t1.company_path",Company::getParentCompanyPath);
+        queryWrapper.apply(" t.isdeleted = 0 ") ;
         queryWrapper.eq(Objects.nonNull(company.getStatus()),Company::getStatus,Constants.ZERO);
         queryWrapper.like(StringUtils.isNotBlank(company.getName()),Company::getName,company.getName());
         queryWrapper.like(StringUtils.isNotBlank(company.getParentName()),"c.name",company.getParentName());
@@ -678,7 +681,14 @@
         queryWrapper.leftJoin(Member.class,Member::getId,Company::getHeadId);
         queryWrapper.leftJoin(SystemUser.class,SystemUser::getId,Company::getEditor);
         queryWrapper.eq(Company::getIsdeleted,Constants.ZERO);
-        queryWrapper.eq(type!=null,Company::getType,type);
+        if(Objects.nonNull(type) && ( Constants.equalsInteger(type,Constants.ONE) || Constants.equalsInteger(type,Constants.ZERO))){
+            queryWrapper.eq(type!=null,Company::getType,type);
+        }else if(Objects.nonNull(type) &&  Constants.equalsInteger(type,Constants.TWO)){
+            String companySpecialId = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SPECIAL_COMPANY_ID).getCode();
+            if(StringUtils.isNotBlank(companySpecialId)){
+                queryWrapper.apply(" (find_in_set('"+companySpecialId+"',REPLACE(t.company_path,'/',','))  or t.parent_id  is null  )  ");
+            }
+        }
         queryWrapper.orderByAsc(true,"t.sortnum");
         List<Company> companyList = companyJoinMapper.selectJoinList(Company.class,queryWrapper);
         //閰嶇疆缁勫憳浜哄憳绫诲瀷鏉ユ簮鏂瑰紡 0鑷缓 1ERP

--
Gitblit v1.9.3