|
@@ -130,7 +130,7 @@ public class MdeEnterpriseAuthServiceImpl implements MdeEnterpriseAuthService {
|
|
|
public AppMdeAuthLoginRespVO smsLogin(AppEnterpriseAuthSmsLoginReqVO reqVO) {
|
|
|
// 校验验证码
|
|
|
String userIp = getClientIP();
|
|
|
-// smsCodeApi.useSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO, SmsSceneEnum.MENDUNER_LOGIN.getScene(), userIp).setMobile(reqVO.getPhone())).getCheckedData();
|
|
|
+// smsCodeApi.useSmsCode(MdeAuthConvert.INSTANCE.convert(reqVO, SmsSceneEnum.MENDUNER_LOGIN.getScene(), userIp).setphone(reqVO.getPhone())).getCheckedData();
|
|
|
|
|
|
// 获得获得注册用户
|
|
|
MdeUserDO user = userService.createUserIfAbsent(reqVO.getPhone(), userIp, getTerminal().toString());
|
|
@@ -173,16 +173,16 @@ public class MdeEnterpriseAuthServiceImpl implements MdeEnterpriseAuthService {
|
|
|
return resp;
|
|
|
}
|
|
|
|
|
|
- protected MdeUserDO check(String mobile, String password) {
|
|
|
+ protected MdeUserDO check(String phone, String password) {
|
|
|
final LoginLogTypeEnum logTypeEnum = LoginLogTypeEnum.LOGIN_MOBILE;
|
|
|
// 校验账号是否存在
|
|
|
- MdeUserDO user = userService.getUserByPhone(mobile);
|
|
|
+ MdeUserDO user = userService.getUserByPhone(phone);
|
|
|
if (null == user) {
|
|
|
- createLoginLog(null, mobile, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
|
|
|
+ createLoginLog(null, phone, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
|
|
|
throw exception(MDE_AUTH_LOGIN_BAD_CREDENTIALS);
|
|
|
}
|
|
|
if (!userService.isPasswordMatch(password, user.getPassword())) {
|
|
|
- createLoginLog(user.getId(), mobile, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
|
|
|
+ createLoginLog(user.getId(), phone, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
|
|
|
throw exception(MDE_AUTH_LOGIN_BAD_CREDENTIALS);
|
|
|
}
|
|
|
|
|
@@ -191,7 +191,7 @@ public class MdeEnterpriseAuthServiceImpl implements MdeEnterpriseAuthService {
|
|
|
|
|
|
protected EnterpriseUserBindDO check2(Long enterpriseId,
|
|
|
Long userId,
|
|
|
- String mobile,
|
|
|
+ String phone,
|
|
|
LoginLogTypeEnum logTypeEnum) {
|
|
|
// 查询绑定用户
|
|
|
EnterpriseUserBindDO bind = userBindService.selectByEnterpriseIdAndUserId(
|
|
@@ -199,12 +199,12 @@ public class MdeEnterpriseAuthServiceImpl implements MdeEnterpriseAuthService {
|
|
|
userId
|
|
|
);
|
|
|
if (null == bind) {
|
|
|
- createLoginLog(bind.getId(), mobile, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
|
|
|
+ createLoginLog(bind.getId(), phone, logTypeEnum, LoginResultEnum.BAD_CREDENTIALS);
|
|
|
throw exception(MDE_USER_ENTERPRISE_NOT_USER_NULL);
|
|
|
}
|
|
|
// 校验是否禁用
|
|
|
if (ObjectUtil.notEqual(bind.getStatus(), MendunerStatusEnum.ENABLE.getStatus())) {
|
|
|
- createLoginLog(bind.getId(), mobile, logTypeEnum, LoginResultEnum.USER_DISABLED);
|
|
|
+ createLoginLog(bind.getId(), phone, logTypeEnum, LoginResultEnum.USER_DISABLED);
|
|
|
throw exception(MDE_AUTH_LOGIN_USER_DISABLED);
|
|
|
}
|
|
|
return bind;
|
|
@@ -233,14 +233,14 @@ public class MdeEnterpriseAuthServiceImpl implements MdeEnterpriseAuthService {
|
|
|
return MdeAuthConvert.INSTANCE.convert(accessTokenRespDTO, openid);
|
|
|
}
|
|
|
|
|
|
- protected void createLoginLog(Long bindUserId, String mobile, LoginLogTypeEnum logType, LoginResultEnum loginResult) {
|
|
|
+ protected void createLoginLog(Long bindUserId, String phone, LoginLogTypeEnum logType, LoginResultEnum loginResult) {
|
|
|
// 插入登录日志
|
|
|
LoginLogCreateReqDTO reqDTO = new LoginLogCreateReqDTO();
|
|
|
reqDTO.setLogType(logType.getType());
|
|
|
reqDTO.setTraceId(TracerUtils.getTraceId());
|
|
|
reqDTO.setUserId(bindUserId);
|
|
|
reqDTO.setUserType(getUserType().getValue());
|
|
|
- reqDTO.setUsername(mobile);
|
|
|
+ reqDTO.setUsername(phone);
|
|
|
reqDTO.setUserAgent(ServletUtils.getUserAgent());
|
|
|
reqDTO.setUserIp(getClientIP());
|
|
|
reqDTO.setResult(loginResult.getResult());
|
|
@@ -250,4 +250,44 @@ public class MdeEnterpriseAuthServiceImpl implements MdeEnterpriseAuthService {
|
|
|
userBindService.updateUserLogin(bindUserId, getClientIP());
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void logout(String token) {
|
|
|
+ // 删除访问令牌
|
|
|
+ OAuth2AccessTokenRespDTO accessTokenRespDTO = oauth2TokenApi.removeAccessToken(token).getCheckedData();
|
|
|
+ if (accessTokenRespDTO == null) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ // 删除成功,则记录登出日志
|
|
|
+ createLogoutLog(accessTokenRespDTO.getUserId());
|
|
|
+ }
|
|
|
+
|
|
|
+ private void createLogoutLog(Long userId) {
|
|
|
+ LoginUser loginUser = getLoginUser();
|
|
|
+ MdeUserDO user = userService.getMdeUser(loginUser.getId());
|
|
|
+ LoginLogCreateReqDTO reqDTO = new LoginLogCreateReqDTO();
|
|
|
+ reqDTO.setLogType(LoginLogTypeEnum.LOGOUT_SELF.getType());
|
|
|
+ reqDTO.setTraceId(TracerUtils.getTraceId());
|
|
|
+ reqDTO.setUserId(userId);
|
|
|
+ reqDTO.setUserType(getUserType().getValue());
|
|
|
+ reqDTO.setUsername(user.getPhone());
|
|
|
+ reqDTO.setUserAgent(ServletUtils.getUserAgent());
|
|
|
+ reqDTO.setUserIp(getClientIP());
|
|
|
+ reqDTO.setResult(LoginResultEnum.SUCCESS.getResult());
|
|
|
+ loginLogApi.createLoginLog(reqDTO);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public AppMdeAuthLoginRespVO refreshToken(String refreshToken) {
|
|
|
+ LoginUser loginUser = getLoginUser();
|
|
|
+
|
|
|
+ OAuth2AccessTokenRespDTO accessTokenDO = oauth2TokenApi.refreshAccessToken2(
|
|
|
+ refreshToken,
|
|
|
+ OAuth2ClientConstants.CLIENT_ID_MENDUNER,
|
|
|
+ loginUser.getInfo()
|
|
|
+ ).getCheckedData();
|
|
|
+
|
|
|
+ return MdeAuthConvert.INSTANCE.convert(accessTokenDO, null);
|
|
|
+ }
|
|
|
}
|