From d352184d3364e379da38e56d6aa53c1f53f517ca Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期日, 04 一月 2026 15:06:59 +0800
Subject: [PATCH] 最新版本541200007最新版本541200007

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java |  123 +++++++++++++++++++++++------------------
 1 files changed, 69 insertions(+), 54 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index df2d4f3..596f94d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -182,18 +182,19 @@
         Member insert = initAddMemberModel(member,loginUserInfo);
         //娴峰悍浜哄憳鏂板涓氬姟
         try {
-//             if(dealHkUserBiz(insert)){
-            memberMapper.insert(insert);
-            //鍒涘缓绯荤粺鐧婚檰璐﹀彿锛堥粯璁ゆ棤浠讳綍瑙掕壊锛�
-//                if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
-            //濡傛灉鏄唴閮ㄧ粍缁囦汉鍛橈紝鏂板绯荤粺鐧婚檰璐﹀彿
-            systemUserMapper.insert(createSystemUser(insert,systemDictDataBiz));
-            //澶勭悊鍩硅鏈夋晥鏈熶笟鍔�
-            dealTrainTIme(member,0,loginUserInfo);
+             if(dealHkUserBiz(insert)){
+                insert.setHkStatus(Constants.ONE);
+                memberMapper.insert(insert);
+                //鍒涘缓绯荤粺鐧婚檰璐﹀彿锛堥粯璁ゆ棤浠讳綍瑙掕壊锛�
+    //                if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
+                //濡傛灉鏄唴閮ㄧ粍缁囦汉鍛橈紝鏂板绯荤粺鐧婚檰璐﹀彿
+                systemUserMapper.insert(createSystemUser(insert,systemDictDataBiz));
+                //澶勭悊鍩硅鏈夋晥鏈熶笟鍔�
+                dealTrainTIme(member,0,loginUserInfo);
 //                }
-//            }else{
-//                throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅鍚屾瀹夐槻骞冲彴澶辫触锛岃绋嶅悗閲嶈瘯锛�");
-//            }
+            }else{
+                throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅鍚屾瀹夐槻骞冲彴澶辫触锛岃绋嶅悗閲嶈瘯锛�");
+            }
         }catch (BusinessException e){
             //濡傛灉鍙戠敓寮傚父锛屽垹闄ゅ凡缁忓垱寤虹殑浜哄憳淇℃伅
             deleteHkUserBiz(new String[]{insert.getHkId()});
@@ -257,7 +258,7 @@
         insert.setCanVisit(Constants.formatIntegerNum(member.getCanVisit()));//榛樿涓嶅彲璁块棶
         insert.setAuthStatus(Constants.ZERO);
         insert.setName(member.getName());
-        insert.setHkId(UUID.randomUUID().toString().replace("-",""));
+//        insert.setHkId(UUID.randomUUID().toString().replace("-",""));
         insert.setHkStatus(Constants.ZERO);
         insert.setSex(Constants.getSexByCardNo( member.getIdcardNo()));//鏍规嵁韬唤璇佸彿鑾峰彇鎬у埆
         insert.setJobDate(member.getJobDate());
@@ -401,7 +402,7 @@
                 .eq(Member::getIsdeleted,Constants.ZERO) ) >0){
             throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙枫��"+member.getPhone()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅");
         }
-        Company company = member.getCompany()!=null ?member.getCompany(): companyMapper.selectById(member.getCompanyId());
+        Company company = member.getCompanyModel()!=null ?member.getCompanyModel(): companyMapper.selectById(member.getCompanyId());
         if(company == null || Constants.equalsInteger(company.getIsdeleted(),Constants.ONE)){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇ョ粍缁囦俊鎭凡琚垹闄わ紒");
         }
