fix(user): 过滤已删除用户避免重复注册

This commit is contained in:
2026-02-27 15:53:18 +08:00
parent 74b8b72545
commit 4e917d2522
2 changed files with 5 additions and 1 deletions

View File

@@ -84,6 +84,7 @@ public class UserServiceImpl extends ServiceImpl<KeyboardUserMapper, KeyboardUse
return keyboardUserMapper.selectOne( return keyboardUserMapper.selectOne(
new LambdaQueryWrapper<KeyboardUser>() new LambdaQueryWrapper<KeyboardUser>()
.eq(KeyboardUser::getSubjectId, sub) .eq(KeyboardUser::getSubjectId, sub)
.eq(KeyboardUser::getDeleted, false)
.eq(KeyboardUser::getStatus, false)); .eq(KeyboardUser::getStatus, false));
} }
@@ -107,6 +108,7 @@ public class UserServiceImpl extends ServiceImpl<KeyboardUserMapper, KeyboardUse
KeyboardUser keyboardUser = keyboardUserMapper.selectOne( KeyboardUser keyboardUser = keyboardUserMapper.selectOne(
new LambdaQueryWrapper<KeyboardUser>() new LambdaQueryWrapper<KeyboardUser>()
.eq(KeyboardUser::getEmail, userLoginDTO.getMail()) .eq(KeyboardUser::getEmail, userLoginDTO.getMail())
.eq(KeyboardUser::getDeleted, false)
.eq(KeyboardUser::getStatus, false)); .eq(KeyboardUser::getStatus, false));
if (keyboardUser == null) { if (keyboardUser == null) {
throw new BusinessException(ErrorCode.USER_NOT_FOUND); throw new BusinessException(ErrorCode.USER_NOT_FOUND);
@@ -130,6 +132,7 @@ public class UserServiceImpl extends ServiceImpl<KeyboardUserMapper, KeyboardUse
KeyboardUser keyboardUserDB = keyboardUserMapper.selectOne( KeyboardUser keyboardUserDB = keyboardUserMapper.selectOne(
new LambdaQueryWrapper<KeyboardUser>() new LambdaQueryWrapper<KeyboardUser>()
.eq(KeyboardUser::getId, loginIdAsLong) .eq(KeyboardUser::getId, loginIdAsLong)
.eq(KeyboardUser::getDeleted, false)
.eq(KeyboardUser::getStatus, false)); .eq(KeyboardUser::getStatus, false));
if (keyboardUserDB == null) { if (keyboardUserDB == null) {
throw new BusinessException(ErrorCode.USER_NOT_FOUND); throw new BusinessException(ErrorCode.USER_NOT_FOUND);

View File

@@ -86,7 +86,8 @@ public class UserRegistrationHandler {
private void ensureUserNotExists(String mailAddress) { private void ensureUserNotExists(String mailAddress) {
KeyboardUser userMail = keyboardUserMapper.selectOne(new LambdaQueryWrapper<KeyboardUser>() KeyboardUser userMail = keyboardUserMapper.selectOne(new LambdaQueryWrapper<KeyboardUser>()
.eq(KeyboardUser::getEmail, mailAddress)); .eq(KeyboardUser::getEmail, mailAddress)
.eq(KeyboardUser::getDeleted, false));
if (userMail != null) { if (userMail != null) {
throw new BusinessException(ErrorCode.USER_HAS_EXISTED); throw new BusinessException(ErrorCode.USER_HAS_EXISTED);
} }