diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthServiceImpl.java index eb8fc6b..b045e76 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthServiceImpl.java @@ -22,6 +22,7 @@ import cn.iocoder.yudao.module.member.controller.app.comauth.vo.CreateWechatAuth import cn.iocoder.yudao.module.member.controller.app.comauth.vo.CreateWechatErrorAuthReqVo; import cn.iocoder.yudao.module.member.controller.app.comauth.vo.CreateWomanAuthReqVo; import cn.iocoder.yudao.module.member.dal.dataobject.comauth.ComAuthDO; +import cn.iocoder.yudao.module.member.dal.dataobject.config.MemberConfigDO; import cn.iocoder.yudao.module.member.dal.dataobject.recent.OperationDO; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; import cn.iocoder.yudao.module.member.dal.mysql.comauth.ComAuthMapper; @@ -31,6 +32,7 @@ import cn.iocoder.yudao.module.member.enums.MemberRecentOperateEnum; import cn.iocoder.yudao.module.member.enums.auth.MemberComAuthEnum; import cn.iocoder.yudao.module.member.enums.MemberErrorCode; import cn.iocoder.yudao.module.member.enums.auth.MemberComAuthStatusEnum; +import cn.iocoder.yudao.module.member.service.config.MemberConfigService; import cn.iocoder.yudao.module.member.service.user.MemberRecentTagService; import cn.iocoder.yudao.module.member.service.user.MemberUserService; import org.springframework.stereotype.Service; @@ -71,9 +73,11 @@ public class ComAuthServiceImpl implements ComAuthService { @Resource private MemberUserService memberUserService; @Resource - private ThirdFaceVerifyService thirdFaceVerifyService; - @Resource private MemberRecentTagService memberRecentTagService; + @Resource + private MemberConfigService memberConfigService; + @Resource + private ThirdFaceVerifyService thirdFaceVerifyService; @Resource private ChatApi chatApi; @@ -148,6 +152,7 @@ public class ComAuthServiceImpl implements ComAuthService { * 创建微信认证 */ @Override + @Transactional(rollbackFor = Exception.class) public ComAuthDO createWechatAuth(CreateWechatAuthReqVo dto) { ComAuthDO.WechatAuthExtra extraObj = new ComAuthDO.WechatAuthExtra(); @@ -162,7 +167,17 @@ public class ComAuthServiceImpl implements ComAuthService { saveObj.setAuthExtraJson(JSONUtil.toJsonStr(extraObj)); authMapper.insert(saveObj); - return authMapper.selectById(saveObj.getId()); + ComAuthDO detail = authMapper.selectById(saveObj.getId()); + + // 查询配置 + MemberConfigDO config = memberConfigService.getConfig(); + if (ObjectUtil.isNotEmpty(config) && ObjectUtil.isNotEmpty(config.getAutoWechatNumAuth())) { + if (config.getAutoWechatNumAuth()) { + getSelf().wechatVerify(detail); + } + } + + return detail; } /** @@ -298,13 +313,7 @@ public class ComAuthServiceImpl implements ComAuthService { if (ObjectUtil.equals(updateReqVO.getAuthStatus(), MemberComAuthStatusEnum.CHECK_PASS.getType())) { // 微信号认证 if (ObjectUtil.equals(detail.getBizType(), MemberComAuthEnum.WECHAT_NUMBER.getType())) { - ComAuthDO.WechatAuthExtra json = JSONUtil.toBean(updateReqVO.getAuthExtraJson(), ComAuthDO.WechatAuthExtra.class); - // 修改用户微信号信息 - MemberUserDO updateUserObj = new MemberUserDO(); - updateUserObj.setId(detail.getAuthMemberId()); - updateUserObj.setWechatNum(json.getWechatNumber()); - updateUserObj.setWechatQrCode(json.getWechatQrcode()); - memberUserMapper.updateById(updateUserObj); + getSelf().wechatVerify(detail); } // 微信号错误 if (ObjectUtil.equals(detail.getBizType(), MemberComAuthEnum.WECHAT_NUMBER_ERROR.getType())) { @@ -473,6 +482,19 @@ public class ComAuthServiceImpl implements ComAuthService { return totalSync; } + // 微信号认证 + @Transactional(rollbackFor = Exception.class) + public void wechatVerify(ComAuthDO auth) { + if (ObjectUtil.isEmpty(auth)) return; + ComAuthDO.WechatAuthExtra json = JSONUtil.toBean(auth.getAuthExtraJson(), ComAuthDO.WechatAuthExtra.class); + // 修改用户微信号信息 + MemberUserDO updateUserObj = new MemberUserDO(); + updateUserObj.setId(auth.getAuthMemberId()); + updateUserObj.setWechatNum(json.getWechatNumber()); + updateUserObj.setWechatQrCode(json.getWechatQrcode()); + memberUserMapper.updateById(updateUserObj); + } + private void disposeGetAuthPage(List list, ComAuthPageReqVO dto) { if (ObjectUtil.isEmpty(list)) return; List userIds = list.stream().map(ComAuthRespVO::getAuthMemberId).distinct().filter(ObjectUtil::isNotEmpty).collect(Collectors.toList());