From b1740c80205d9584738b1150f4122784c70bbe57 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 08 四月 2025 14:55:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java |   40 +++++++++++++++++++++++++---------------
 1 files changed, 25 insertions(+), 15 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 969cee4..c43ea3f 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
@@ -96,12 +96,19 @@
             if(StringUtils.isBlank(parent.getHkId())){
                 throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瀵逛笉璧凤紝鐖剁骇缁勭粐淇℃伅灏氭湭鍚屾涓嬪彂鎴愬姛~");
             }
-            if(Constants.equalsInteger(parent.getType(),Constants.ZERO)){
-                //濡傛灉鐖剁骇鏄浉鍏虫柟缁勭粐锛屼笅绾т笉鑳藉缓绔嬪唴閮ㄧ粍缁�
-                if(Constants.equalsInteger(company.getType(),Constants.ONE)){
-                    throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瀵逛笉璧凤紝鐩稿叧鏂圭粍缁囷紝涓嬬骇涓嶈兘寤虹珛鍐呴儴缁勭粐~");
+            if(Objects.nonNull(parent.getType())&&!Constants.equalsInteger(parent.getType(),-1)){
+                if(Constants.equalsInteger(company.getType(),parent.getType())){
+                    throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝缁勭粐淇℃伅閿欒");
                 }
+            }else if(Objects.isNull(parent.getType())){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝缁勭粐淇℃伅閿欒");
             }
+//            if(Constants.equalsInteger(parent.getType(),Constants.ZERO)){
+//                //濡傛灉鐖剁骇鏄浉鍏虫柟缁勭粐锛屼笅绾т笉鑳藉缓绔嬪唴閮ㄧ粍缁�
+//                if(Constants.equalsInteger(company.getType(),Constants.ONE)){
+//                    throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瀵逛笉璧凤紝鐩稿叧鏂圭粍缁囷紝涓嬬骇涓嶈兘寤虹珛鍐呴儴缁勭粐~");
+//                }
+//            }
             idPath = parent.getCompanyPath();
             company.setHkParentId(parent.getHkId());
             company.setCompanyPath(parent.getCompanyPath()+company.getId()+"/");
@@ -291,16 +298,18 @@
         if(model == null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "瀵逛笉璧凤紝缁勭粐淇℃伅涓嶅瓨鍦▇");
         }
-         if( Constants.equalsInteger(Constants.ONE,model.getType())&& Constants.equalsInteger(Constants.ZERO,company.getType())){
-        //濡傛灉鐢卞唴閮ㄧ粍缁囧垏鎹㈡垚鍐呴儴缁勭粐锛屾帓鏌ヤ笅绾х粍缁囨槸鍚︽湁鍐呴儴缁勭粐
-             if(companyJoinMapper.selectCount(new QueryWrapper<Company>().lambda()
-                     .eq(Company::getIsdeleted,Constants.ZERO )
-                     .eq(Company::getType,Constants.ONE )
-                     .ne(Company::getId,model.getId())
-                     .likeRight(Company::getCompanyPath,model.getCompanyPath())) >0){
-                 throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "瀵逛笉璧凤紝涓嬬骇閮ㄩ棬瀛樺湪鍐呴儴缁勭粐锛岃閮ㄩ棬涓嶆敮鎸佸垏鎹负鐩稿叧鏂圭粍缁囷紒~");
-             }
-        }
+
+//         if( Constants.equalsInteger(Constants.ONE,model.getType())&& Constants.equalsInteger(Constants.ZERO,company.getType())){
+//        //濡傛灉鐢卞唴閮ㄧ粍缁囧垏鎹㈡垚鍐呴儴缁勭粐锛屾帓鏌ヤ笅绾х粍缁囨槸鍚︽湁鍐呴儴缁勭粐
+//             if(companyJoinMapper.selectCount(new QueryWrapper<Company>().lambda()
+//                     .eq(Company::getIsdeleted,Constants.ZERO )
+//                     .eq(Company::getType,Constants.ONE )
+//                     .ne(Company::getId,model.getId())
+//                     .likeRight(Company::getCompanyPath,model.getCompanyPath())) >0){
+//                 throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "瀵逛笉璧凤紝涓嬬骇閮ㄩ棬瀛樺湪鍐呴儴缁勭粐锛岃閮ㄩ棬涓嶆敮鎸佸垏鎹负鐩稿叧鏂圭粍缁囷紒~");
+//             }
+//        }
+        company.setType(null);
         company.setEditDate(new Date());
         company.setEditor(user.getId());
         company.setHkStatus(Constants.ONE);
@@ -687,7 +696,8 @@
         queryWrapper.leftJoin(SystemUser.class,SystemUser::getId,Company::getEditor);
         queryWrapper.eq(Company::getIsdeleted,Constants.ZERO);
         if(Objects.nonNull(type) && ( Constants.equalsInteger(type,Constants.ONE) || Constants.equalsInteger(type,Constants.ZERO))){
-            queryWrapper.eq(type!=null,Company::getType,type);
+//            queryWrapper.eq(type!=null,Company::getType,type);
+            queryWrapper.apply("( type = "+type+" or type  = -1  )");
         }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)){

--
Gitblit v1.9.3