nex_basse/backend/docs/db_schema.md

13 KiB
Raw Permalink Blame History

数据库结构文档 (MySQL 5.7/8.0 兼容)

  • 字符集:utf8mb4
  • 排序规则:utf8mb4_unicode_ci
  • 说明:本文件用于持续维护核心表结构与描述(每次变更请同步更新)。

1. 用户与角色

1.1 sys_user 用户表

字段 类型 约束 说明
user_id INT PK, AUTO_INCREMENT 用户ID
username VARCHAR(50) UNIQUE, NOT NULL 登录名
display_name VARCHAR(50) NOT NULL 显示名
email VARCHAR(100) UNIQUE 邮箱
phone VARCHAR(30) UNIQUE 手机
password_hash VARCHAR(255) NOT NULL 密码哈希
avatar VARCHAR(255) 头像路径
status TINYINT(1) NOT NULL 状态1 启用 / 0 禁用
is_deleted TINYINT(1) NOT NULL 是否软删除
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间

1.2 sys_role 角色表

字段 类型 约束 说明
role_id INT PK, AUTO_INCREMENT 角色ID
role_code VARCHAR(50) UNIQUE, NOT NULL 角色编码
role_name VARCHAR(50) NOT NULL 角色名称
status TINYINT(1) NOT NULL 状态1 启用 / 0 禁用
remark TEXT 备注
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间

1.3 sys_user_role 用户-角色关联表

字段 类型 约束 说明
id INT PK, AUTO_INCREMENT 关联ID
user_id INT INDEX, NOT NULL 用户ID
role_id INT INDEX, NOT NULL 角色ID
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间
UNIQUE(user_id, role_id) 唯一约束

2. 权限

2.1 sys_permission 权限表

字段 类型 约束 说明
perm_id INT PK, AUTO_INCREMENT 权限ID
parent_id INT INDEX 父级权限ID
name VARCHAR(100) NOT NULL 权限名称
code VARCHAR(100) UNIQUE, NOT NULL 权限编码
perm_type VARCHAR(20) NOT NULL menu/button
level INT NOT NULL 1/2/3 级
path VARCHAR(255) 前端路由
icon VARCHAR(100) 图标
sort_order INT NOT NULL 排序
is_visible TINYINT(1) NOT NULL 是否展示
status TINYINT(1) NOT NULL 1/0
description TEXT 描述
meta JSON 扩展属性
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间

2.2 sys_role_permission 角色-权限关联表

字段 类型 约束 说明
id INT PK, AUTO_INCREMENT 关联ID
role_id INT INDEX, NOT NULL 角色ID
perm_id INT INDEX, NOT NULL 权限ID
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间
UNIQUE(role_id, perm_id) 唯一约束

3. 码表

3.1 sys_dict_type 码表类型

字段 类型 约束 说明
dict_type_id INT PK, AUTO_INCREMENT 类型ID
type_code VARCHAR(50) UNIQUE, NOT NULL 类型编码
type_name VARCHAR(50) NOT NULL 类型名称
status TINYINT(1) NOT NULL 1/0
remark TEXT 备注
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间

3.2 sys_dict_item 码表项

字段 类型 约束 说明
dict_item_id INT PK, AUTO_INCREMENT 明细ID
type_code VARCHAR(50) INDEX, NOT NULL 类型编码
item_label VARCHAR(100) NOT NULL 展示值
item_value VARCHAR(100) NOT NULL 存储值
sort_order INT NOT NULL 排序
status TINYINT(1) NOT NULL 1/0
remark TEXT 备注
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间
UNIQUE(type_code, item_value) 唯一约束

4. 系统参数

4.1 sys_param 系统参数表

字段 类型 约束 说明
param_id INT PK, AUTO_INCREMENT 参数ID
param_key VARCHAR(100) UNIQUE, NOT NULL 参数键
param_value TEXT NOT NULL 参数值
param_type VARCHAR(20) NOT NULL string/int/bool/json
status TINYINT(1) NOT NULL 1/0
is_system TINYINT(1) NOT NULL 是否系统级
description TEXT 描述
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间

5. 日志

5.1 sys_log 操作日志表

