From 0cfbaf9a439dc75824c52a6e58b6849064afbc80 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 19 七月 2025 10:32:38 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java |  112 +++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 83 insertions(+), 29 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
index 34ae3da..fb5d5b4 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.config.wx.SendWxMessage;
 import com.doumee.core.annotation.excel.ExcelColumn;
 import com.doumee.core.constants.Constants;
 import com.doumee.core.constants.ResponseStatus;
@@ -23,6 +24,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import io.swagger.annotations.ApiModelProperty;
+import me.chanjar.weixin.common.error.WxErrorException;
 import nonapi.io.github.classgraph.json.Id;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
@@ -55,9 +57,9 @@
     @Transactional(rollbackFor = {BusinessException.class,Exception.class})
     public Integer create(IdentityInfo identityInfo) {
         if(Objects.isNull(identityInfo)
-        || Objects.isNull(identityInfo.getType())
-        || Objects.isNull(identityInfo.getMemberId())
-        || Objects.isNull(identityInfo.getAuthType())
+            || Objects.isNull(identityInfo.getType())
+            || Objects.isNull(identityInfo.getMemberId())
+            || Objects.isNull(identityInfo.getAuthType())
                 || StringUtils.isEmpty(identityInfo.getLinkName())
                 || StringUtils.isEmpty(identityInfo.getTelephone())
                 || StringUtils.isEmpty(identityInfo.getLocation())
@@ -71,23 +73,28 @@
         ){
             throw new BusinessException(ResponseStatus.BAD_REQUEST);
         }
-        //鏌ヨ鐢ㄦ埛鏄惁宸插瓨鍦ㄥ綋鍓嶈韩浠�
-        if(identityInfoMapper.selectCount(new QueryWrapper<IdentityInfo>().lambda().eq(IdentityInfo::getDeleted,Constants.ZERO).eq(IdentityInfo::getMemberId,identityInfo.getMemberId())
-                .eq(IdentityInfo::getType,identityInfo.getType()))>Constants.ZERO){
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"宸插瓨鍦ㄨ韬唤璇峰埛鏂版煡鐪嬶紒");
-        };
-        identityInfo.setDeleted(Constants.ZERO);
-        identityInfo.setCreateTime(new Date());
-        identityInfo.setUpdateTime(identityInfo.getCreateTime());
-        identityInfo.setAuditStatus(Constants.ONE);
-        identityInfoMapper.insert(identityInfo);
+        if(Objects.nonNull(identityInfo.getId())){
+            this.updateById(identityInfo);
+        }else{
+            //鏌ヨ鐢ㄦ埛鏄惁宸插瓨鍦ㄥ綋鍓嶈韩浠�
+            if(identityInfoMapper.selectCount(new QueryWrapper<IdentityInfo>().lambda()
+                    .eq(IdentityInfo::getDeleted,Constants.ZERO)
+                    .eq(IdentityInfo::getMemberId,identityInfo.getMemberId())
+                    .eq(IdentityInfo::getType,identityInfo.getType()))>Constants.ZERO){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"宸插瓨鍦ㄨ韬唤璇峰埛鏂版煡鐪嬶紒");
+            };
+            identityInfo.setDeleted(Constants.ZERO);
+            identityInfo.setCreateTime(new Date());
+            identityInfo.setUpdateTime(identityInfo.getCreateTime());
+            identityInfo.setAuditStatus(Constants.ONE);
+            identityInfoMapper.insert(identityInfo);
 
-        memberMapper.update(new UpdateWrapper<Member>().lambda()
-                .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity,Constants.ONE)
-                .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity,Constants.ONE)
-                .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity,Constants.ONE)
-                .eq(Member::getId,identityInfo.getMemberId()));
-
+            memberMapper.update(new UpdateWrapper<Member>().lambda()
+                    .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity,Constants.ONE)
+                    .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity,Constants.ONE)
+                    .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity,Constants.ONE)
+                    .eq(Member::getId,identityInfo.getMemberId()));
+        }
         return identityInfo.getId();
     }
 
@@ -193,24 +200,50 @@
 
     @Override
     public IdentityInfo findById(Integer id) {
-        IdentityInfo identityInfo = identityInfoMapper.selectById(id);
-        //缂哄け鍓嶇紑
-        identityInfo.setPrefix("");
-        return identityInfo;
+        IdentityInfo model = identityInfoMapper.selectById(id);
+        String path  = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
+                +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode();
+        model.setImgList(new ArrayList<>());
+        if(StringUtils.isNotBlank(model.getImg1())){
+            model.getImgList().add(path + model.getImg1());
+        }
+        if(StringUtils.isNotBlank(model.getImg2())){
+            model.getImgList().add(path + model.getImg2());
+        }
+        if(StringUtils.isNotBlank(model.getImg3())) {
+            model.getImgList().add(path + model.getImg3());
+        }
+        if(StringUtils.isNotBlank(model.getImg4())){
+            model.getImgList().add(path + model.getImg4());
+        }
+        return model;
     }
 
 
     @Override
     public IdentityInfo findByMemberType(Integer type,Integer memberId){
-        IdentityInfo identityInfo = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
+        IdentityInfo model = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda()
                 .eq(IdentityInfo::getMemberId,memberId).eq(IdentityInfo::getType,type));
-        if(Objects.nonNull(identityInfo)){
-            //缂哄け鍓嶇紑
-            identityInfo.setPrefix("");
+        if(Objects.nonNull(model)){
+            String path  = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
+                    +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode();
+            model.setImgList(new ArrayList<>());
+            if(StringUtils.isNotBlank(model.getImg1())){
+                model.getImgList().add(path + model.getImg1());
+            }
+            if(StringUtils.isNotBlank(model.getImg2())){
+                model.getImgList().add(path + model.getImg2());
+            }
+            if(StringUtils.isNotBlank(model.getImg3())) {
+                model.getImgList().add(path + model.getImg3());
+            }
+            if(StringUtils.isNotBlank(model.getImg4())){
+                model.getImgList().add(path + model.getImg4());
+            }
         }else{
-            identityInfo = new IdentityInfo();
+            model = new IdentityInfo();
         }
-        return identityInfo;
+        return model;
     }
 
 
@@ -385,6 +418,9 @@
     }
 
 
+    @Autowired
+    private SendWxMessage sendWxMessage;
+
     @Override
     @Transactional(rollbackFor = {BusinessException.class,Exception.class})
     public void audit(AuditDTO auditDTO){
@@ -403,6 +439,13 @@
         if(!Constants.equalsInteger(identityInfo.getAuditStatus(),Constants.ONE)){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"宸插鎵癸紝璇峰嬁閲嶅鎿嶄綔");
         }
+        Member member = memberMapper.selectById(identityInfo.getMemberId());
+        if(Objects.isNull(member)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        identityInfo.setAuditStatus(auditDTO.getAuditStatus());
+        identityInfo.setAuditRemark(auditDTO.getAuditRemark());
+        identityInfo.setAuditTime(new Date());
         Date date = new Date();
         identityInfoMapper.update(new UpdateWrapper<IdentityInfo>().lambda()
                 .set(IdentityInfo::getAuditStatus, auditDTO.getAuditStatus() )
@@ -422,5 +465,16 @@
                 .eq(Member::getId,identityInfo.getMemberId())
         );
 
+        try{
+            //鍙戦�佸井淇¢�氱煡
+            if(StringUtils.isNotBlank(member.getOpenid())){
+                sendWxMessage.identityInfoMessage(member.getOpenid(),identityInfo);
+            }
+        }catch (WxErrorException wxErrorException){
+
+        }
+
+
+
     }
 }

--
Gitblit v1.9.3