# 文件系统 ## 数据结构 ### 1.文件信息表(dt_file_info) | 字段 | 字段说明 | 数据类型 | 备注 | | ------------- | --------------- | ----------- | -------------------- | | id | 主键 | varchar(40) | 32位UUID | | group_code | 集团编码 | varchar(40) | | | file_name | 文件名称 | varchar(50) | | | file_md5 | 文件内容的md5值 | varchar(50) | | | business_id | 关联业务Id | varchar(50) | | | expire_date | 保留期限 | char(14) | 格式为yyyyMMddHHmmss | | creator | 创建人账号id | varchar(32) | | | creation_time | 创建时间 | char(14) | 格式为yyyyMMddHHmmss | | modified_time | 最后更新时间 | char(14) | 格式为yyyyMMddHHmmss | | modifier | 最后更新账号id | varchar(32) | | | valid | 合法标识 | tinyint(4) | 0-无效,1-有效 | | ts | 乐观锁 | timestamp | | ### 2.文件的MD5信息(dt_file_md5) | 字段 | 字段说明 | 数据类型 | 备注 | | ------------- | --------------- | ------------ | ----------------------------- | | id | 主键 | varchar(40) | 32位UUID | | file_type | 文件类型 | varchar(2) | 0-文件,1-目录 | | file_bucket | 文件分组 | varchar(40) | 默认为应用名 | | file_path | 文件路径 | varchar(200) | 含文件名称 - 对应文件存储路径 | | file_size | 文件大小 | varchar(40) | | | file_md5 | 文件内容的md5值 | varchar(50) | | | creator | 创建人账号id | varchar(32) | | | creation_time | 创建时间 | char(14) | 格式为yyyyMMddHHmmss | | modified_time | 最后更新时间 | char(14) | 格式为yyyyMMddHHmmss | | modifier | 最后更新账号id | varchar(32) | | | valid | 合法标识 | tinyint(4) | 0-无效,1-有效 | | ts | 乐观锁 | timestamp | | ## DDL语句 ### 文件信息表 ```sql CREATE TABLE IF NOT EXISTS `dt_file_info` ( `id` varchar(40) NOT NULL COMMENT '主键', `group_code` varchar(40) NOT NULL COMMENT '集团编码', `file_name` varchar(128) NOT NULL COMMENT '文件名称', `business_id` varchar(32) NULL DEFAULT NULL COMMENT '关联业务Id', `expire_date` char(8) NULL DEFAULT NULL COMMENT '保留期限', `creator` varchar(32) DEFAULT NULL COMMENT '创建人', `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间', `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人', `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间', `valid` tinyint DEFAULT 1 COMMENT '合法标识', `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='文件信息'; ``` ### 文件MD5信息表 ```sql CREATE TABLE IF NOT EXISTS `dt_file_md5` ( `id` varchar(40) NOT NULL COMMENT '主键', `file_type` varchar(2) NOT NULL DEFAULT '0' COMMENT '文件类型:0-文件,1-目录', `file_bucket` varchar(64) NOT NULL DEFAULT '0' COMMENT '文件分组:默认为应用名', `file_path` varchar(512) NULL DEFAULT NULL COMMENT '文件路径含文件名称-对应文件存储路径', `file_size` int(10) NOT NULL DEFAULT 0 COMMENT '文件大小', `file_md5` varchar(64) NULL DEFAULT NULL COMMENT '文件的md5值', `upload_status` tinyint NOT NULL DEFAULT 0 COMMENT '文件上传状态,0.上传完成,1.已上传部分', `creator` varchar(32) DEFAULT NULL COMMENT '创建人', `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间', `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人', `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间', `valid` tinyint DEFAULT 1 COMMENT '合法标识', `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='文件的MD5信息'; ```