feat: 短信验证码新增固定验证码的验证

This commit is contained in:
weizhiqiang 2024-09-17 10:06:58 +08:00
parent a06ffe5669
commit a918ad708f
2 changed files with 17 additions and 1 deletions
skyeye-promote
skyeye-userauth/src/main/java/com/skyeye/sms/service/impl
skyeye-web/src/main/resources

View file

@ -23,6 +23,7 @@ import com.skyeye.sms.entity.SmsCodeValidateReq;
import com.skyeye.sms.service.SmsCodeService;
import com.skyeye.sms.service.SmsSendService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import static cn.hutool.core.util.RandomUtil.randomInt;
@ -59,6 +60,12 @@ public class SmsCodeServiceImpl implements SmsCodeService {
*/
private static final String MOBILE_SMS_DAY_SEND_NUM = "sms:mobile:daySendNum:%s:%s";
@Value("${sms.template.enabled}")
private Boolean smsTemplateEnabled;
@Value("${sms.template.code}")
private String smsTemplateCode;
@Override
public void sendSmsCodeReq(InputObject inputObject, OutputObject outputObject) {
SmsCodeSendReq smsCodeSendReq = inputObject.getParams(SmsCodeSendReq.class);
@ -69,6 +76,9 @@ public class SmsCodeServiceImpl implements SmsCodeService {
public void sendSmsCodeReq(SmsCodeSendReq smsCodeSendReq) {
SmsSceneEnum sceneEnum = SmsSceneEnum.getCodeByScene(smsCodeSendReq.getScene());
Assert.notNull(sceneEnum, "验证码场景({}) 查找不到配置", smsCodeSendReq.getScene());
if (smsTemplateEnabled) {
return;
}
// 创建验证码
String code = createSmsCode(smsCodeSendReq.getMobile(), smsCodeSendReq.getScene());
// 发送验证码
@ -125,6 +135,12 @@ public class SmsCodeServiceImpl implements SmsCodeService {
@Override
public void validateSmsCode(SmsCodeValidateReq smsCodeValidateReq) {
if (smsTemplateEnabled) {
if (!StrUtil.equals(smsTemplateCode, smsCodeValidateReq.getSmsCode())) {
throw new CustomException("验证码错误");
}
return;
}
String chcheCode = validateSmsCode0(smsCodeValidateReq.getMobile(), smsCodeValidateReq.getScene());
if (!StrUtil.equals(chcheCode, smsCodeValidateReq.getSmsCode())) {
throw new CustomException("验证码错误");

View file

@ -56,5 +56,5 @@ skyeye:
expire-times: 10m
send-frequency: 1m
send-maximum-quantity-per-day: 10
begin-code: 9999 # 这里配置 9999 的原因是,测试方便。
begin-code: 1 # 这里配置 9999 的原因是,测试方便。
end-code: 9999 # 这里配置 9999 的原因是,测试方便。