From 855327ebab888a87e7b1f77243e9d8984fe948f6 Mon Sep 17 00:00:00 2001 From: zhoupeng <812968653@qq.com> Date: Sat, 15 Aug 2026 17:50:10 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dal/mysql/user/MemberUserMapper.java | 10 +-- .../service/comauth/ComAuthService.java | 5 -- .../service/comauth/ComAuthServiceImpl.java | 61 ++++--------------- 3 files changed, 17 insertions(+), 59 deletions(-) diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberUserMapper.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberUserMapper.java index fa4105d..e20eb66 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberUserMapper.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberUserMapper.java @@ -30,11 +30,11 @@ public interface MemberUserMapper extends BaseMapperX { /** * 按微信号查其他用户(用于唯一性校验,排除指定会员) */ - default MemberUserDO selectByWechatNumExcludeId(String wechatNum, Long excludeMemberId) { - return selectOne(new LambdaQueryWrapperX() - .eq(MemberUserDO::getWechatNum, wechatNum) - .neIfPresent(MemberUserDO::getId, excludeMemberId)); - } +// default MemberUserDO selectByWechatNumExcludeId(String wechatNum, Long excludeMemberId) { +// return selectOne(new LambdaQueryWrapperX() +// .eq(MemberUserDO::getWechatNum, wechatNum) +// .neIfPresent(MemberUserDO::getId, excludeMemberId)); +// } /** * 按微信号查其他用户(用于唯一性校验,排除本人) diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthService.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthService.java index 9ddf11b..8cf46b2 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthService.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/comauth/ComAuthService.java @@ -33,11 +33,6 @@ public interface ComAuthService { */ ComAuthDO createWechatAuth(@Valid CreateWechatAuthReqVo dto); - /** - * 创建男性认证 - */ - ComAuthDO createManAuth(@Valid CreateManAuthReqVo dto); - /** * 创建女性认证 */ 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 ece879f..a56d8a7 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 @@ -150,7 +150,7 @@ public class ComAuthServiceImpl implements ComAuthService { } /** - * 创建微信认证:校验微信号未被他人占用后自动审核通过并落库,不再走人工审核。 + * 修改微信信息:校验微信号未被他人占用后直接更新会员资料,不创建认证记录。 */ @Override @Transactional(rollbackFor = Exception.class) @@ -161,62 +161,25 @@ public class ComAuthServiceImpl implements ComAuthService { } dto.setWechatNumber(wechatNumber); - // 查重:其他用户已占用则直接拒绝 MemberUserDO occupied = memberUserMapper.selectByWechatNumExcludeId(wechatNumber, dto.getMemberId()); if (ObjectUtil.isNotEmpty(occupied)) { throw exception(MemberErrorCode.EMPTY, "请勿填写重复的微信号"); } - ComAuthDO.WechatAuthExtra extraObj = new ComAuthDO.WechatAuthExtra(); - extraObj.setWechatNumber(wechatNumber); - extraObj.setWechatQrcode(dto.getWechatQrcode()); + MemberUserDO updateUser = new MemberUserDO() + .setId(dto.getMemberId()) + .setWechatNum(wechatNumber) + .setWechatQrCode(dto.getWechatQrcode()); + memberUserMapper.updateById(updateUser); - ComAuthDO saveObj = new ComAuthDO(); - saveObj.setAuthMemberId(dto.getMemberId()); - saveObj.setBizType(MemberComAuthEnum.WECHAT_NUMBER.getType()); - // 无重复则自动通过,不再进入人工审核队列 - saveObj.setAuthStatus(MemberComAuthStatusEnum.CHECK_PASS.getType()); - saveObj.setAuthTime(LocalDateTime.now()); - saveObj.setAuthPic(dto.getWechatQrcode()); - saveObj.setAuthExtraJson(JSONUtil.toJsonStr(extraObj)); - authMapper.insert(saveObj); - - ComAuthDO detail = authMapper.selectById(saveObj.getId()); - getSelf().wechatVerify(detail); - return detail; + ComAuthDO result = new ComAuthDO(); + result.setAuthMemberId(dto.getMemberId()); + result.setBizType(MemberComAuthEnum.WECHAT_NUMBER.getType()); + result.setAuthStatus(MemberComAuthStatusEnum.CHECK_PASS.getType()); + result.setAuthTime(LocalDateTime.now()); + return result; } - /** - * 创建男性认证 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public ComAuthDO createManAuth(CreateManAuthReqVo dto) { - ComAuthDO startAuth = isStartAuth(dto.getMemberId()); - // 进行中的旧单直接作废:复用旧 certifyId 常导致 SDK 不弹刷脸页(客户端未提交) - if (ObjectUtil.isNotEmpty(startAuth)) { - authMapper.deleteById(startAuth.getId()); - } - // 新增 - ComAuthDO saveObj = new ComAuthDO(); - saveObj.setAuthMemberId(dto.getMemberId()); - saveObj.setBizType(MemberComAuthEnum.MAN_MEMBER_TRUE.getType()); - saveObj.setAuthStatus(MemberComAuthStatusEnum.WAIT_AUTH.getType()); - saveObj.setAuthPic(dto.getAuthPic()); - authMapper.insert(saveObj); - // 额外信息 - ComAuthDO.ManInfoAuthExtra memberInfoAuthExtra = new ComAuthDO.ManInfoAuthExtra(); - memberInfoAuthExtra.setMetaInfoJson(dto.getMetaInfoJson()); - // 更新auth - String authExtraJson = JSONUtil.toJsonStr(memberInfoAuthExtra); - ComAuthDO updateObj = new ComAuthDO(); - updateObj.setId(saveObj.getId()); - updateObj.setAuthExtraJson(authExtraJson); - authMapper.updateById(updateObj); - // 发起认证:必须传客户端原始 MetaInfo,不能传整段 authExtraJson - getSelf().startAuth(saveObj, dto.getMetaInfoJson()); - return authMapper.selectById(saveObj.getId()); - } /** * 创建女性认证