diff --git a/YuNan-system-start/src/main/java/com/yunan/controller/AuthController.java b/YuNan-system-start/src/main/java/com/yunan/controller/AuthController.java index faa04db..ee947f1 100644 --- a/YuNan-system-start/src/main/java/com/yunan/controller/AuthController.java +++ b/YuNan-system-start/src/main/java/com/yunan/controller/AuthController.java @@ -56,9 +56,6 @@ public class AuthController { return authService.register(registerDTO); } - // 存储已发送的验证码 - private final Map emailCodeMap = new ConcurrentHashMap<>(16); - /** * 发送验证码 * @param registerDTO diff --git a/YuNan-system-start/src/main/java/com/yunan/dto/LoginDTO.java b/YuNan-system-start/src/main/java/com/yunan/dto/LoginDTO.java index 66be2f6..235ace7 100644 --- a/YuNan-system-start/src/main/java/com/yunan/dto/LoginDTO.java +++ b/YuNan-system-start/src/main/java/com/yunan/dto/LoginDTO.java @@ -25,35 +25,4 @@ public class LoginDTO { private String token; - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } } diff --git a/YuNan-system-start/src/main/java/com/yunan/dto/RegisterDTO.java b/YuNan-system-start/src/main/java/com/yunan/dto/RegisterDTO.java index 189ce2f..719973f 100644 --- a/YuNan-system-start/src/main/java/com/yunan/dto/RegisterDTO.java +++ b/YuNan-system-start/src/main/java/com/yunan/dto/RegisterDTO.java @@ -27,43 +27,4 @@ public class RegisterDTO { private String token; - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } } diff --git a/YuNan-system-start/src/main/java/com/yunan/dto/Users.java b/YuNan-system-start/src/main/java/com/yunan/dto/Users.java index 962b9f5..0b55ef4 100644 --- a/YuNan-system-start/src/main/java/com/yunan/dto/Users.java +++ b/YuNan-system-start/src/main/java/com/yunan/dto/Users.java @@ -1,12 +1,16 @@ package com.yunan.dto; +import lombok.Data; + import java.io.Serializable; +import java.util.Date; /** * 用户实体类 */ +@Data public class Users implements Serializable { - private Integer id; + private long id; /** 用户名*/ private String username; /** 密码*/ @@ -14,7 +18,7 @@ public class Users implements Serializable { /** 邮箱*/ private String email; /** 创建用户信息时间 */ - private String createdTime; + private Date createdTime; /** 修改用户信息时间 */ private String updatedTime; /** 用户状态*/ @@ -31,60 +35,4 @@ public class Users implements Serializable { ", state=" + state + '}'; } - - public Integer getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public int getState() { - return state; - } - - public void setState(int state) { - this.state = state; - } - - public String getCreated_Time() { - return createdTime; - } - - public void setCreated_Time(String create_Time) { - this.createdTime = create_Time; - } - - public String getUpdated_Time() { - return updatedTime; - } - - public void setUpdated_Time(String update_Time) { - this.updatedTime = update_Time; - } } diff --git a/YuNan-system-start/src/main/java/com/yunan/service/RedisExpireTask.java b/YuNan-system-start/src/main/java/com/yunan/service/RedisExpireTask.java index d1f1be2..f03d244 100644 --- a/YuNan-system-start/src/main/java/com/yunan/service/RedisExpireTask.java +++ b/YuNan-system-start/src/main/java/com/yunan/service/RedisExpireTask.java @@ -9,7 +9,7 @@ import java.util.stream.Collectors; @Service public class RedisExpireTask { - private final long time = 300000; //五分钟 + private final long time = 3600000; //一小时 private RedisTemplate redisTemplate; diff --git a/YuNan-system-start/src/main/java/com/yunan/service/impl/AuthServiceImpl.java b/YuNan-system-start/src/main/java/com/yunan/service/impl/AuthServiceImpl.java index c39cfc7..f4d9e15 100644 --- a/YuNan-system-start/src/main/java/com/yunan/service/impl/AuthServiceImpl.java +++ b/YuNan-system-start/src/main/java/com/yunan/service/impl/AuthServiceImpl.java @@ -14,6 +14,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; +import java.util.Random; @Service @@ -36,14 +38,20 @@ public class AuthServiceImpl implements AuthService { if(authMapper.selectOne(queryWrapper) != null) { return ResponseEntity .status(HttpStatus.CONFLICT) - .body(new ErrorResponse("用户名已存在!!!")); + .body(new ErrorResponse("用户已存在!!!")); } + //为用户创建默认用户名 + String userName = createUserName(); Users user = new Users(); - user.setUsername(registerDTO.getUsername()); + //设置账号创建时间 + Date currentDate = new Date(); + user.setCreatedTime(currentDate); + user.setUsername(userName); user.setPassword(registerDTO.getPassword()); user.setEmail(registerDTO.getEmail()); -// boolean isSaved = authMapper.insert(user) > 0; - boolean isSaved = true; + //状态设置 " 1 " 正常账号 + user.setState(1); + boolean isSaved = authMapper.insert(user) > 0; if (isSaved) { return ResponseEntity .status(HttpStatus.OK) @@ -61,5 +69,23 @@ public class AuthServiceImpl implements AuthService { } } + //随机生成用户名算法 + public String createUserName() { + // 字符集,包括小写字母和数字 + String chars = "abcdefghijklmnopqrstuvwxyz0123456789"; + StringBuilder randomPart = new StringBuilder(); + + // 随机生成6位字符 + Random random = new Random(); + for (int i = 0; i < 6; i++) { + randomPart.append(chars.charAt(random.nextInt(chars.length()))); + } + + // 获取当前时间戳(秒级) + long timestamp = System.currentTimeMillis() / 1000; + + // 拼接生成用户名,例如 "user_xxx123_1638326400" + return "user_" + randomPart.toString() + "_" + timestamp; + } } diff --git a/YuNan-system-start/src/main/java/com/yunan/service/impl/EmailServiceImpl.java b/YuNan-system-start/src/main/java/com/yunan/service/impl/EmailServiceImpl.java index 00c36b0..58b8086 100644 --- a/YuNan-system-start/src/main/java/com/yunan/service/impl/EmailServiceImpl.java +++ b/YuNan-system-start/src/main/java/com/yunan/service/impl/EmailServiceImpl.java @@ -46,7 +46,7 @@ public class EmailServiceImpl implements EmailService { // 发送邮件 mailSender.send(message); - redisUtils.hPutWithExpire("rightCode", email, code, 5, TimeUnit.SECONDS); + redisUtils.hPutWithExpire("rightCode", email, code, 5, TimeUnit.MINUTES); return new ApiResponse<>(ResponseCode.SUCCESS, "验证码已发送"); } } \ No newline at end of file