字段 类型 约束 说明
id BIGINT PK, AUTO_INCREMENT 日志ID
user_id INT INDEX 操作用户ID
username VARCHAR(50) 用户名
operation_type VARCHAR(50) NOT NULL 操作类型
resource_type VARCHAR(50) NOT NULL 资源类型
resource_id BIGINT INDEX 资源ID
detail TEXT 操作详情(JSON)
ip_address VARCHAR(50) IP地址
user_agent VARCHAR(500) 用户代理
status TINYINT DEFAULT 1 状态: 1成功/0失败
error_message TEXT 错误信息
created_at DATETIME NOT NULL 操作时间

6. 业务 - 提示词管理

6.1 biz_prompt_template 提示词模板表

字段 类型 约束 说明
id INT PK, AUTO_INCREMENT 模板ID
name VARCHAR(100) NOT NULL 模板名称
category VARCHAR(50) NOT NULL 分类
content TEXT NOT NULL 提示词内容
description VARCHAR(255) 描述
user_id INT INDEX 创建者ID (系统级为NULL)
is_system TINYINT(1) NOT NULL 是否系统内置
status TINYINT(1) NOT NULL 全局状态1启用 / 0禁用
sort_order INT NOT NULL 默认排序
created_at DATETIME NOT NULL 创建时间
updated_at DATETIME NOT NULL 更新时间

6.2 biz_user_prompt_config 用户提示词配置表

字段 类型 约束 说明
id INT PK, AUTO_INCREMENT 配置ID
user_id INT INDEX, NOT NULL 用户ID
template_id INT INDEX, NOT NULL 模板ID
is_active TINYINT(1) NOT NULL 用户是否启用
user_sort_order INT NOT NULL 用户自定义排序
updated_at DATETIME NOT NULL 修改时间
UNIQUE(user_id, template_id) 唯一约束

7. 业务 - 会议管理

7.1 biz_meeting 会议主表

字段 类型 约束 说明
meeting_id INT PK, AUTO_INCREMENT 会议ID
user_id INT 创建者ID
title VARCHAR(255) NOT NULL 会议标题
tags VARCHAR(255) 标签(逗号分隔)
meeting_time TIMESTAMP 会议时间
access_password VARCHAR(10) 访问密码
status VARCHAR(20) DEFAULT 'draft' 状态: draft, transcribing, summarizing, completed
summary TEXT 最终总结内容
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP 创建时间
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP 更新时间

7.2 biz_meeting_attendees 会议参会人表

字段 类型 约束 说明
attendee_id INT PK, AUTO_INCREMENT 参会ID
meeting_id INT INDEX 会议ID
user_id INT 系统用户ID

7.3 biz_meeting_audio 会议音频表

字段 类型 约束 说明
audio_id INT PK, AUTO_INCREMENT 音频ID
meeting_id INT 会议ID
file_path VARCHAR(512) NOT NULL 文件存储路径
file_name VARCHAR(200) 原始文件名
file_size DECIMAL(10,0) 文件大小(字节)
duration INT DEFAULT 0 音频时长(秒)
processing_status VARCHAR(20) DEFAULT 'uploaded' 处理状态
upload_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP 上传时间
error_message TEXT 错误信息

7.4 biz_transcript_task 转译任务表

字段 类型 约束 说明
task_id VARCHAR(255) PK 任务ID
meeting_id INT INDEX, NOT NULL 会议ID
model_id INT 模型配置ID (关联 biz_ai_model)
language VARCHAR(10) DEFAULT 'auto' 识别语言
status ENUM INDEX, DEFAULT 'pending' pending/processing/completed/failed
progress INT DEFAULT 0 处理进度(0-100)
completed_at TIMESTAMP 完成时间
error_message TEXT 错误信息
created_at TIMESTAMP INDEX, DEFAULT CURRENT_TIMESTAMP 创建时间

7.5 biz_transcript_segment 转译片段表

字段 类型 约束 说明
segment_id INT PK, AUTO_INCREMENT 片段ID
meeting_id INT 会议ID
audio_id INT 音频ID
speaker_id INT 发言人ID
speaker_tag VARCHAR(50) 发言人标签(如: A, B)
start_time_ms INT NOT NULL 开始时间(毫秒)
end_time_ms INT NOT NULL 结束时间(毫秒)
text_content TEXT NOT NULL 文本内容

