Skip to content

文件管理模块 FMS (File Management System)

更新: 2/21/2025 字数: 0 字 时长: 0 分钟

数据库表设计

sql
CREATE TABLE `file_tree`
(
  id             bigint auto_increment comment 'id',
  uniq_code      bigint       default 0                 not null comment '唯一标识',
  file_name      varchar(50)  default ''                not null comment '文件名称',
  file_hash      varchar(256) default ''                not null comment '文件hash',
  file_path      varchar(256) default ''                not null comment '文件路径',
  file_size      bigint       default 0                 not null comment '文件大小',
  content_type   varchar(50)  default ''                not null comment '文件类型',
  mime_type      varchar(50)  default ''                not null comment '文件类型',
  thumbnail_hash varchar(256) default ''                not null comment '缩略图hash',
  trans_hash     varchar(256) default ''                not null comment '转码文件hash',
  create_by      bigint       default 0                 not null comment '创建人',
  create_time    datetime     default CURRENT_TIMESTAMP not null comment '创建时间',
  update_by      bigint       default 0                 not null comment '更新人',
  update_time    datetime     default CURRENT_TIMESTAMP null on update CURRENT_TIMESTAMP comment '更新时间',
  deleted        int          default 0                 not null comment '是否删除, 0未删除 1已删除',
  primary key (id),
  unique (uniq_code)
) comment '文件目录';
sql
CREATE TABLE `file_tag`
(
  id          bigint auto_increment comment 'id',
  uniq_code   bigint      default 0                 not null comment '唯一标识',
  tag_name    varchar(50) default ''                not null comment '标签名称',
  tag_color   varchar(50) default ''                not null comment '标签颜色',
  create_by   bigint      default 0                 not null comment '创建人',
  create_time datetime    default CURRENT_TIMESTAMP not null comment '创建时间',
  update_by   bigint      default 0                 not null comment '更新人',
  update_time datetime    default CURRENT_TIMESTAMP null on update CURRENT_TIMESTAMP comment '更新时间',
  deleted     int         default 0                 not null comment '是否删除, 0未删除 1已删除',
  primary key (id)
) comment '文件标签';
sql
CREATE TABLE `file_tag_relation`
(
  id          bigint auto_increment comment 'id',
  uniq_code   bigint       default 0                 not null comment '唯一标识',
  tag_code    bigint       default 0                 not null comment '标签code',
  file_url    varchar(256) default ''                not null comment '文件url',
  create_by   bigint       default 0                 not null comment '创建人',
  create_time datetime     default CURRENT_TIMESTAMP not null comment '创建时间',
  update_by   bigint       default 0                 not null comment '更新人',
  update_time datetime     default CURRENT_TIMESTAMP null on update CURRENT_TIMESTAMP comment '更新时间',
  deleted     int          default 0                 not null comment '是否删除, 0未删除 1已删除',
  primary key (id)
) comment '文件标签关系';
sql
CREATE TABLE `file_comment`
(
  id           bigint auto_increment comment 'id',
  uniq_code    bigint       default 0                 not null comment '唯一标识',
  file_url     varchar(256) default ''                not null comment '文件url',
  comment_text varchar(256) default ''                not null comment '评论内容',
  parent_code  bigint       default 0                 not null comment '父评论code',
  enable_touch int          default 1                 not null comment '是否公开, 0未公开 1已公开',
  enable_top   int          default 0                 not null comment '是否置顶, 0未置顶 1已置顶',
  enable_reply int          default 1                 not null comment '是否允许回复, 0未允许 1已允许',
  enable_like  int          default 1                 not null comment '是否允许点赞, 0未允许 1已允许',
  status_code  int          default 0                 not null comment '数据状态, 0未审核 1已审核',
  create_by    bigint       default 0                 not null comment '创建人',
  create_time  datetime     default CURRENT_TIMESTAMP not null comment '创建时间',
  update_by    bigint       default 0                 not null comment '更新人',
  update_time  datetime     default CURRENT_TIMESTAMP null on update CURRENT_TIMESTAMP comment '更新时间',
  deleted      int          default 0                 not null comment '是否删除, 0未删除 1已删除',
  primary key (id)
) comment '文件评论';
sql
CREATE TABLE `file_share`
(
  id           bigint auto_increment comment 'id',
  uniq_code    bigint       default 0                 not null comment '唯一标识',
  file_url     varchar(256) default ''                not null comment '文件url',
  share_code   varchar(256) default ''                not null comment '分享码',
  share_pwd    varchar(256) default ''                not null comment '分享密码',
  share_count  int          default 0                 not null comment '分享次数',
  share_expire int          default 0                 not null comment '分享有效期',
  share_type   int          default 0                 not null comment '分享类型, 1公开分享 2私有链接分享 3联系人分享',
  create_by    bigint       default 0                 not null comment '创建人',
  create_time  datetime     default CURRENT_TIMESTAMP not null comment '创建时间',
  update_by    bigint       default 0                 not null comment '更新人',
  update_time  datetime     default CURRENT_TIMESTAMP null on update CURRENT_TIMESTAMP comment '更新时间',
  deleted      int          default 0                 not null comment '是否删除, 0未删除 1已删除',
  primary key (id),
  unique (uniq_code)
) comment '文件分享';