提交roll注册
This commit is contained in:
@@ -81,7 +81,7 @@
|
|||||||
<div class="main_center" v-if="status == 'zc'">
|
<div class="main_center" v-if="status == 'zc'">
|
||||||
<div class="main_top">注册</div>
|
<div class="main_top">注册</div>
|
||||||
<div class="main_input">
|
<div class="main_input">
|
||||||
<input type="text" v-model="registerform.phoneNumber" placeholder="请输入账号" autocomplete="off" />
|
<input type="text" v-model="registerform.phoneNumber" placeholder="请输入手机号" autocomplete="off" />
|
||||||
</div>
|
</div>
|
||||||
<div class="main_input">
|
<div class="main_input">
|
||||||
<input type="text" v-model="registerform.nickName" placeholder="请输入昵称" autocomplete="off" />
|
<input type="text" v-model="registerform.nickName" placeholder="请输入昵称" autocomplete="off" />
|
||||||
@@ -276,7 +276,7 @@ export default {
|
|||||||
}
|
}
|
||||||
if (this.registerform.phoneNumber == "") {
|
if (this.registerform.phoneNumber == "") {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: "请输入账号",
|
message: "请输入手机号",
|
||||||
type: "warning",
|
type: "warning",
|
||||||
customClass: "log_warning",
|
customClass: "log_warning",
|
||||||
});
|
});
|
||||||
|
|||||||
+5
-1
@@ -115,7 +115,11 @@ public class TtUserController extends BaseController {
|
|||||||
|
|
||||||
@DeleteMapping("/{userIds}")
|
@DeleteMapping("/{userIds}")
|
||||||
public AjaxResult remove(@PathVariable Long[] userIds) {
|
public AjaxResult remove(@PathVariable Long[] userIds) {
|
||||||
return toAjax(userService.removeByIds(Arrays.asList(userIds)));
|
// 直接从数据库物理删除,避免逻辑删除后手机号被唯一索引占用无法重新注册
|
||||||
|
for (Long userId : userIds) {
|
||||||
|
ttUserMapper.removeByUserId(userId.intValue());
|
||||||
|
}
|
||||||
|
return toAjax(userIds.length);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/online/list")
|
@GetMapping("/online/list")
|
||||||
|
|||||||
+16
-5
@@ -79,12 +79,17 @@ public class ApiRegisterServiceImpl implements ApiRegisterService {
|
|||||||
if (!userService.checkPhoneUnique(ttUser)) return "注册失败," + "手机号'" + phoneNumber + "'已被注册!";
|
if (!userService.checkPhoneUnique(ttUser)) return "注册失败," + "手机号'" + phoneNumber + "'已被注册!";
|
||||||
if (!userService.checkUserNameUnique(ttUser))
|
if (!userService.checkUserNameUnique(ttUser))
|
||||||
return "注册失败," + "用户名'" + ttUser.getUserName() + "'已存在!";
|
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.setNickName(nickName);
|
||||||
ttUser.setUserType("02");
|
ttUser.setUserType("02");
|
||||||
List<TtUserAvatar> userAvatarList = new LambdaQueryChainWrapper<>(userAvatarService.getBaseMapper()).eq(TtUserAvatar::getIsDefault, "1").list();
|
// 注册用户统一使用前端默认头像,不再随机分配头像
|
||||||
if (!userAvatarList.isEmpty()) {
|
ttUser.setAvatar("");
|
||||||
ttUser.setAvatar(RandomUtil.choice(userAvatarList).getAvatar());
|
|
||||||
} else ttUser.setAvatar("");
|
|
||||||
ttUser.setPassword(SecurityUtils.encryptPassword(password));
|
ttUser.setPassword(SecurityUtils.encryptPassword(password));
|
||||||
String registerRedPacketStr = configService.selectConfigByKey("registerRedPacket");
|
String registerRedPacketStr = configService.selectConfigByKey("registerRedPacket");
|
||||||
BigDecimal registerRedPacket = new BigDecimal(registerRedPacketStr);
|
BigDecimal registerRedPacket = new BigDecimal(registerRedPacketStr);
|
||||||
@@ -109,7 +114,13 @@ public class ApiRegisterServiceImpl implements ApiRegisterService {
|
|||||||
// String validateCaptcha = apiSmsService.validateCaptcha(code.trim(), "ApiRegister_" + phoneNumber);
|
// String validateCaptcha = apiSmsService.validateCaptcha(code.trim(), "ApiRegister_" + phoneNumber);
|
||||||
// if (!"success".equals(validateCaptcha)) return validateCaptcha;
|
// if (!"success".equals(validateCaptcha)) return validateCaptcha;
|
||||||
ttUser.setUserId(userIdGenerator.generateUserId());
|
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 "注册失败,请联系系统管理人员";
|
if (!regFlag) return "注册失败,请联系系统管理人员";
|
||||||
else {
|
else {
|
||||||
if (BigDecimal.ZERO.compareTo(registerRedPacket) < 0) {
|
if (BigDecimal.ZERO.compareTo(registerRedPacket) < 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user