Commit c9f6494bb40a5a6d008f7366e0e9bbd9e88d4087

Authored by YunaiV
1 parent ae0227c1

【优化】修改短信模板的渠道为云片时,校验 API 模板编号为整数

yudao-framework/yudao-spring-boot-starter-biz-sms/src/main/java/cn/iocoder/yudao/framework/sms/core/client/impl/yunpian/YunpianSmsClient.java
... ... @@ -2,9 +2,11 @@ package cn.iocoder.yudao.framework.sms.core.client.impl.yunpian;
2 2  
3 3 import cn.hutool.core.collection.CollUtil;
4 4 import cn.hutool.core.lang.Assert;
  5 +import cn.hutool.core.util.NumberUtil;
5 6 import cn.hutool.core.util.StrUtil;
6 7 import cn.hutool.core.util.URLUtil;
7 8 import cn.iocoder.yudao.framework.common.core.KeyValue;
  9 +import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
8 10 import cn.iocoder.yudao.framework.sms.core.client.SmsCommonResult;
9 11 import cn.iocoder.yudao.framework.sms.core.client.dto.SmsReceiveRespDTO;
10 12 import cn.iocoder.yudao.framework.sms.core.client.dto.SmsSendRespDTO;
... ... @@ -12,7 +14,6 @@ import cn.iocoder.yudao.framework.sms.core.client.dto.SmsTemplateRespDTO;
12 14 import cn.iocoder.yudao.framework.sms.core.client.impl.AbstractSmsClient;
13 15 import cn.iocoder.yudao.framework.sms.core.enums.SmsTemplateAuditStatusEnum;
14 16 import cn.iocoder.yudao.framework.sms.core.property.SmsChannelProperties;
15   -import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
16 17 import com.fasterxml.jackson.annotation.JsonFormat;
17 18 import com.fasterxml.jackson.annotation.JsonProperty;
18 19 import com.google.common.annotations.VisibleForTesting;
... ... @@ -105,6 +106,9 @@ public class YunpianSmsClient extends AbstractSmsClient {
105 106 @Override
106 107 protected SmsCommonResult<SmsTemplateRespDTO> doGetSmsTemplate(String apiTemplateId) throws Throwable {
107 108 return invoke(() -> {
  109 + if (!NumberUtil.isNumber(apiTemplateId)) {
  110 + throw new IllegalArgumentException("云片的 API 模板编号必须为整数");
  111 + }
108 112 Map<String, String> request = new HashMap<>();
109 113 request.put(YunpianConstant.APIKEY, properties.getApiKey());
110 114 request.put(YunpianConstant.TPL_ID, apiTemplateId);
... ...