docs: update frontend api handoff docs
This commit is contained in:
@@ -1,15 +1,16 @@
|
||||
# 医疗问诊 Agent 第一版 Demo
|
||||
|
||||
这是大系统中的“医疗问诊 Agent”子功能 Demo。系统不做独立注册登录,宿主系统进入时通过请求头传入 `X-User-Id`,后端按该用户隔离会话、检查申请、诊断治疗提交、评价报告和历史记录。
|
||||
这是大系统中的“医疗问诊 Agent”子功能 Demo。系统不做独立注册登录,宿主系统进入本 Agent 时通过请求头传入 `X-User-Id`,后端按该用户标识隔离训练会话、检查申请、诊断治疗提交、AI 评价报告和历史记录。
|
||||
|
||||
## 当前功能
|
||||
|
||||
```text
|
||||
病例列表
|
||||
-> 病例详情
|
||||
-> 病例 SQL 导入/删除病例
|
||||
-> 创建训练会话
|
||||
-> 多轮问诊 Chat / SSE 流式 Chat
|
||||
-> 提示辅助(练习模式中手动点击)
|
||||
-> 练习提示
|
||||
-> 检查/检验申请
|
||||
-> 完成问诊
|
||||
-> 提交诊断
|
||||
@@ -34,7 +35,7 @@
|
||||
|
||||
## 核心数据表
|
||||
|
||||
当前功能只依赖新表:
|
||||
当前功能依赖以下表:
|
||||
|
||||
```text
|
||||
case_base
|
||||
@@ -54,7 +55,7 @@ user_learning_profiles
|
||||
audit_logs
|
||||
```
|
||||
|
||||
旧表 `cases`、`case_exam_items`、`training_sessions`、`session_orders`、`session_submissions`、`evaluation_records`、`evaluation_report_exports`、`rubric_templates` 已清理。
|
||||
旧表已不参与运行。
|
||||
|
||||
## 启动后端
|
||||
|
||||
@@ -85,31 +86,27 @@ cd D:\Code\newfounder\medical-consultation-agent\backend
|
||||
|
||||
## 导入接口解析后的病例 SQL
|
||||
|
||||
接口提供的 SQL dump 不能直接在正式库执行。项目提供安全导入脚本,只解析病例数据并按当前新表字段映射写入,不执行源 SQL 中的 `DROP TABLE`、`CREATE TABLE`、`ALTER TABLE`。
|
||||
后端提供安全导入能力,只解析源 SQL 中的 `case_base`、`traditional_case`、`teaching_case`、`scoring_rule` 四类病例数据,不执行源 SQL 中的删表、建表或锁表语句。
|
||||
|
||||
先检查不写库:
|
||||
命令行预检:
|
||||
|
||||
```powershell
|
||||
cd D:\Code\newfounder\medical-consultation-agent\backend
|
||||
.\.venv\Scripts\python.exe scripts\import_source_case_sql.py "C:\path\to\case.sql"
|
||||
```
|
||||
|
||||
确认检查通过后再写入:
|
||||
确认预检通过后写入:
|
||||
|
||||
```powershell
|
||||
.\.venv\Scripts\python.exe scripts\import_source_case_sql.py "C:\path\to\case.sql" --apply
|
||||
```
|
||||
|
||||
如果源 SQL 缺少 `case_exam_item`,脚本会根据病例描述生成基础检查项目,保障练习模式可继续申请检查。源 SQL 存在乱码、字段数量不匹配或损坏的 `INSERT` 时,脚本会拒绝导入。
|
||||
|
||||
前端也提供同一套安全导入能力:
|
||||
前端导入页:
|
||||
|
||||
```text
|
||||
http://127.0.0.1:5173/#/import
|
||||
```
|
||||
|
||||
页面流程为“选择 SQL 文件 -> 解析检查 -> 确认导入 -> 刷新病例库”。后端接口只接受 `.sql` 文件,最大 5MB,只解析 `case_base`、`traditional_case`、`teaching_case`、`scoring_rule` 四类源表数据;`case_exam_item` 仍由后端按病例内容自动补齐。确认导入成功后,病例列表会重新请求后端,新病例可以直接进入练习模式或教学互动模式。
|
||||
|
||||
## 启动前端
|
||||
|
||||
```powershell
|
||||
@@ -143,6 +140,8 @@ http://127.0.0.1:5173
|
||||
|
||||
## 验证命令
|
||||
|
||||
后端:
|
||||
|
||||
```powershell
|
||||
cd D:\Code\newfounder\medical-consultation-agent\backend
|
||||
.\.venv\Scripts\python.exe -m compileall app scripts tests
|
||||
@@ -162,13 +161,27 @@ npm.cmd run build
|
||||
|
||||
| 文档 | 内容 |
|
||||
|---|---|
|
||||
| [docs/00_development_log.md](docs/00_development_log.md) | 开发过程和本轮变更记录 |
|
||||
| [docs/00_development_log.md](docs/00_development_log.md) | 开发过程和变更记录 |
|
||||
| [docs/01_functional_scope.md](docs/01_functional_scope.md) | 当前功能范围 |
|
||||
| [docs/02_database_design.md](docs/02_database_design.md) | 数据库总体设计 |
|
||||
| [docs/02_database_table_dictionary.md](docs/02_database_table_dictionary.md) | 表字段字典 |
|
||||
| [docs/03_api_design.md](docs/03_api_design.md) | 前端对接 API 文档 |
|
||||
| [docs/03_api_design.md](docs/03_api_design.md) | 前端 API 对接文档 |
|
||||
| [docs/04_data_collection.md](docs/04_data_collection.md) | 数据采集和存储边界 |
|
||||
| [docs/05_agent_prompt_design.md](docs/05_agent_prompt_design.md) | Agent 和提示词模板调用说明 |
|
||||
| [docs/06_demo_testing_guide.md](docs/06_demo_testing_guide.md) | 前端测试指南 |
|
||||
| [docs/07_demo_function_traceability.md](docs/07_demo_function_traceability.md) | 功能到代码和数据表追踪 |
|
||||
| [docs/08_pediatric_case_demo_script.md](docs/08_pediatric_case_demo_script.md) | 儿科病例演示脚本 |
|
||||
|
||||
## Git 管理说明
|
||||
|
||||
仓库上传范围包含 `backend`、`frontend`、`docs`、`scripts` 和项目说明文件。
|
||||
|
||||
不上传:
|
||||
|
||||
- `demo_frontend/`
|
||||
- `.env`
|
||||
- `backend/.venv/`
|
||||
- `frontend/node_modules/`
|
||||
- `frontend/dist/`
|
||||
- `storage/`
|
||||
- 本地 PDF、日志、数据库文件和临时 SQL 文件
|
||||
|
||||
Reference in New Issue
Block a user