BUGFIX:忘记密码;

This commit is contained in:
shahaibo
2023-12-22 14:12:20 +08:00
parent ce7c6c657b
commit bd116ff011
2 changed files with 12 additions and 8 deletions

View File

@@ -14,6 +14,7 @@ public class AccountRegisterDTO {
@ApiModelProperty("邮箱")
private String email;
private Boolean verifyEmail;
// @NotBlank(message = "password.cannot.be.empty")
@ApiModelProperty("密码")
private String password;

View File

@@ -254,16 +254,19 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
@Transactional
@Override
public Boolean forgetPwd(AccountRegisterDTO accountDTO) {
Account emailAccount = getOneByEmail(accountDTO.getEmail());
// Account emailAccount = getOneByEmail(accountDTO.getEmail());
//校验邮箱验证码
String verifyCode = LocalCacheUtils.getVerifyCodeCache(AuthenticationOperationTypeEnum.FORGET_PWD.name() + "_" + accountDTO.getEmail());
if (StringUtils.isBlank(verifyCode)) {
throw new BusinessException("the.verification.code.has.expired", ResultEnum.PROMPT.getCode());
if (accountDTO.getVerifyEmail()) {
String verifyCode = LocalCacheUtils.getVerifyCodeCache(AuthenticationOperationTypeEnum.FORGET_PWD.name() + "_" + accountDTO.getEmail());
if (StringUtils.isBlank(verifyCode)) {
throw new BusinessException("the.verification.code.has.expired", ResultEnum.PROMPT.getCode());
}
if (!verifyCode.equals(accountDTO.getEmailVerifyCode())) {
throw new BusinessException("verification.code.error", ResultEnum.PROMPT.getCode());
}
}else {
updatePwdByEmail(accountDTO.getPassword(), accountDTO.getEmail());
}
if (!verifyCode.equals(accountDTO.getEmailVerifyCode())) {
throw new BusinessException("verification.code.error", ResultEnum.PROMPT.getCode());
}
updatePwdByEmail(accountDTO.getPassword(), accountDTO.getEmail());
return Boolean.TRUE;
}