@@ -505,7 +506,7 @@
         }
         if(member.getCompanyId()!=null && !Constants.equalsInteger(member.getCompanyId(),model.getCompanyId())){
             //濡傛灉缁勭粐鍙戠敓鍙樺寲
-            Company company = member.getCompany()!=null ?member.getCompany(): companyMapper.selectById(member.getCompanyId());
+            Company company = member.getCompanyModel()!=null ?member.getCompanyModel(): companyMapper.selectById(member.getCompanyId());
             if(company == null || Constants.equalsInteger(company.getIsdeleted(),Constants.ONE)){
                 throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇ョ粍缁囦俊鎭凡琚垹闄わ紝璇峰埛鏂伴〉闈㈤噸璇曪紒");
             }
@@ -968,44 +969,44 @@
         updateMember.setEditor(loginUserInfo!=null?loginUserInfo.getId():null);
         updateMember.setEditDate(new Date());
         //娴峰悍浜哄憳鏂板涓氬姟
-//        if(dealHkUserForUpdateBiz(updateMember)){
-        updateMember.setHkId(null);
-        updateMember.setAuthStatus(Constants.ZERO);
-        memberMapper.update(null,new UpdateWrapper<Member>().lambda()
-                .set(Member::getStartTime,null)
-                .set(Member::getEndTime,null)
-                .set(Member::getRoleId,null)
-                .set(StringUtils.isNotBlank(updateMember.getPhone()),Member::getPhone,updateMember.getPhone())
-                .set(StringUtils.isNotBlank(updateMember.getName()),Member::getName,updateMember.getName())
-                .set(Member::getEditDate,updateMember.getEditDate())
-                .set(Member::getEditor,updateMember.getEditor())
-                .set(StringUtils.isNotBlank(updateMember.getName()),Member::getPinyin,Constants.getChinesePingyin(updateMember.getName()))
-                .set(StringUtils.isNotBlank(updateMember.getIdcardNo()),Member::getIdcardNo,updateMember.getIdcardNo())
-                .set(StringUtils.isNotBlank(updateMember.getIdcardDecode()),Member::getIdcardDecode,updateMember.getIdcardDecode())
-                .set( Member::getAuthStatus,Constants.ZERO)
-                .set(updateMember.getHkStatus()!=null,Member::getHkStatus,updateMember.getHkStatus())
-                .set(updateMember.getSex()!=null,Member::getSex,updateMember.getSex())
-                .set(updateMember.getCanVisit()!=null,Member::getCanVisit,updateMember.getCanVisit())
-                .set(updateMember.getFaceStatus()!=null,Member::getFaceStatus,updateMember.getFaceStatus())
-                .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate())
-                .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate())
-                .set(StringUtils.isNotBlank(updateMember.getRemark()),Member::getRemark,updateMember.getRemark())
-                .set(StringUtils.isNotBlank(updateMember.getFaceImg()),Member::getFaceImg,updateMember.getFaceImg())
-                .set(updateMember.getFaceId()!=null,Member::getFaceId,updateMember.getFaceId())
-                .set(updateMember.getCompanyId()!=null,Member::getCompanyId,updateMember.getCompanyId())
-                .set(Member::getCode,updateMember.getCode())
-//                    .set(StringUtils.isNotBlank(updateMember.getCode()),Member::getCode,updateMember.getCode())
-                .set( updateMember.getPositionId()!=null,Member::getPositionId,updateMember.getPositionId())
-                .set( updateMember.getIsDangyuan()!=null,Member::getIsDangyuan,updateMember.getIsDangyuan())
-                .set( updateMember.getJobDate()!=null,Member::getJobDate,updateMember.getJobDate())
-                .eq(Member::getId,updateMember.getId()));
-        dealTrainTIme(updateMember,1,loginUserInfo);
-        cancelAllMemberEmpower(updateMember,memberRoleMapper,empowerMapper);
-        //璁板綍鎿嶄綔鏃ュ織
-        saveUserActionBiz(updateMember,loginUserInfo,Constants.UserActionType.EDIT,userActionJoinMapper,null);
-//        }else{
-//            throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅鍚屾瀹夐槻骞冲彴澶辫触锛岃绋嶅悗閲嶈瘯锛�");
-//        }
+        if(dealHkUserForUpdateBiz(updateMember)){
+            updateMember.setHkStatus(Constants.ONE);
+            updateMember.setHkId(null);
+            updateMember.setAuthStatus(Constants.ZERO);
+            memberMapper.update(null,new UpdateWrapper<Member>().lambda()
+                    .set(Member::getStartTime,null)
+                    .set(Member::getEndTime,null)
+                    .set(Member::getRoleId,null)
+                    .set(StringUtils.isNotBlank(updateMember.getPhone()),Member::getPhone,updateMember.getPhone())
+                    .set(StringUtils.isNotBlank(updateMember.getName()),Member::getName,updateMember.getName())
+                    .set(Member::getEditDate,updateMember.getEditDate())
+                    .set(Member::getEditor,updateMember.getEditor())
+                    .set(StringUtils.isNotBlank(updateMember.getName()),Member::getPinyin,Constants.getChinesePingyin(updateMember.getName()))
+                    .set(StringUtils.isNotBlank(updateMember.getIdcardNo()),Member::getIdcardNo,updateMember.getIdcardNo())
+                    .set(StringUtils.isNotBlank(updateMember.getIdcardDecode()),Member::getIdcardDecode,updateMember.getIdcardDecode())
+                    .set( Member::getAuthStatus,Constants.ZERO)
+                    .set(updateMember.getHkStatus()!=null,Member::getHkStatus,updateMember.getHkStatus())
+                    .set(updateMember.getSex()!=null,Member::getSex,updateMember.getSex())
+                    .set(updateMember.getCanVisit()!=null,Member::getCanVisit,updateMember.getCanVisit())
+                    .set(updateMember.getFaceStatus()!=null,Member::getFaceStatus,updateMember.getFaceStatus())
+                    .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate())
+                    .set(StringUtils.isNotBlank(updateMember.getRemark()),Member::getRemark,updateMember.getRemark())
+                    .set(StringUtils.isNotBlank(updateMember.getFaceImg()),Member::getFaceImg,updateMember.getFaceImg())
+                    .set(updateMember.getFaceId()!=null,Member::getFaceId,updateMember.getFaceId())
+                    .set(updateMember.getCompanyId()!=null,Member::getCompanyId,updateMember.getCompanyId())
+                    .set(Member::getCode,updateMember.getCode())
+    //                    .set(StringUtils.isNotBlank(updateMember.getCode()),Member::getCode,updateMember.getCode())
+                    .set( updateMember.getPositionId()!=null,Member::getPositionId,updateMember.getPositionId())
+                    .set( updateMember.getIsDangyuan()!=null,Member::getIsDangyuan,updateMember.getIsDangyuan())
+                    .set( updateMember.getJobDate()!=null,Member::getJobDate,updateMember.getJobDate())
+                    .eq(Member::getId,updateMember.getId()));
+            dealTrainTIme(updateMember,1,loginUserInfo);
+            cancelAllMemberEmpower(updateMember,memberRoleMapper,empowerMapper);
+            //璁板綍鎿嶄綔鏃ュ織
+            saveUserActionBiz(updateMember,loginUserInfo,Constants.UserActionType.EDIT,userActionJoinMapper,null);
+        }else{
+            throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅鍚屾瀹夐槻骞冲彴澶辫触锛岃绋嶅悗閲嶈瘯锛�");
+        }
     }
 
     private void dealTrainTIme(Member updateMember, int i,LoginUserInfo loginUserInfo) {
@@ -2497,6 +2498,7 @@
                     .eq( Member::getType,Constants.TWO )
                     .last("limit 1"));
         }
