【更新】AuthApi增加获取验证码开关接口方便其他模块调用

pull/281/head
xuyuxiang 2025-08-02 23:09:14 +08:00
parent eda0205461
commit e19c7baded
4 changed files with 97 additions and 39 deletions

View File

@ -38,6 +38,22 @@ public interface AuthApi {
*/
Long getThirdUserCount();
/**
* B
*
* @author xuyuxiang
* @date 2021/12/28 14:46
**/
boolean getDefaultCaptchaOpenForB();
/**
* C
*
* @author xuyuxiang
* @date 2021/12/28 14:46
**/
boolean getDefaultCaptchaOpenForC();
/**
*
*

View File

@ -83,6 +83,16 @@ public class AuthApiProvider implements AuthApi {
return authThirdService.count();
}
@Override
public boolean getDefaultCaptchaOpenForB() {
return authService.getDefaultCaptchaOpenForB();
}
@Override
public boolean getDefaultCaptchaOpenForC() {
return authService.getDefaultCaptchaOpenForC();
}
@Override
public void validValidCode(String phoneOrEmail, String validCode, String validCodeReqNo) {
authService.validValidCode(phoneOrEmail, validCode, validCodeReqNo);

View File

@ -120,4 +120,20 @@ public interface AuthService {
* @date 2021/12/28 14:46
**/
void validValidCode(String phoneOrEmail, String validCode, String validCodeReqNo);
/**
* B
*
* @author xuyuxiang
* @date 2021/12/28 14:46
**/
boolean getDefaultCaptchaOpenForB();
/**
* C
*
* @author xuyuxiang
* @date 2021/12/28 14:46
**/
boolean getDefaultCaptchaOpenForC();
}

View File

@ -346,6 +346,26 @@ public class AuthServiceImpl implements AuthService {
}
}
@Override
public boolean getDefaultCaptchaOpenForB() {
String defaultCaptchaOpen = devConfigApi.getValueByKey(SNOWY_SYS_DEFAULT_CAPTCHA_OPEN_FLAG_FOR_B_KEY);
if(ObjectUtil.isNotEmpty(defaultCaptchaOpen)) {
return Convert.toBool(defaultCaptchaOpen);
} else {
return false;
}
}
@Override
public boolean getDefaultCaptchaOpenForC() {
String defaultCaptchaOpen = devConfigApi.getValueByKey(SNOWY_SYS_DEFAULT_CAPTCHA_OPEN_FLAG_FOR_C_KEY);
if(ObjectUtil.isNotEmpty(defaultCaptchaOpen)) {
return Convert.toBool(defaultCaptchaOpen);
} else {
return false;
}
}
/**
*
*
@ -429,14 +449,13 @@ public class AuthServiceImpl implements AuthService {
AuthDeviceTypeEnum.validate(device);
}
// 校验验证码
String defaultCaptchaOpen;
boolean defaultCaptchaOpen;
if(SaClientTypeEnum.B.getValue().equals(type)) {
defaultCaptchaOpen = devConfigApi.getValueByKey(SNOWY_SYS_DEFAULT_CAPTCHA_OPEN_FLAG_FOR_B_KEY);
defaultCaptchaOpen = getDefaultCaptchaOpenForB();
} else {
defaultCaptchaOpen = devConfigApi.getValueByKey(SNOWY_SYS_DEFAULT_CAPTCHA_OPEN_FLAG_FOR_C_KEY);
defaultCaptchaOpen = getDefaultCaptchaOpenForC();
}
if(ObjectUtil.isNotEmpty(defaultCaptchaOpen)) {
if(Convert.toBool(defaultCaptchaOpen)) {
if(defaultCaptchaOpen) {
// 获取验证码
String validCode = authAccountPasswordLoginParam.getValidCode();
// 获取验证码请求号
@ -452,7 +471,6 @@ public class AuthServiceImpl implements AuthService {
// 执行校验图形验证码
validValidCode(null, validCode, validCodeReqNo);
}
}
// SM2解密并获得前端传来的密码哈希值
String passwordHash;
try {
@ -806,7 +824,7 @@ public class AuthServiceImpl implements AuthService {
throw new CommonException(AuthExceptionEnum.ACCOUNT_DISABLED.getValue());
}
// 执行登录
StpClientUtil.login(saBaseClientLoginUser.getId(), new SaLoginParameter().setDevice(device).setExtra("name", saBaseClientLoginUser.getName()));
StpClientUtil.login(saBaseClientLoginUser.getId(), new SaLoginParameter().setDeviceType(device).setExtra("name", saBaseClientLoginUser.getName()));
// 填充C端用户信息并更新缓存
fillSaBaseClientLoginUserAndUpdateCache(saBaseClientLoginUser);
// 返回token
@ -945,13 +963,12 @@ public class AuthServiceImpl implements AuthService {
// 获取密码
String password = authRegisterParam.getPassword();
// 校验验证码
String defaultCaptchaOpen;
boolean defaultCaptchaOpen;
if(SaClientTypeEnum.B.getValue().equals(type)) {
defaultCaptchaOpen = devConfigApi.getValueByKey(SNOWY_SYS_DEFAULT_CAPTCHA_OPEN_FLAG_FOR_B_KEY);
defaultCaptchaOpen = getDefaultCaptchaOpenForB();
} else {
defaultCaptchaOpen = devConfigApi.getValueByKey(SNOWY_SYS_DEFAULT_CAPTCHA_OPEN_FLAG_FOR_C_KEY);
defaultCaptchaOpen = getDefaultCaptchaOpenForC();
}
if(ObjectUtil.isNotEmpty(defaultCaptchaOpen)) {
if(Convert.toBool(defaultCaptchaOpen)) {
// 获取验证码
String validCode = authRegisterParam.getValidCode();
@ -968,7 +985,6 @@ public class AuthServiceImpl implements AuthService {
// 执行校验图形验证码
validValidCode(null, validCode, validCodeReqNo);
}
}
// SM2解密前端传来的密码
String passwordDecrypt = CommonCryptogramUtil.doSm2Decrypt(password);
// 根据账号获取用户信息根据B端或C端判断