7.6 biz_summarize_task 总结任务表

字段 类型 约束 说明
task_id VARCHAR(100) PK 任务ID
meeting_id INT INDEX, NOT NULL 会议ID
prompt_id INT 使用的提示词模板ID
model_id INT 模型配置ID (关联 biz_ai_model)
user_prompt TEXT 任务执行时的最终Prompt
status VARCHAR(50) INDEX, DEFAULT 'pending' 任务状态
progress INT DEFAULT 0 进度
result TEXT 总结结果
error_message TEXT 错误信息
created_at TIMESTAMP INDEX, DEFAULT CURRENT_TIMESTAMP 创建时间
completed_at TIMESTAMP 完成时间

7.7 biz_ai_model AI 模型配置表

字段 类型 约束 说明
model_id INT PK, AUTO_INCREMENT 模型配置ID
model_type VARCHAR(20) NOT NULL asr/llm
provider VARCHAR(50) NOT NULL 提供商 (Qwen, OpenAI等)
model_name VARCHAR(100) NOT NULL 模型标识
api_key VARCHAR(255) API密钥
base_url VARCHAR(255) 基础URL
api_path VARCHAR(100) 接口路径
config JSON 差异化参数(temp, top_p等)
is_default TINYINT(1) NOT NULL 是否默认
status TINYINT(1) NOT NULL 启用状态
created_at TIMESTAMP NOT NULL 创建时间
updated_at TIMESTAMP NOT NULL 更新时间

7. 业务 - 会议管理

7.1 biz_meeting 会议主表

字段 类型 约束 说明
meeting_id INT PK, AUTO_INCREMENT 会议ID
user_id INT 创建者ID
title VARCHAR(255) NOT NULL 会议标题
tags VARCHAR(255) 标签(逗号分隔)
meeting_time TIMESTAMP 会议时间
access_password VARCHAR(10) 访问密码
summary TEXT 最终总结内容
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP 创建时间
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP 更新时间

7.2 biz_meeting_attendees 会议参会人表

字段 类型 约束 说明
attendee_id INT PK, AUTO_INCREMENT 参会ID
meeting_id INT INDEX 会议ID
user_id INT 系统用户ID

7.3 biz_meeting_audio 会议音频表

字段 类型 约束 说明
audio_id INT PK, AUTO_INCREMENT 音频ID
meeting_id INT 会议ID
file_path VARCHAR(512) NOT NULL 文件存储路径
file_name VARCHAR(200) 原始文件名
file_size DECIMAL(10,0) 文件大小(字节)
processing_status VARCHAR(20) DEFAULT 'uploaded' 处理状态
upload_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP 上传时间
error_message TEXT 错误信息

7.4 biz_transcript_task 转译任务表

字段 类型 约束 说明
task_id VARCHAR(255) PK 任务ID
meeting_id INT INDEX, NOT NULL 会议ID
status ENUM INDEX, DEFAULT 'pending' pending/processing/completed/failed
progress INT DEFAULT 0 处理进度(0-100)
completed_at TIMESTAMP 完成时间
error_message TEXT 错误信息
created_at TIMESTAMP INDEX, DEFAULT CURRENT_TIMESTAMP 创建时间

7.5 biz_transcript_segment 转译片段表

字段 类型 约束 说明
segment_id INT PK, AUTO_INCREMENT 片段ID
meeting_id INT 会议ID
speaker_id INT 发言人ID
speaker_tag VARCHAR(50) 发言人标签(如: A, B)
start_time_ms INT NOT NULL 开始时间(毫秒)
end_time_ms INT NOT NULL 结束时间(毫秒)
text_content TEXT NOT NULL 文本内容

7.6 biz_summarize_task 总结任务表

字段 类型 约束 说明
task_id VARCHAR(100) PK 任务ID
meeting_id INT INDEX, NOT NULL 会议ID
prompt_id INT 使用的提示词模板ID
user_prompt TEXT 任务执行时的最终Prompt
status VARCHAR(50) INDEX, DEFAULT 'pending' 任务状态
progress INT DEFAULT 0 进度
result TEXT 总结结果
error_message TEXT 错误信息
created_at TIMESTAMP INDEX, DEFAULT CURRENT_TIMESTAMP 创建时间
completed_at TIMESTAMP 完成时间