+        boolean addOrEdit = false;
         if(member == null){
             //鏂板浜哄憳
             if(data.getDeleter()!=null){
@@ -2505,6 +2507,7 @@
             }
             member = getAddOrUpdateModelFromJDY(data,true);
             this.create(member);
+            addOrEdit=true;
         }else{
             //鏇存柊浜哄憳
             if(data.getDeleter()!=null){
@@ -2514,8 +2517,16 @@
                 //鏇存柊浜哄憳淇℃伅
                 Member updateMember =getAddOrUpdateModelFromJDY(data,false);
                 updateMember.setId(member.getId());
+                addOrEdit=true;
                 this.updateById(updateMember);
             }
+        }
+        if(addOrEdit && Constants.equalsInteger(member.getHeadStatus(),Constants.ONE) && member.getCompanyModel()!=null){
+            //濡傛灉鏄儴闂ㄤ富绠�
+            Company updateCom = new Company();
+            updateCom.setHeadId(member.getId());
+            updateCom.setId(member.getCompanyModel().getId());
+            companyMapper.updateById(updateCom);//鏇存柊閮ㄩ棬涓荤浜哄憳
         }
     }
 
@@ -2534,6 +2545,9 @@
         }
         if(StringUtils.isNotBlank(data.getCan_visit())){
             member.setCanVisit(StringUtils.equals(data.getCan_visit(),"鍙嫓璁�")?1:0);
+        }
+        if(StringUtils.isNotBlank(data.getMaster())){
+            member.setHeadStatus(StringUtils.equals(data.getMaster(),"鏄�")?1:0);
         }
         member.setErpId(data.getUsername());
         if(data.getDepartment()!=null){
@@ -2570,7 +2584,7 @@
         if(depart!=null){
             member.setCompanyId(depart.getId());
         }
-        member.setCompany(depart);
+        member.setCompanyModel(depart);
         return  member;
     }
 
@@ -2608,7 +2622,8 @@
 
     @Override
     public String syncJdyUserInfo() {
-        DeptApiClient deptApiClient = new DeptApiClient(HttpConstant.API_KEY, HttpConstant.HOST);
+        DeptApiClient deptApiClient = new DeptApiClient(systemDictDataBiz.queryByCode(Constants.JDY_CONFIG, Constants.API_KEY).getCode()
+                ,systemDictDataBiz.queryByCode(Constants.JDY_CONFIG, Constants.JDY_API_HOST).getCode());
         try {
             Map<String, Object> result =  deptApiClient.deptMemberList(1,true,deptApiClient.getDefaultVersion());
             if(result!=null && result.get("users")!=null ){

--
Gitblit v1.9.3