3.1 KiB
3.1 KiB
数据库结构
本项目使用 Coze 数据库存储数据
一、数据库信息
| 项目 | 内容 |
|---|---|
| 平台 | Coze 数据库 |
| 数据库 ID | 7595077053909712922 |
| 说明 | 由 Coze 工作流自动写入和管理 |
二、表结构
2.1 候选人面试记录表
表名由 Coze 自动管理
| 字段名 | 类型 | 说明 | 示例 |
|---|---|---|---|
| session_id | String | 会话唯一标识 | SESS_1705737600_张三_abc123 |
| 姓名 | String | 候选人姓名 | 张三 |
| 简历内容 | String | 解析后的简历文本 | 姓名:张三,学历:本科... |
| current_stage | Integer | 当前面试阶段 | 60 |
| 面试记录 | String | 完整对话记录(JSON) | [{"role":"ai","content":"..."}] |
| 评分结果 | String | 各维度评分(JSON) | {"salesSkill":85,...} |
| 分析报告 | String | 综合分析报告 | 候选人具备良好的销售潜质... |
| created_at | Timestamp | 创建时间 | 2026-01-20T10:00:00Z |
| updated_at | Timestamp | 更新时间 | 2026-01-20T10:25:00Z |
三、字段详细说明
3.1 session_id 格式
SESS_{时间戳}_{姓名}_{随机码}
示例:SESS_1705737600_张三_abc123
- 时间戳:Unix 时间戳(秒)
- 姓名:候选人姓名
- 随机码:6位随机字符串
3.2 current_stage 阶段码
| 阶段码 | 说明 |
|---|---|
| 10 | 信息收集 |
| 20 | 销售技能面试 |
| 30 | 销售观面试 |
| 40 | 素质项面试 |
| 50 | 求职动机面试 |
| 60 | 面试完成 |
3.3 评分结果结构
{
"salesSkill": 85, // 销售技能 0-100
"salesMindset": 80, // 销售观 0-100
"quality": 90, // 素质项 0-100
"motivation": 75, // 求职动机 0-100
"total": 82.5 // 加权总分
}
权重计算:
- 销售技能:30%
- 销售观:25%
- 素质项:25%
- 求职动机:20%
3.4 面试记录结构
[
{
"role": "ai",
"content": "你好,我是AI面试官,请先做个自我介绍。",
"timestamp": "2026-01-20T10:01:00Z"
},
{
"role": "user",
"content": "你好,我叫张三...",
"timestamp": "2026-01-20T10:01:30Z"
}
]
四、数据访问方式
4.1 查询单条记录
# 后端调用 Coze API
response = await coze_client.post(
"/v1/database/query",
json={
"database_id": "7595077053909712922",
"filter": {
"session_id": "SESS_xxx"
}
}
)
4.2 查询列表(分页)
response = await coze_client.post(
"/v1/database/query",
json={
"database_id": "7595077053909712922",
"page": 1,
"page_size": 20,
"sort": {
"field": "created_at",
"order": "desc"
}
}
)
五、数据写入
数据写入由 Coze 工作流自动完成,后端只负责读取
工作流写入节点:
- 节点 ID:
124924 - 类型:
insert_record - 触发时机:候选人提交信息后
变更日志
| 日期 | 变更内容 | 操作人 |
|---|---|---|
| 2026-01-20 | 初始化数据库文档 | AI |