diff --git a/src/main/java/com/youlai/boot/system/model/form/EmailUpdateForm.java b/src/main/java/com/youlai/boot/system/model/form/EmailUpdateForm.java index 971fdf45..22524f1d 100644 --- a/src/main/java/com/youlai/boot/system/model/form/EmailUpdateForm.java +++ b/src/main/java/com/youlai/boot/system/model/form/EmailUpdateForm.java @@ -1,6 +1,7 @@ package com.youlai.boot.system.model.form; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; import lombok.Data; /** @@ -9,14 +10,16 @@ import lombok.Data; * @author Ray.Hao * @since 2024/8/19 */ -@Schema(description = "修改邮箱表单") @Data +@Schema(description = "修改邮箱表单") public class EmailUpdateForm { @Schema(description = "邮箱") + @NotBlank(message = "邮箱不能为空") private String email; @Schema(description = "验证码") + @NotBlank(message = "验证码不能为空") private String code; } diff --git a/src/main/java/com/youlai/boot/system/model/form/MobileUpdateForm.java b/src/main/java/com/youlai/boot/system/model/form/MobileUpdateForm.java index a5612b48..d15bf824 100644 --- a/src/main/java/com/youlai/boot/system/model/form/MobileUpdateForm.java +++ b/src/main/java/com/youlai/boot/system/model/form/MobileUpdateForm.java @@ -1,6 +1,7 @@ package com.youlai.boot.system.model.form; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; import lombok.Data; /** @@ -14,9 +15,11 @@ import lombok.Data; public class MobileUpdateForm { @Schema(description = "手机号码") + @NotBlank(message = "手机号码不能为空") private String mobile; @Schema(description = "验证码") + @NotBlank(message = "验证码不能为空") private String code; } diff --git a/src/main/java/com/youlai/boot/system/service/impl/UserServiceImpl.java b/src/main/java/com/youlai/boot/system/service/impl/UserServiceImpl.java index c4f74448..e563df8b 100644 --- a/src/main/java/com/youlai/boot/system/service/impl/UserServiceImpl.java +++ b/src/main/java/com/youlai/boot/system/service/impl/UserServiceImpl.java @@ -451,9 +451,14 @@ public class UserServiceImpl extends ServiceImpl implements Us String redisCacheKey = RedisConstants.SMS_CHANGE_CODE_PREFIX + mobile; String cachedVerifyCode = redisTemplate.opsForValue().get(redisCacheKey); + if (StrUtil.isBlank(cachedVerifyCode)) { + throw new BusinessException("验证码已过期"); + } if (!inputVerifyCode.equals(cachedVerifyCode)) { throw new BusinessException("验证码错误"); } + // 验证完成删除验证码 + redisTemplate.delete(redisCacheKey); // 更新手机号码 return this.update( @@ -505,9 +510,15 @@ public class UserServiceImpl extends ServiceImpl implements Us String redisCacheKey = RedisConstants.EMAIL_CHANGE_CODE_PREFIX + email; String cachedVerifyCode = redisTemplate.opsForValue().get(redisCacheKey); + if (StrUtil.isBlank(cachedVerifyCode)) { + throw new BusinessException("验证码已过期"); + } + if (!inputVerifyCode.equals(cachedVerifyCode)) { throw new BusinessException("验证码错误"); } + // 验证完成删除验证码 + redisTemplate.delete(redisCacheKey); // 更新邮箱地址 return this.update(