From bd6229ebd9cb543a22944ecb1142fad92b675dce Mon Sep 17 00:00:00 2001 From: rk <94314517@qq.com> Date: 星期一, 13 十月 2025 14:26:25 +0800 Subject: [PATCH] bug 修复 --- server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java | 125 ++++++++++++++++++++++++++++++++--------- 1 files changed, 97 insertions(+), 28 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..fd591be 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; @@ -10,12 +11,14 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; +import com.doumee.dao.business.CategoryMapper; import com.doumee.dao.business.IdentityInfoMapper; import com.doumee.dao.business.MemberMapper; import com.doumee.dao.business.model.IdentityInfo; import com.doumee.dao.business.model.Member; import com.doumee.dao.dto.AuditDTO; import com.doumee.dao.system.model.SystemUser; +import com.doumee.service.business.AliSmsService; import com.doumee.service.business.IdentityInfoService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -23,6 +26,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; @@ -49,15 +53,19 @@ @Autowired private MemberMapper memberMapper; @Autowired + private AliSmsService aliSmsService; + @Autowired private SystemDictDataBiz systemDictDataBiz; + @Autowired + private CategoryMapper categoryMapper; @Override @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 +79,36 @@ ){ 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); + IdentityInfo model = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda() + .eq(IdentityInfo::getMemberId,identityInfo.getMemberId()) + .eq(IdentityInfo::getType,identityInfo.getType()) + .last("limit 1") + ); + if(Objects.nonNull(model)){ + identityInfo.setId(model.getId()); + this.updateById(identityInfo); + return identityInfo.getId(); + } - 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())); + //鏌ヨ鐢ㄦ埛鏄惁宸插瓨鍦ㄥ綋鍓嶈韩浠� + 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())); return identityInfo.getId(); } @@ -141,6 +162,7 @@ if(!Constants.equalsInteger(model.getAuditStatus(),Constants.THREE)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠鐘舵�佹棤娉曡繘琛岃鎿嶄綔"); } + identityInfo.setAuditRemark(""); identityInfo.setUpdateTime(new Date()); identityInfo.setAuditStatus(Constants.ONE); identityInfoMapper.updateById(identityInfo); @@ -193,24 +215,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 +433,9 @@ } + @Autowired + private SendWxMessage sendWxMessage; + @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void audit(AuditDTO auditDTO){ @@ -403,6 +454,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() ) @@ -416,11 +474,22 @@ memberMapper.update(new UpdateWrapper<Member>().lambda() .set(Member::getUpdateUser,user.getId()) .set(Member::getUpdateTime,date) + .set(Constants.equalsInteger(auditDTO.getAuditStatus(),Constants.ZERO),Member::getAutoReceiveStatus,Constants.ONE) .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity, auditDTO.getAuditStatus() ) .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity , auditDTO.getAuditStatus() ) .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity , auditDTO.getAuditStatus() ) .eq(Member::getId,identityInfo.getMemberId()) ); + //鍙戦�佸井淇¢�氱煡 + if(StringUtils.isNotBlank(member.getOpenid())){ + sendWxMessage.identityInfoMessage(member.getOpenid(),identityInfo); + } + + //鐭俊閫氱煡 + aliSmsService.businessSendSms(Constants.smsContent.authentication.getKey(), + member.getTelephone(),null,null, + identityInfo,categoryMapper); + } } -- Gitblit v1.9.3