diff --git a/ruoyi-ui/src/api/system/sms/smsTemplate.js b/ruoyi-ui/src/api/system/sms/smsTemplate.js
new file mode 100644
index 000000000..b68998e1e
--- /dev/null
+++ b/ruoyi-ui/src/api/system/sms/smsTemplate.js
@@ -0,0 +1,54 @@
+import request from '@/utils/request'
+
+// 创建短信模板
+export function createSmsTemplate(data) {
+ return request({
+ url: '/system/sms-template/create',
+ method: 'post',
+ data: data
+ })
+}
+
+// 更新短信模板
+export function updateSmsTemplate(data) {
+ return request({
+ url: '/system/sms-template/update',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除短信模板
+export function deleteSmsTemplate(id) {
+ return request({
+ url: '/system/sms-template/delete?id=' + id,
+ method: 'delete'
+ })
+}
+
+// 获得短信模板
+export function getSmsTemplate(id) {
+ return request({
+ url: '/system/sms-template/get?id=' + id,
+ method: 'get'
+ })
+}
+
+// 获得短信模板分页
+export function getSmsTemplatePage(query) {
+ return request({
+ url: '/system/sms-template/page',
+ method: 'get',
+ params: query
+ })
+}
+
+// 导出短信模板 Excel
+export function exportSmsTemplateExcel(query) {
+ return request({
+ url: '/system/sms-template/export-excel',
+ method: 'get',
+ params: query,
+ responseType: 'blob'
+ })
+}
diff --git a/ruoyi-ui/src/utils/dict.js b/ruoyi-ui/src/utils/dict.js
index bf6d72587..1a61a989a 100644
--- a/ruoyi-ui/src/utils/dict.js
+++ b/ruoyi-ui/src/utils/dict.js
@@ -18,6 +18,7 @@ export const DICT_TYPE = {
SYS_LOGIN_RESULT: 'sys_login_result',
SYS_CONFIG_TYPE: 'sys_config_type',
SYS_SMS_CHANNEL_CODE: 'sys_sms_channel_code',
+ SYS_SMS_TEMPLATE_TYPE: 'sys_sms_template_type',
INF_REDIS_TIMEOUT_TYPE: 'inf_redis_timeout_type',
INF_JOB_STATUS: 'inf_job_status',
diff --git a/ruoyi-ui/src/views/system/sms/smsTemplate.vue b/ruoyi-ui/src/views/system/sms/smsTemplate.vue
new file mode 100644
index 000000000..b8a3a7b17
--- /dev/null
+++ b/ruoyi-ui/src/views/system/sms/smsTemplate.vue
@@ -0,0 +1,306 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+
+ 新增
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+ {{ getDictDataLabel(DICT_TYPE.SYS_SMS_TEMPLATE_TYPE, scope.row.type) }}
+
+ >
+
+
+ {{ getDictDataLabel(DICT_TYPE.SYS_COMMON_STATUS, scope.row.status) }}
+
+ >
+
+
+
+
+ {{ getDictDataLabel(DICT_TYPE.SYS_SMS_CHANNEL_CODE, scope.row.channelCode) }}
+
+
+
+
+ {{ parseTime(scope.row.createTime) }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{dict.label}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/java/cn/iocoder/dashboard/modules/system/controller/sms/vo/template/SysSmsTemplateBaseVO.java b/src/main/java/cn/iocoder/dashboard/modules/system/controller/sms/vo/template/SysSmsTemplateBaseVO.java
index f2ef6ac16..584050d55 100644
--- a/src/main/java/cn/iocoder/dashboard/modules/system/controller/sms/vo/template/SysSmsTemplateBaseVO.java
+++ b/src/main/java/cn/iocoder/dashboard/modules/system/controller/sms/vo/template/SysSmsTemplateBaseVO.java
@@ -12,8 +12,8 @@ import javax.validation.constraints.NotNull;
@Data
public class SysSmsTemplateBaseVO {
- @ApiModelProperty(value = "短信签名", required = true, example = "1", notes = "参见 SysSmsTemplateTypeEnum 枚举类")
- @NotNull(message = "短信签名不能为空")
+ @ApiModelProperty(value = "短信类型", required = true, example = "1", notes = "参见 SysSmsTemplateTypeEnum 枚举类")
+ @NotNull(message = "短信类型不能为空")
private Integer type;
@ApiModelProperty(value = "开启状态", required = true, example = "1", notes = "参见 CommonStatusEnum 枚举类")