|
@@ -10,7 +10,6 @@ import com.citu.framework.common.util.servlet.ServletUtils;
|
|
|
import com.citu.module.menduner.system.controller.admin.auth.vo.*;
|
|
|
import com.citu.module.menduner.system.convert.MdeAuthConvert;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.user.MdeUserDO;
|
|
|
-import com.citu.module.menduner.system.enums.sms.MdeSmsSceneEnum;
|
|
|
import com.citu.module.menduner.system.service.user.MdeUserService;
|
|
|
import com.citu.module.system.api.logger.LoginLogApi;
|
|
|
import com.citu.module.system.api.logger.dto.LoginLogCreateReqDTO;
|
|
@@ -39,9 +38,7 @@ import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exce
|
|
|
import static com.citu.framework.common.util.servlet.ServletUtils.getClientIP;
|
|
|
import static com.citu.framework.web.core.util.WebFrameworkUtils.getTerminal;
|
|
|
import static com.citu.module.menduner.system.enums.ErrorCodeConstants.*;
|
|
|
-import static com.citu.module.menduner.system.enums.ErrorCodeConstants.AUTH_LOGIN_BAD_CREDENTIALS;
|
|
|
-import static com.citu.module.menduner.system.enums.ErrorCodeConstants.AUTH_LOGIN_USER_DISABLED;
|
|
|
-import static com.citu.module.system.enums.ErrorCodeConstants.*;
|
|
|
+import static com.citu.module.system.enums.ErrorCodeConstants.USER_NOT_EXISTS;
|
|
|
|
|
|
/**
|
|
|
* menduner的认证 Service 接口 实现
|
|
@@ -68,7 +65,7 @@ public class MdeAuthServiceImpl implements MdeAuthService {
|
|
|
@Override
|
|
|
public MdeAuthLoginRespVO login(MdeAuthLoginReqVO reqVO) {
|
|
|
// 使用手机 + 密码,进行登录。
|
|
|
- MdeUserDO user = check(reqVO.getMobile(), reqVO.getPassword());
|
|
|
+ MdeUserDO user = check(reqVO.getPhone(), reqVO.getPassword());
|
|
|
|
|
|
// 如果 socialType 非空,说明需要绑定社交用户
|
|
|
String openid = null;
|
|
@@ -78,7 +75,7 @@ public class MdeAuthServiceImpl implements MdeAuthService {
|
|
|
}
|
|
|
|
|
|
// 创建 Token 令牌,记录登录日志
|
|
|
- return createTokenAfterLoginSuccess(user, reqVO.getMobile(), LoginLogTypeEnum.LOGIN_MOBILE, openid);
|
|
|
+ return createTokenAfterLoginSuccess(user, reqVO.getPhone(), LoginLogTypeEnum.LOGIN_MOBILE, openid);
|
|
|
}
|
|
|
|
|
|
private MdeUserDO check(String mobile, String password) {
|
|
@@ -130,10 +127,10 @@ public class MdeAuthServiceImpl implements MdeAuthService {
|
|
|
public MdeAuthLoginRespVO smsLogin(MdeAuthSmsLoginReqVO reqVO) {
|
|
|
// 校验验证码
|
|
|
String userIp = getClientIP();
|
|
|
- smsCodeApi.useSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO, MdeSmsSceneEnum.MENDUNER_LOGIN.getScene(), userIp)).getCheckedData();
|
|
|
+ smsCodeApi.useSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO, SmsSceneEnum.MENDUNER_LOGIN.getScene(), userIp).setMobile(reqVO.getPhone())).getCheckedData();
|
|
|
|
|
|
// 获得获得注册用户
|
|
|
- MdeUserDO user = userService.createUserIfAbsent(reqVO.getMobile(), userIp, getTerminal());
|
|
|
+ MdeUserDO user = userService.createUserIfAbsent(reqVO.getPhone(), userIp, getTerminal());
|
|
|
Assert.notNull(user, "获取用户失败,结果为空");
|
|
|
|
|
|
// 如果 socialType 非空,说明需要绑定社交用户
|
|
@@ -144,7 +141,7 @@ public class MdeAuthServiceImpl implements MdeAuthService {
|
|
|
}
|
|
|
|
|
|
// 创建 Token 令牌,记录登录日志
|
|
|
- return createTokenAfterLoginSuccess(user, reqVO.getMobile(), LoginLogTypeEnum.LOGIN_SMS, openid);
|
|
|
+ return createTokenAfterLoginSuccess(user, reqVO.getPhone(), LoginLogTypeEnum.LOGIN_SMS, openid);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -205,14 +202,14 @@ public class MdeAuthServiceImpl implements MdeAuthService {
|
|
|
public void sendSmsCode(Long userId, MdeAuthSmsSendReqVO reqVO) {
|
|
|
// 情况 1:如果是修改手机场景,需要校验新手机号是否已经注册,说明不能使用该手机了
|
|
|
if (Objects.equals(reqVO.getScene(), SmsSceneEnum.MEMBER_UPDATE_MOBILE.getScene())) {
|
|
|
- MdeUserDO user = userService.getUserByPhone(reqVO.getMobile());
|
|
|
+ MdeUserDO user = userService.getUserByPhone(reqVO.getPhone());
|
|
|
if (user != null && !Objects.equals(user.getId(), userId)) {
|
|
|
throw exception(AUTH_MOBILE_USED);
|
|
|
}
|
|
|
}
|
|
|
// 情况 2:如果是重置密码场景,需要校验手机号是存在的
|
|
|
if (Objects.equals(reqVO.getScene(), SmsSceneEnum.MEMBER_RESET_PASSWORD.getScene())) {
|
|
|
- MdeUserDO user = userService.getUserByPhone(reqVO.getMobile());
|
|
|
+ MdeUserDO user = userService.getUserByPhone(reqVO.getPhone());
|
|
|
if (user == null) {
|
|
|
throw exception(MDE_USER_MOBILE_NOT_EXISTS);
|
|
|
}
|
|
@@ -221,16 +218,16 @@ public class MdeAuthServiceImpl implements MdeAuthService {
|
|
|
if (Objects.equals(reqVO.getScene(), SmsSceneEnum.MEMBER_UPDATE_PASSWORD.getScene())) {
|
|
|
MdeUserDO user = userService.getMdeUser(userId);
|
|
|
// TODO 芋艿:后续 member user 手机非强绑定,这块需要做下调整;
|
|
|
- reqVO.setMobile(user.getPhone());
|
|
|
+ reqVO.setPhone(user.getPhone());
|
|
|
}
|
|
|
|
|
|
// 执行发送
|
|
|
- smsCodeApi.sendSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO).setCreateIp(getClientIP()));
|
|
|
+ smsCodeApi.sendSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO).setCreateIp(getClientIP()).setMobile(reqVO.getPhone()));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void validateSmsCode(Long userId, MdeAuthSmsValidateReqVO reqVO) {
|
|
|
- smsCodeApi.validateSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO));
|
|
|
+ smsCodeApi.validateSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO).setMobile(reqVO.getPhone()));
|
|
|
}
|
|
|
|
|
|
@Override
|