提交roll注册

This commit is contained in:
2026-07-29 15:01:28 +08:00
parent 450787062b
commit 44c841f9a0
3 changed files with 23 additions and 8 deletions
@@ -79,12 +79,17 @@ public class ApiRegisterServiceImpl implements ApiRegisterService {
if (!userService.checkPhoneUnique(ttUser)) return "注册失败," + "手机号'" + phoneNumber + "'已被注册!";
if (!userService.checkUserNameUnique(ttUser))
return "注册失败," + "用户名'" + ttUser.getUserName() + "'已存在!";
// 唯一索引对已逻辑删除的用户也生效,这里不区分 del_flag 再检查一次,避免插入时报唯一索引冲突
Long existCount = new LambdaQueryChainWrapper<>(userService.getBaseMapper())
.eq(TtUser::getUserName, phoneNumber)
.count();
if (existCount != null && existCount > 0) {
return "注册失败,手机号'" + phoneNumber + "'已被注册!";
}
ttUser.setNickName(nickName);
ttUser.setUserType("02");
List<TtUserAvatar> userAvatarList = new LambdaQueryChainWrapper<>(userAvatarService.getBaseMapper()).eq(TtUserAvatar::getIsDefault, "1").list();
if (!userAvatarList.isEmpty()) {
ttUser.setAvatar(RandomUtil.choice(userAvatarList).getAvatar());
} else ttUser.setAvatar("");
// 注册用户统一使用前端默认头像,不再随机分配头像
ttUser.setAvatar("");
ttUser.setPassword(SecurityUtils.encryptPassword(password));
String registerRedPacketStr = configService.selectConfigByKey("registerRedPacket");
BigDecimal registerRedPacket = new BigDecimal(registerRedPacketStr);
@@ -109,7 +114,13 @@ public class ApiRegisterServiceImpl implements ApiRegisterService {
// String validateCaptcha = apiSmsService.validateCaptcha(code.trim(), "ApiRegister_" + phoneNumber);
// if (!"success".equals(validateCaptcha)) return validateCaptcha;
ttUser.setUserId(userIdGenerator.generateUserId());
boolean regFlag = userService.save(ttUser);
boolean regFlag;
try {
regFlag = userService.save(ttUser);
} catch (org.springframework.dao.DuplicateKeyException e) {
// 并发注册或历史删除用户占用唯一索引时的兜底提示
return "注册失败,手机号'" + phoneNumber + "'已被注册!";
}
if (!regFlag) return "注册失败,请联系系统管理人员";
else {
if (BigDecimal.ZERO.compareTo(registerRedPacket) < 0) {