serv-权限+文件下载

This commit is contained in:
2025-10-18 17:57:14 +08:00
parent e0f4815d48
commit b3424e554f
30 changed files with 235 additions and 105 deletions

View File

@@ -87,26 +87,39 @@ CREATE TABLE `tb_sys_notification` (
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='系统通知表';
-- 文件上传记录表
-- --------------------------------------------------------
-- 文件上传记录表
-- --------------------------------------------------------
DROP TABLE IF EXISTS `tb_sys_file`;
CREATE TABLE `tb_sys_file` (
`id` VARCHAR(50) NOT NULL COMMENT '文件ID',
`file_name` VARCHAR(255) NOT NULL COMMENT '文件',
`original_name` VARCHAR(255) NOT NULL COMMENT '原始文件名',
`file_path` VARCHAR(500) NOT NULL COMMENT '文件路径',
`file_url` VARCHAR(500) DEFAULT NULL COMMENT '访问URL',
`file_size` BIGINT(20) DEFAULT 0 COMMENT '文件大小(字节)',
`file_type` VARCHAR(50) DEFAULT NULL COMMENT '文件类型',
`mime_type` VARCHAR(100) DEFAULT NULL COMMENT 'MIME类型',
`module` VARCHAR(50) DEFAULT NULL COMMENT '所属模块',
`business_id` VARCHAR(50) DEFAULT NULL COMMENT '业务ID',
`uploader` VARCHAR(50) DEFAULT NULL COMMENT '上传者',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '上传时间',
PRIMARY KEY (`id`),
KEY `idx_module` (`module`),
KEY `idx_business` (`business_id`),
KEY `idx_uploader` (`uploader`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='文件上传记录表';
CREATE TABLE IF NOT EXISTS `tb_sys_file` (
`id` VARCHAR(50) NOT NULL COMMENT '主键ID',
`file_id` VARCHAR(64) NOT NULL COMMENT '文件ID',
`file_name` VARCHAR(255) NOT NULL COMMENT '存储文件名UUID生成',
`original_name` VARCHAR(255) NOT NULL COMMENT '原始文件名',
`file_path` VARCHAR(500) NOT NULL COMMENT '文件存储路径',
`file_url` VARCHAR(500) DEFAULT NULL COMMENT '文件访问URL',
`file_size` BIGINT NOT NULL COMMENT '文件大小(字节)',
`file_type` VARCHAR(50) DEFAULT NULL COMMENT '文件类型image、document、video等',
`mime_type` VARCHAR(100) DEFAULT NULL COMMENT 'MIME类型image/jpeg',
`storage_type` VARCHAR(20) NOT NULL DEFAULT 'local' COMMENT '存储类型local-本地存储、minio-MinIO存储、oss-阿里云OSS等',
`module` VARCHAR(50) DEFAULT NULL COMMENT '所属模块user、news、course等',
`business_id` VARCHAR(64) DEFAULT NULL COMMENT '业务ID关联的业务数据ID',
`uploader` VARCHAR(64) DEFAULT NULL COMMENT '上传者用户ID',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`delete_time` DATETIME DEFAULT NULL COMMENT '删除时间',
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除0-否1-是)',
PRIMARY KEY (`id`),
INDEX `idx_file_id` (`file_id`),
INDEX `idx_file_name` (`file_name`),
INDEX `idx_uploader` (`uploader`),
INDEX `idx_module_business` (`module`, `business_id`),
INDEX `idx_storage_type` (`storage_type`),
INDEX `idx_deleted` (`deleted`),
INDEX `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件上传记录表';
-- 数据字典表
DROP TABLE IF EXISTS `tb_sys_dict_type`;