feat: 修复重置密码bug
This commit is contained in:
@@ -176,8 +176,8 @@ public class SchisandraAuthUserController {
|
||||
String token = schisandraAuthUserDTO.getToken();
|
||||
Double deg = schisandraAuthUserDTO.getDeg();
|
||||
CaptchaResult captchaResult = checkRouteCaptcha.checkCaptcha(token, deg);
|
||||
String key = redisUtil.buildKey(AUTH_PHONE_PREFIX, schisandraAuthUserDTO.getPhone());
|
||||
if (captchaResult.getCode() == 0) {
|
||||
String key = redisUtil.buildKey(AUTH_PHONE_PREFIX, schisandraAuthUserDTO.getPhone());
|
||||
if (redisUtil.exist(key)) {
|
||||
if (!Objects.equals(redisUtil.get(key), schisandraAuthUserDTO.getActiveCode())) {
|
||||
return CaptchaResult.failWithCode("验证码错误,请重新验证");
|
||||
@@ -204,11 +204,11 @@ public class SchisandraAuthUserController {
|
||||
return CaptchaResult.failWithCode();
|
||||
}
|
||||
} else {
|
||||
return CaptchaResult.fail();
|
||||
return CaptchaResult.failWithCode();
|
||||
}
|
||||
|
||||
} else {
|
||||
return CaptchaResult.failWithCode("验证失败!");
|
||||
return CaptchaResult.fail();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -258,13 +258,13 @@ public class SchisandraAuthUserController {
|
||||
}
|
||||
|
||||
/**
|
||||
* @description:找回密码
|
||||
* @description: 找回密码
|
||||
* @param: [schisandraAuthUserDTO]
|
||||
* @return: com.schisandra.auth.common.entity.CaptchaResult
|
||||
* @author zlg
|
||||
* @date: 2024/6/9 0:46
|
||||
*/
|
||||
@PostMapping
|
||||
@PostMapping("findPassword")
|
||||
public CaptchaResult findPassword(@RequestBody SchisandraAuthUserDTO schisandraAuthUserDTO) {
|
||||
if (log.isInfoEnabled()) {
|
||||
log.info("UserController.findPassword.dto:{}", JSON.toJSONString(schisandraAuthUserDTO));
|
||||
@@ -287,7 +287,7 @@ public class SchisandraAuthUserController {
|
||||
return CaptchaResult.failWithCode("该手机号未注册");
|
||||
}
|
||||
if (schisandraAuthUserDomainService.findThePassword(schisandraAuthUserBO)) {
|
||||
return CaptchaResult.ok();
|
||||
return CaptchaResult.ok("重置成功!");
|
||||
} else {
|
||||
return CaptchaResult.failWithCode("修改密码失败");
|
||||
}
|
||||
|
@@ -4,7 +4,6 @@ import cn.dev33.satoken.stp.StpUtil;
|
||||
import com.schisandra.auth.application.factory.OauthTypeHandlerFactory;
|
||||
import com.schisandra.auth.application.handler.oauth.SchisandraOauthTypeHandler;
|
||||
import com.schisandra.auth.common.entity.Result;
|
||||
import com.schisandra.auth.common.redis.RedisUtil;
|
||||
import com.schisandra.auth.domain.service.SchisandraAuthUserDomainService;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -15,12 +14,14 @@ import me.zhyd.oauth.model.AuthUser;
|
||||
import me.zhyd.oauth.request.AuthRequest;
|
||||
import me.zhyd.oauth.utils.AuthStateUtils;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* ClassName:SchisandraOauthController
|
||||
@@ -82,10 +83,13 @@ public class SchisandraOauthController {
|
||||
AuthResponse<AuthUser> authResponse = authRequest.login(callback);
|
||||
AuthUser data = authResponse.getData();
|
||||
AuthToken token = data.getToken();
|
||||
if (token == null) {
|
||||
return;
|
||||
}
|
||||
Result result = schisandraAuthUserDomainService.insertAuthUserByOauth(data, type);
|
||||
if (result.getSuccess()){
|
||||
if (result.getSuccess()) {
|
||||
response.sendRedirect(url + "loading?token=" + token.getAccessToken() + "&userId=" + StpUtil.getLoginIdAsString());
|
||||
}else{
|
||||
} else {
|
||||
log.error("登录失败");
|
||||
}
|
||||
}
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 354 KiB After Width: | Height: | Size: 8.5 MiB |
@@ -84,8 +84,7 @@ public class SchisandraAuthUserDomainServiceImpl implements SchisandraAuthUserDo
|
||||
@Override
|
||||
public boolean findThePassword(SchisandraAuthUserBO schisandraAuthUserBO) {
|
||||
SchisandraAuthUser schisandraAuthUser = SchisandraAuthUserBOConverter.INSTANCE.convertBOToEntity(schisandraAuthUserBO);
|
||||
Integer count = schisandraAuthUserService.update(schisandraAuthUser);
|
||||
return count > 0;
|
||||
return schisandraAuthUserService.updateUserPasswordByPhone(schisandraAuthUser);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -50,4 +50,6 @@ public interface SchisandraAuthUserService {
|
||||
|
||||
|
||||
int insertAuthUserByOauth(SchisandraAuthUser schisandraAuthUser);
|
||||
|
||||
boolean updateUserPasswordByPhone(SchisandraAuthUser schisandraAuthUser);
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package com.schisandra.auth.infra.basic.service.impl;
|
||||
|
||||
|
||||
import com.mybatisflex.core.update.UpdateChain;
|
||||
import com.schisandra.auth.infra.basic.dao.SchisandraAuthUserDao;
|
||||
import com.schisandra.auth.infra.basic.entity.SchisandraAuthUser;
|
||||
import com.schisandra.auth.infra.basic.entity.table.SchisandraAuthUserTableDef;
|
||||
@@ -57,7 +58,7 @@ public class SchisandraAuthUserServiceImpl implements SchisandraAuthUserService
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改数据
|
||||
* 根据主键修改数据
|
||||
*
|
||||
* @param schisandraAuthUser 实例对象
|
||||
* @return 实例对象
|
||||
@@ -84,4 +85,13 @@ public class SchisandraAuthUserServiceImpl implements SchisandraAuthUserService
|
||||
return schisandraAuthUserDao.insert(schisandraAuthUser);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean updateUserPasswordByPhone(SchisandraAuthUser schisandraAuthUser) {
|
||||
return UpdateChain.of(SchisandraAuthUser.class)
|
||||
.set(SchisandraAuthUser::getPassword, schisandraAuthUser.getPassword())
|
||||
.where(SchisandraAuthUser::getPhone).eq(schisandraAuthUser.getPhone())
|
||||
.update();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user