feat: 注册流程优化

This commit is contained in:
tim
2025-07-15 13:54:01 +08:00
parent 59f03f4f13
commit bb9b13664f
4 changed files with 19 additions and 9 deletions

View File

@@ -68,7 +68,7 @@ public class AuthController {
if (captchaEnabled && loginCaptchaEnabled && !captchaService.verify(req.getCaptcha())) {
return ResponseEntity.badRequest().body(Map.of("error", "Invalid captcha"));
}
Optional<User> userOpt = userService.findByUsername(req.getUsernameOrEmail());
Optional<User> userOpt = userService.findByUsername(req.getUsername());
if (userOpt.isEmpty() || !userService.matchesPassword(userOpt.get(), req.getPassword())) {
return ResponseEntity.badRequest().body(Map.of(
"error", "Invalid credentials",
@@ -76,9 +76,12 @@ public class AuthController {
}
User user = userOpt.get();
if (!user.isVerified()) {
user = userService.register(user.getUsername(), user.getEmail(), user.getPassword(), user.getRegisterReason(), registerModeService.getRegisterMode());
emailService.sendEmail(user.getEmail(), "Verification Code", "Your verification code is " + user.getVerificationCode());
return ResponseEntity.badRequest().body(Map.of(
"error", "User not verified",
"reason_code", "NOT_VERIFIED"));
"reason_code", "NOT_VERIFIED",
"user_name", user.getUsername()));
}
if (RegisterMode.WHITELIST.equals(registerModeService.getRegisterMode()) && !user.isApproved()) {
return ResponseEntity.badRequest().body(Map.of(
@@ -133,7 +136,7 @@ public class AuthController {
@Data
private static class LoginRequest {
private String usernameOrEmail;
private String username;
private String password;
private String captcha;
}