From 1fc63b79364ab28f62b1ae1eefbcb53cfa853260 Mon Sep 17 00:00:00 2001 From: "shuo.wang" Date: Mon, 18 Nov 2024 15:48:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=EF=BC=8C=E7=99=BB=E5=BD=95=E6=89=8B=E6=9C=BA=E5=8F=B7=E5=92=8C?= =?UTF-8?q?=E7=BA=BF=E7=B4=A2=E6=89=8B=E6=9C=BA=E5=8F=B7=E4=B8=80=E7=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/cool/store/dao/LineInfoDAO.java | 10 ++++++++++ .../store/service/impl/WechatMiniAppServiceImpl.java | 10 +++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/LineInfoDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/LineInfoDAO.java index fb71dc31b..efc8f1fb7 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/LineInfoDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/LineInfoDAO.java @@ -23,6 +23,7 @@ import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; +import tk.mybatis.mapper.entity.Example; import javax.annotation.Resource; import java.util.List; @@ -51,6 +52,15 @@ public class LineInfoDAO { } return null; } + public Boolean getLineInfoByMobile(String mobile) { + Example example = new Example(LineInfoDO.class); + example.createCriteria().andEqualTo("mobile", mobile); + List lineInfoDOS = lineInfoMapper.selectByExample(example); + if(CollectionUtils.isNotEmpty(lineInfoDOS)) { + return true; + } + return false; + } public Integer updateLineInfo(LineInfoDO param){ if(Objects.isNull(param.getId())){ diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java index dd4a6809c..2f7c82f1e 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java @@ -20,9 +20,11 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.text.MessageFormat; +import java.util.Date; import java.util.Objects; /** @@ -179,6 +181,7 @@ public class WechatMiniAppServiceImpl implements WechatMiniAppService { } @Override + @Transactional(rollbackFor = Exception.class) public String updateUserPhoneNumber(MobileUpdateRequest request, PartnerUserInfoVO userInfoVO) { String newMobile = ""; HyPartnerUserInfoDO oldUserInfo = hyPartnerUserInfoDAO.selectByMobile(userInfoVO.getMobile()); @@ -195,11 +198,16 @@ public class WechatMiniAppServiceImpl implements WechatMiniAppService { return newMobile; } HyPartnerUserInfoDO newUserInfo = hyPartnerUserInfoDAO.selectByMobile(newMobile); - if (newUserInfo != null) { + Boolean lineInfoByMobile = lineInfoDAO.getLineInfoByMobile(newMobile); + if (newUserInfo != null&& lineInfoByMobile) { throw new ServiceException(ErrorCodeEnum.NEW_MOBILE_HAS_EXIST); } + LineInfoDO lineInfoDO = lineInfoDAO.getByPartnerId(userInfoVO.getPartnerId()); + lineInfoDO.setMobile(newMobile); + lineInfoDO.setUpdateTime(new Date()); oldUserInfo.setMobile(newMobile); hyPartnerUserInfoDAO.updateByPrimaryKeySelective(oldUserInfo); + lineInfoDAO.updateLineInfo(lineInfoDO); //修改意向申请信息中的手机号 // hyPartnerBaseInfoDAO.updateByPartnerId(null, newMobile, oldUserInfo.getPartnerId()); }