feat: 新增短信配置 (#144)

This commit is contained in:
luoqiz
2025-03-17 14:35:17 +08:00
committed by GitHub
parent 1044b68eb8
commit 1a4716f3ba
36 changed files with 1957 additions and 2 deletions

View File

@@ -0,0 +1,43 @@
/*
* Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package top.continew.admin.controller.system;
import top.continew.starter.extension.crud.enums.Api;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.*;
import top.continew.starter.extension.crud.annotation.CrudRequestMapping;
import top.continew.admin.common.controller.BaseController;
import top.continew.admin.system.model.query.SmsConfigQuery;
import top.continew.admin.system.model.req.SmsConfigReq;
import top.continew.admin.system.model.resp.SmsConfigDetailResp;
import top.continew.admin.system.model.resp.SmsConfigResp;
import top.continew.admin.system.service.SmsConfigService;
/**
* 短信服务配置管理 API
*
* @author luoqiz
* @since 2025/03/15 18:41
*/
@Tag(name = "短信服务配置管理 API")
@RestController
@CrudRequestMapping(value = "/system/smsConfig", api = {Api.PAGE, Api.DETAIL, Api.ADD, Api.UPDATE, Api.DELETE,
Api.EXPORT})
public class SmsConfigController extends BaseController<SmsConfigService, SmsConfigResp, SmsConfigDetailResp, SmsConfigQuery, SmsConfigReq> {}

View File

@@ -0,0 +1,41 @@
/*
* Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package top.continew.admin.controller.system;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.RestController;
import top.continew.admin.common.controller.BaseController;
import top.continew.admin.system.model.query.SmsRecordQuery;
import top.continew.admin.system.model.req.SmsRecordReq;
import top.continew.admin.system.model.resp.SmsRecordDetailResp;
import top.continew.admin.system.model.resp.SmsRecordResp;
import top.continew.admin.system.service.SmsRecordService;
import top.continew.starter.extension.crud.annotation.CrudRequestMapping;
import top.continew.starter.extension.crud.enums.Api;
/**
* 短信记录管理 API
*
* @author luoqiz
* @since 2025/03/15 22:15
*/
@Tag(name = "短信记录管理 API")
@RestController
@CrudRequestMapping(value = "/system/smsRecord", api = {Api.PAGE, Api.DETAIL, Api.ADD, Api.UPDATE, Api.DELETE,
Api.EXPORT})
public class SmsRecordController extends BaseController<SmsRecordService, SmsRecordResp, SmsRecordDetailResp, SmsRecordQuery, SmsRecordReq> {
}

View File

@@ -82,7 +82,7 @@ VALUES
(1116, '修改状态', 1110, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:storage:updateStatus', 6, 1, 1, NOW()),
(1117, '设为默认存储', 1110, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:storage:setDefault', 7, 1, 1, NOW()),
( 1180, '终端管理', 1000, 2, '/system/client', 'SystemClient', 'system/client/index', NULL, 'mobile', b'0', b'0', b'0', NULL, 9, 1, 1, NOW()),
(1180, '终端管理', 1000, 2, '/system/client', 'SystemClient', 'system/client/index', NULL, 'mobile', b'0', b'0', b'0', NULL, 9, 1, 1, NOW()),
(1181, '列表', 1180, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:client:list', 1, 1, 1, NOW()),
(1182, '详情', 1180, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:client:detail', 2, 1, 1, NOW()),
(1183, '新增', 1180, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:client:add', 3, 1, 1, NOW()),
@@ -94,6 +94,18 @@ VALUES
(1192, '修改', 1190, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:config:update', 2, 1, 1, NOW()),
(1193, '重置', 1190, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:config:reset', 3, 1, 1, NOW()),
(1194, '短信配置', 1000, 2, '/system/sms/config', 'SmsConfig', 'system/sms/config/index', NULL, 'message', b'0', b'0', b'0', NULL, 6, 1, 1, NOW()),
(1195, '列表', 1194, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsConfig:list', 1, 1, 1, NOW()),
(1196, '详情', 1194, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsConfig:detail', 2, 1, 1, NOW()),
(1197, '新增', 1194, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsConfig:add', 3, 1, 1, NOW()),
(1198, '修改', 1194, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsConfig:update', 4, 1, 1, NOW()),
(1199, '删除', 1194, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsConfig:delete', 5, 1, 1, NOW()),
(1200, '导出', 1194, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsConfig:export', 6, 1, 1, NOW()),
(1201, '短信记录', 1000, 2, '/system/sms/record', 'SmsRecord', 'system/sms/record/index', NULL, NULL, b'0', b'0', b'0', NULL, 1, 1, 1, NOW()),
(1202, '列表', 1201, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsRecord:list', 1, 1, 1, NOW()),
(1203, '删除', 1201, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsRecord:delete', 5, 1, 1, NOW()),
(1204, '导出', 1201, 3, NULL, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:smsRecord:export', 6, 1, 1, NOW()),
(2000, '系统监控', 0, 1, '/monitor', 'Monitor', 'Layout', '/monitor/online', 'computer', b'0', b'0', b'0', NULL, 2, 1, 1, NOW()),
(2010, '在线用户', 2000, 2, '/monitor/online', 'MonitorOnline', 'monitor/online/index', NULL, 'user', b'0', b'0', b'0', NULL, 1, 1, 1, NOW()),
(2011, '列表', 2010, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'monitor:online:list', 1, 1, 1, NOW()),

View File

@@ -321,3 +321,42 @@ CREATE TABLE IF NOT EXISTS `sys_client` (
PRIMARY KEY (`id`),
UNIQUE INDEX `uk_client_id`(`client_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='终端表';
CREATE TABLE IF NOT EXISTS `sys_sms_config` (
`id` bigint NOT NULL COMMENT 'ID',
`name` varchar(255) NOT NULL COMMENT '名称',
`supplier` varchar(50) NOT NULL COMMENT '厂商名称标识',
`access_key_id` varchar(255) NOT NULL COMMENT 'Access Key 或 API Key',
`access_key_secret` varchar(255) NOT NULL COMMENT 'Access Secret 或 API Secret',
`signature` varchar(100) NOT NULL COMMENT '短信签名',
`template_id` varchar(50) NULL DEFAULT NULL COMMENT '模板 ID',
`weight` int NULL DEFAULT 1 COMMENT '负载均衡权重',
`retry_interval` int NULL DEFAULT 5 COMMENT '短信自动重试间隔时间(秒)',
`max_retries` int NULL DEFAULT 0 COMMENT '短信重试次数',
`maximum` int NULL DEFAULT 10000 COMMENT '当前厂商的发送数量上限',
`supplier_config` varchar(10000) NULL DEFAULT NULL COMMENT '各个厂商独立配置',
`is_enable` bit(1) NOT NULL DEFAULT b'1' COMMENT '是否启用',
`create_user` bigint NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` bigint COMMENT '修改人',
`update_time` datetime COMMENT '修改时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_sys_sms_config_create_user`(`create_user` ASC) USING BTREE,
INDEX `idx_sys_sms_config_update_user`(`update_user` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COMMENT = '短信服务配置表';
CREATE TABLE IF NOT EXISTS `sys_sms_record` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID',
`config_id` bigint NOT NULL COMMENT '配置id',
`phone` varchar(25) NOT NULL COMMENT '手机号',
`params` varchar(2048) NULL DEFAULT NULL COMMENT '参数配置',
`status` bit(1) NOT NULL COMMENT '发送状态',
`res_msg` varchar(2048) NOT NULL COMMENT '返回数据',
`create_user` bigint NOT NULL COMMENT '创建人',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_user` bigint COMMENT '修改人',
`update_time` datetime COMMENT '修改时间',
PRIMARY KEY (`id`) USING BTREE,
INDEX `idx_sys_sms_record_create_user`(`create_user` ASC) USING BTREE,
INDEX `idx_sys_sms_record_update_user`(`update_user` ASC) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COMMENT = '短信记录表';

View File

@@ -94,6 +94,18 @@ VALUES
(1192, '修改', 1190, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:config:update', 2, 1, 1, NOW()),
(1193, '重置', 1190, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:config:reset', 3, 1, 1, NOW()),
(1194, '短信配置', 1000, 2, '/system/sms/config', 'SmsConfig', 'system/sms/config/index', NULL, 'message', false, false, false, NULL, 6, 1, 1, NOW()),
(1195, '列表', 1194, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsConfig:list', 1, 1, 1, NOW()),
(1196, '详情', 1194, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsConfig:detail', 2, 1, 1, NOW()),
(1197, '新增', 1194, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsConfig:add', 3, 1, 1, NOW()),
(1198, '修改', 1194, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsConfig:update', 4, 1, 1, NOW()),
(1199, '删除', 1194, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsConfig:delete', 5, 1, 1, NOW()),
(1200, '导出', 1194, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsConfig:export', 6, 1, 1, NOW()),
(1201, '短信记录', 1000, 2, '/system/sms/record', 'SmsRecord', 'system/sms/record/index', NULL, NULL, false, false, false, NULL, 1, 1, 1, NOW()),
(1202, '列表', 1201, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsRecord:list', 1, 1, 1, NOW()),
(1203, '删除', 1201, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsRecord:delete', 5, 1, 1, NOW()),
(1204, '导出', 1201, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'system:smsRecord:export', 6, 1, 1, NOW()),
(2000, '系统监控', 0, 1, '/monitor', 'Monitor', 'Layout', '/monitor/online', 'computer', false, false, false, NULL, 2, 1, 1, NOW()),
(2010, '在线用户', 2000, 2, '/monitor/online', 'MonitorOnline', 'monitor/online/index', NULL, 'user', false, false, false, NULL, 1, 1, 1, NOW()),
(2011, '列表', 2010, 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'monitor:online:list', 1, 1, 1, NOW()),

View File

@@ -540,4 +540,72 @@ COMMENT ON COLUMN "sys_client"."create_user" IS '创建人';
COMMENT ON COLUMN "sys_client"."create_time" IS '创建时间';
COMMENT ON COLUMN "sys_client"."update_user" IS '修改人';
COMMENT ON COLUMN "sys_client"."update_time" IS '修改时间';
COMMENT ON TABLE "sys_client" IS '终端表';
COMMENT ON TABLE "sys_client" IS '终端表';
CREATE TABLE "sys_sms_config" (
"id" int8 NOT NULL,
"name" varchar(255) NOT NULL,
"supplier" varchar(50) NOT NULL,
"access_key_id" varchar(255) NOT NULL,
"access_key_secret" varchar(255) NOT NULL,
"signature" varchar(100) NOT NULL,
"template_id" varchar(50) ,
"weight" int4,
"retry_interval" int4,
"max_retries" int4,
"maximum" int4,
"supplier_config" varchar(10000) ,
"is_enable" bool NOT NULL,
"create_user" int8 NOT NULL,
"create_time" timestamp(6) NOT NULL,
"update_user" int8,
"update_time" timestamp(6),
PRIMARY KEY ("id")
);
CREATE INDEX "idx_sys_sms_config_create_user" ON "sys_sms_config" USING btree ("create_user");
CREATE INDEX "idx_sys_sms_config_update_user" ON "sys_sms_config" USING btree ("update_user");
COMMENT ON COLUMN "sys_sms_config"."id" IS 'ID';
COMMENT ON COLUMN "sys_sms_config"."name" IS '名称';
COMMENT ON COLUMN "sys_sms_config"."supplier" IS '厂商名称标识';
COMMENT ON COLUMN "sys_sms_config"."access_key_id" IS 'Access Key 或 API Key';
COMMENT ON COLUMN "sys_sms_config"."access_key_secret" IS 'Access Secret 或 API Secret';
COMMENT ON COLUMN "sys_sms_config"."signature" IS '短信签名';
COMMENT ON COLUMN "sys_sms_config"."template_id" IS '模板 ID';
COMMENT ON COLUMN "sys_sms_config"."weight" IS '负载均衡权重';
COMMENT ON COLUMN "sys_sms_config"."retry_interval" IS '短信自动重试间隔时间(秒)';
COMMENT ON COLUMN "sys_sms_config"."max_retries" IS '短信重试次数';
COMMENT ON COLUMN "sys_sms_config"."maximum" IS '当前厂商的发送数量上限';
COMMENT ON COLUMN "sys_sms_config"."supplier_config" IS '各个厂商独立配置';
COMMENT ON COLUMN "sys_sms_config"."is_enable" IS '是否启用';
COMMENT ON COLUMN "sys_sms_config"."create_user" IS '创建人';
COMMENT ON COLUMN "sys_sms_config"."create_time" IS '创建时间';
COMMENT ON COLUMN "sys_sms_config"."update_user" IS '修改人';
COMMENT ON COLUMN "sys_sms_config"."update_time" IS '修改时间';
COMMENT ON TABLE "sys_sms_config" IS '短信服务配置表';
CREATE TABLE "sys_sms_record" (
"id" int8 NOT NULL,
"config_id" int8 NOT NULL,
"phone" varchar(25) NOT NULL,
"params" varchar(2048),
"status" varchar(1),
"res_msg" varchar(2048),
"create_user" int8,
"create_time" timestamp(6) NOT NULL,
"update_user" int8,
"update_time" timestamp(6),
PRIMARY KEY ("id")
);
CREATE INDEX "idx_sys_sms_record_create_user" ON "sys_sms_record" USING btree ("create_user");
CREATE INDEX "idx_sys_sms_record_update_user" ON "sys_sms_record" USING btree ( "update_user" );
COMMENT ON COLUMN "sys_sms_record"."id" IS 'ID';
COMMENT ON COLUMN "sys_sms_record"."config_id" IS '配置id';
COMMENT ON COLUMN "sys_sms_record"."phone" IS '手机号';
COMMENT ON COLUMN "sys_sms_record"."params" IS '参数配置';
COMMENT ON COLUMN "sys_sms_record"."status" IS '发送状态';
COMMENT ON COLUMN "sys_sms_record"."res_msg" IS '返回数据';
COMMENT ON COLUMN "sys_sms_record"."create_user" IS '创建人';
COMMENT ON COLUMN "sys_sms_record"."create_time" IS '创建时间';
COMMENT ON COLUMN "sys_sms_record"."update_user" IS '修改人';
COMMENT ON COLUMN "sys_sms_record"."update_time" IS '修改时间';
COMMENT ON TABLE "sys_sms_record" IS '短信记录表';