bug修改

This commit is contained in:
zhoupeng committed 2026-08-15 17:50:10 +08:00
1 parent 4e77f9f273
commit 855327ebab
3 files changed
+17 -59

No files matched your search

@@ -30,11 +30,11 @@ public interface MemberUserMapper extends BaseMapperX<MemberUserDO> {
/**
* 按微信号查其他用户(用于唯一性校验,排除指定会员)
*/
default MemberUserDO selectByWechatNumExcludeId(String wechatNum, Long excludeMemberId) {
return selectOne(new LambdaQueryWrapperX<MemberUserDO>()
.eq(MemberUserDO::getWechatNum, wechatNum)
.neIfPresent(MemberUserDO::getId, excludeMemberId));
}
// default MemberUserDO selectByWechatNumExcludeId(String wechatNum, Long excludeMemberId) {
// return selectOne(new LambdaQueryWrapperX<MemberUserDO>()
// .eq(MemberUserDO::getWechatNum, wechatNum)
// .neIfPresent(MemberUserDO::getId, excludeMemberId));
// }
/**
* 按微信号查其他用户(用于唯一性校验,排除本人)
@@ -33,11 +33,6 @@ public interface ComAuthService {
*/
ComAuthDO createWechatAuth(@Valid CreateWechatAuthReqVo dto);
/**
* 创建男性认证
*/
ComAuthDO createManAuth(@Valid CreateManAuthReqVo dto);
/**
* 创建女性认证
*/
@@ -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());
}
/**
* 创建女性认证