phones);
}
diff --git a/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/domain/RemoteSms.java b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/domain/RemoteSms.java
index 430eb5bb..3e35d5ba 100644
--- a/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/domain/RemoteSms.java
+++ b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/domain/RemoteSms.java
@@ -19,15 +19,15 @@ public class RemoteSms implements Serializable {
/**
* 是否成功
*/
- private Boolean isSuccess;
+ private Boolean success;
/**
- * 响应消息
+ * 配置标识名 如未配置取对应渠道名例如 Alibaba
*/
- private String message;
+ private String configId;
/**
- * 实际响应体
+ * 厂商原返回体
*
* 可自行转换为 SDK 对应的 SendSmsResponse
*/
diff --git a/ruoyi-common/ruoyi-common-sms/pom.xml b/ruoyi-common/ruoyi-common-sms/pom.xml
index 64e52425..292edb6e 100644
--- a/ruoyi-common/ruoyi-common-sms/pom.xml
+++ b/ruoyi-common/ruoyi-common-sms/pom.xml
@@ -20,13 +20,12 @@
org.dromara.sms4j
sms4j-spring-boot-starter
-
-
-
- com.alibaba
- fastjson
-
-
+
+
+
+
+ org.dromara
+ ruoyi-common-redis
diff --git a/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/config/SmsAutoConfiguration.java b/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/config/SmsAutoConfiguration.java
index 29f60fc5..0346f11a 100644
--- a/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/config/SmsAutoConfiguration.java
+++ b/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/config/SmsAutoConfiguration.java
@@ -1,14 +1,24 @@
package org.dromara.common.sms.config;
+import org.dromara.common.redis.config.RedisConfiguration;
+import org.dromara.common.sms.core.dao.PlusSmsDao;
+import org.dromara.sms4j.api.dao.SmsDao;
import org.springframework.boot.autoconfigure.AutoConfiguration;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Primary;
/**
- * 短信配置类(暂时没用 预留扩展)
+ * 短信配置类
*
- * @author Lion Li
- * @version 4.2.0
+ * @author Feng
*/
-@AutoConfiguration
+@AutoConfiguration(after = {RedisConfiguration.class})
public class SmsAutoConfiguration {
+ @Primary
+ @Bean
+ public SmsDao smsDao() {
+ return new PlusSmsDao();
+ }
+
}
diff --git a/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java b/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java
new file mode 100644
index 00000000..91d8d243
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-sms/src/main/java/org/dromara/common/sms/core/dao/PlusSmsDao.java
@@ -0,0 +1,72 @@
+package org.dromara.common.sms.core.dao;
+
+import org.dromara.common.core.constant.GlobalConstants;
+import org.dromara.common.redis.utils.RedisUtils;
+import org.dromara.sms4j.api.dao.SmsDao;
+
+import java.time.Duration;
+
+/**
+ * SmsDao缓存配置 (使用框架自带RedisUtils实现 协议统一)
+ *
主要用于短信重试和拦截的缓存
+ *
+ * @author Feng
+ */
+public class PlusSmsDao implements SmsDao {
+
+ /**
+ * 存储
+ *
+ * @param key 键
+ * @param value 值
+ * @param cacheTime 缓存时间(单位:秒)
+ */
+ @Override
+ public void set(String key, Object value, long cacheTime) {
+ RedisUtils.setCacheObject(GlobalConstants.GLOBAL_REDIS_KEY + key, value, Duration.ofSeconds(cacheTime));
+ }
+
+ /**
+ * 存储
+ *
+ * @param key 键
+ * @param value 值
+ */
+ @Override
+ public void set(String key, Object value) {
+ RedisUtils.setCacheObject(GlobalConstants.GLOBAL_REDIS_KEY + key, value, true);
+ }
+
+ /**
+ * 读取
+ *
+ * @param key 键
+ * @return 值
+ */
+ @Override
+ public Object get(String key) {
+ return RedisUtils.getCacheObject(GlobalConstants.GLOBAL_REDIS_KEY + key);
+ }
+
+ /**
+ * remove
+ *
根据key移除缓存
+ *
+ * @param key 缓存键
+ * @return 被删除的value
+ * @author :Wind
+ */
+ @Override
+ public Object remove(String key) {
+ return RedisUtils.deleteObject(GlobalConstants.GLOBAL_REDIS_KEY + key);
+ }
+
+ /**
+ * 清空
+ */
+ @Override
+ public void clean() {
+ RedisUtils.deleteObject(GlobalConstants.GLOBAL_REDIS_KEY + "sms:");
+ }
+
+}
diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/SmsController.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/SmsController.java
index f14fdb73..256c4383 100644
--- a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/SmsController.java
+++ b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/SmsController.java
@@ -5,7 +5,6 @@ import org.dromara.common.core.domain.R;
import org.dromara.sms4j.api.SmsBlend;
import org.dromara.sms4j.api.entity.SmsResponse;
import org.dromara.sms4j.core.factory.SmsFactory;
-import org.dromara.sms4j.provider.enumerate.SupplierType;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -35,7 +34,7 @@ public class SmsController {
public R