新增凭证管理

This commit is contained in:
2026-08-12 12:42:07 +08:00
parent 7f31952bff
commit 4ad3108c4d
28 changed files with 732 additions and 2 deletions
@@ -0,0 +1,42 @@
-- 文件服务数据库:分片上传任务主表。
-- 本脚本需与 blade_file_task_part 表配套执行;请在 blade-file 服务配置的数据源中运行。
CREATE TABLE IF NOT EXISTS `blade_file_task` (
`id` bigint NOT NULL COMMENT '主键ID',
`md5` varchar(128) NOT NULL COMMENT '文件MD5',
`object_key` varchar(1000) NOT NULL COMMENT '对象存储对象键',
`attachment_name` varchar(500) NOT NULL COMMENT '附件名称',
`suffix` varchar(50) DEFAULT NULL COMMENT '文件后缀',
`size` bigint NOT NULL COMMENT '文件大小,单位:字节',
`chunk_size` int NOT NULL COMMENT '分片大小,单位:字节',
`chunk_total` int NOT NULL COMMENT '分片总数',
`current_index` int NOT NULL DEFAULT 0 COMMENT '已完成分片数',
`upload_id` varchar(255) DEFAULT NULL COMMENT '对象存储上传任务ID',
`status` varchar(20) NOT NULL DEFAULT 'uploading' COMMENT '状态:uploading、completed、failed、paused',
`business_type` varchar(50) DEFAULT NULL COMMENT '业务类型,例如 voucher',
`business_id` varchar(64) DEFAULT NULL COMMENT '业务标识,例如凭证批次号',
`create_user_name` varchar(50) DEFAULT NULL COMMENT '创建人名称',
`create_user` bigint DEFAULT NULL COMMENT '创建人ID',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_user_name` varchar(50) DEFAULT NULL COMMENT '更新人名称',
`update_user` bigint DEFAULT NULL COMMENT '更新人ID',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
`is_deleted` tinyint NOT NULL DEFAULT 0 COMMENT '是否删除:0否、1是',
PRIMARY KEY (`id`),
KEY `idx_file_task_md5` (`md5`),
KEY `idx_file_task_business` (`business_type`, `business_id`),
KEY `idx_file_task_create_user_time` (`create_user`, `create_time`),
KEY `idx_file_task_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文件分片上传任务';
CREATE TABLE IF NOT EXISTS `blade_file_task_part` (
`id` bigint NOT NULL COMMENT '主键ID',
`file_task_id` bigint NOT NULL COMMENT '文件上传任务ID',
`part_number` int NOT NULL COMMENT '分片编号,从1开始',
`etag` varchar(255) NOT NULL COMMENT '分片ETag',
`create_user` bigint DEFAULT NULL COMMENT '创建人ID',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_file_task_part` (`file_task_id`, `part_number`),
KEY `idx_file_task_part_task` (`file_task_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文件分片上传任务分片记录';