Files
AIclinicalresearch/docs/03-业务模块/RVW-稿件审查系统/00-模块当前状态与开发指南.md
HaHafeng 179afa2c6b feat(rvw): Complete RVW module development Phase 1-3
Summary:
- Migrate backend to modules/rvw with v2 API routes (/api/v2/rvw)
- Add new database fields: selectedAgents, editorialScore, methodologyStatus, picoExtract, isArchived
- Create frontend module in frontend-v2/src/modules/rvw
- Implement Dashboard with task list, filtering, batch operations
- Implement ReportDetail with dual tabs (editorial/methodology)
- Implement AgentModal for intelligent agent selection
- Register RVW module in moduleRegistry.ts
- Add navigation entry in TopNavigation
- Update documentation for RVW module status (v3.0)
- Update system status document (v2.9)

Features:
- User can select agents: editorial, methodology, or both
- Support batch task execution
- Task status filtering
- Replace console.log with logger service
- Maintain v1 API backward compatibility

Tested: Frontend and backend verified locally
Status: 85% complete (Phase 1-3 done)
2026-01-07 22:39:08 +08:00

339 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# RVW稿件审查模块 - 当前状态与开发指南
> **文档版本:** v3.0
> **创建日期:** 2026-01-07
> **最后更新:** 2026-01-07
> **维护者:** 开发团队
> **当前状态:** ✅ **Phase 1-3 完成,前后端功能可用**
> **文档目的:** 快速了解RVW模块状态为新AI助手提供上下文
---
## 📊 模块概览
### 基本信息
| 项目 | 信息 |
|------|------|
| **模块名称** | RVW - 稿件审查系统 (Review) |
| **模块定位** | 智能期刊审稿辅助系统(可独立销售) |
| **商业价值** | ⭐⭐⭐⭐⭐ 极高 |
| **独立性** | ⭐⭐⭐⭐⭐ 极高(用户群完全不同) |
| **目标用户** | 期刊初审编辑 |
| **开发状态** | ✅ **核心功能100%完成,已集成到 frontend-v2** |
### 核心目标
> 打造一个**"开箱即用"**的智能审稿工具。编辑上传稿件,系统自动运行双重检查(规范性+方法学),输出可供参考的审稿报告。
>
> **核心指标**:上传到出报告 < 2分钟规范性问题检出率 > 80%
### 功能规格
#### 核心AI能力已完成 ✅)
1. **稿约规范性评估**11项标准
- 文题字数、摘要结构、参考文献、图片DPI等
- 基于《中华医学超声杂志》稿约标准
2. **方法学评估**3部分20个检查点
- 科研设计评估9个检查点
- 统计学方法描述评估5个检查点
- 统计分析评估6个检查点
3. **综合评分 + PICO提取**
- 规范性分数0-100
- 方法学状态(🔴错误 🟡存疑 🟢通过)
- PICO结构化提取P/I/C/O
#### 交互功能(✅ 已完成)
| 功能 | 旧版本 | 新版本 | 状态 |
|------|--------|--------|------|
| 单文件上传 | ✅ | ✅ | ✅ 已完成 |
| 批量上传 | ❌ | ✅ | ✅ 已完成 |
| 审稿工作台(宽表) | ❌ | ✅ | ✅ 已完成 |
| 智能体选择 | 自动 | 用户可选 | ✅ 已完成 |
| 批量操作 | ❌ | ✅ | ✅ 已完成 |
| 状态筛选 | ❌ | ✅ | ✅ 已完成 |
| 历史归档 | ❌ | ✅ | ⏸️ 数据库已支持UI暂缓 |
| 系统设置 | ❌ | ✅ | ⏸️ 暂不开发 |
| 登录页面 | ❌ | ⏸️ | ⏸️ 复用平台登录 |
| PICO卡片 | ❌ | ✅ | ⏸️ 数据库已支持UI暂缓 |
---
## 🏗️ 架构状态
### ✅ 已完成迁移Modules
```
后端(✅ 已完成):
backend/src/modules/rvw/
├── routes/index.ts # v2 API路由/api/v2/rvw
├── controllers/reviewController.ts # 控制器(含批量操作、智能体选择)
├── services/
│ ├── reviewService.ts # 核心服务(任务创建、执行)
│ ├── editorialService.ts # 稿约规范性评估
│ ├── methodologyService.ts # 方法学评估
│ └── utils.ts # 工具函数
├── types/index.ts # TypeScript类型定义
└── __tests__/ # API测试脚本
前端(✅ 已完成):
frontend-v2/src/modules/rvw/
└── index.tsx # 完整模块(~503行
├── Dashboard组件 # 审稿工作台(宽表、筛选、批量操作)
├── ReportDetail组件 # 报告详情(双标签页切换)
└── AgentModal组件 # 智能体选择弹窗
旧版本(保留兼容):
backend/src/legacy/
├── routes/reviewRoutes.ts # v1 API路由保留
├── controllers/reviewController.ts
└── services/reviewService.ts
Prompt保持不变
backend/prompts/
├── review_editorial_system.txt # 稿约评估266行
└── review_methodology_system.txt # 方法学评估257行
数据库(✅ 已完成):
- ReviewTask表已添加新字段selectedAgents, editorialScore, methodologyStatus, picoExtract, isArchived, archivedAt
- Schema迁移待后续执行当前在public schema
```
---
## 📋 开发进度
| Phase | 任务 | 状态 | 完成日期 |
|-------|------|------|---------|
| Phase 1 | 后端模块迁移与扩展 | ✅ 已完成 | 2026-01-07 |
| Phase 2 | 数据库字段扩展 | ✅ 已完成 | 2026-01-07 |
| Phase 3 | 前端重构frontend-v2 | ✅ 已完成 | 2026-01-07 |
| Phase 4 | 集成测试 | 🔧 基本通过 | 2026-01-07 |
| Phase 5 | 系统设置与归档 | ⏸️ 暂缓 | - |
| **总计** | - | **85%** | - |
### Phase 1-3 完成内容
**后端Phase 1**
- ✅ 创建 `backend/src/modules/rvw/` 模块结构
- ✅ 迁移并优化 reviewService、editorialService、methodologyService
- ✅ 实现智能体选择selectedAgentseditorial/methodology/both
- ✅ 实现批量运行APIbatchRunReviewTasks
- ✅ 替换 console.log 为 logger 服务
- ✅ 注册 v2 API路由/api/v2/rvw
**数据库Phase 2**
- ✅ 添加 selectedAgents 字段String[]
- ✅ 添加 editorialScore 字段Float?
- ✅ 添加 methodologyStatus 字段String?
- ✅ 添加 picoExtract 字段Json?
- ✅ 添加 isArchived、archivedAt 字段(归档支持)
- ✅ 使用 prisma db push 同步到数据库
**前端Phase 3**
- ✅ 创建 `frontend-v2/src/modules/rvw/index.tsx`~503行
- ✅ 实现 Dashboard 组件(任务列表、筛选、批量操作)
- ✅ 实现 ReportDetail 组件(双标签页:稿约规范性/方法学)
- ✅ 实现 AgentModal 组件(智能体选择弹窗)
- ✅ 注册到 moduleRegistry.ts
- ✅ 添加顶部导航入口
详细任务清单见:[RVW模块迁移计划](./04-开发计划/RVW模块迁移计划.md)
---
## 🔧 技术依赖
### 复用的平台能力
| 能力 | 位置 | 用途 |
|------|------|------|
| **LLM网关** | `@/common/llm/LLMFactory` | AI评估 |
| **文档处理** | `ExtractionClient` | Word/PDF文本提取 |
| **存储** | `@/common/storage` | 文件存储 |
| **日志** | `@/common/logging` | 结构化日志 |
| **任务队列** | `jobQueue` | 异步任务处理 |
### LLM模型
| 模型 | 用途 | 说明 |
|------|------|------|
| DeepSeek-V3 | 默认 | 性价比高,推理能力强 |
| DeepSeek-R1 | 备选 | 深度推理 |
| Qwen3-72B | 备选 | 中文理解好 |
---
## 📚 相关文档
### 需求文档
- [智能期刊审稿系统MVP PRD](./01-需求分析/智能期刊审稿系统%20MVP%20产品需求文档.md)
- [智能审稿V7原型](./01-需求分析/智能审稿V7.html) - 可直接浏览器打开
### 开发文档
- [迁移计划v2.0整合版)](./04-开发计划/RVW模块迁移计划.md) ⬅️ **主要开发文档**
### 参考文档
- [现有系统技术摸底报告](../../00-项目概述/现有系统技术摸底报告.md) - Line 578-748
- [云原生开发规范](../../04-开发规范/08-云原生开发规范.md)
- [系统架构分层设计](../../00-系统总体设计/01-系统架构分层设计.md)
### Prompt文件
- [稿约规范性评估标准](./稿约规范性评估标准.txt)
- [稿件方法学评估标准](./稿件方法学评估标准.txt)
---
## 🎯 快速开始
### 访问审稿模块
1. **启动后端**
```bash
cd backend
npm run dev
```
2. **启动前端(新版 frontend-v2**
```bash
cd frontend-v2
npm run dev
```
3. **访问审稿页面**
- 打开 `http://localhost:3000`
- 点击顶部导航栏的 **"预审稿"** 标签
- 或直接访问 `http://localhost:3000/rvw`
4. **测试流程**
- 点击"上传稿件"按钮
- 选择Word/PDF文档≤5MB
- 选择智能体(稿约规范性/方法学/两者都选)
- 点击"运行"按钮
- 等待AI评估完成约1-2分钟
- 查看评估报告
### API测试新版 v2 API
```http
### 获取任务列表
GET http://localhost:3001/api/v2/rvw/tasks
### 按状态筛选
GET http://localhost:3001/api/v2/rvw/tasks?status=pending
### 上传稿件
POST http://localhost:3001/api/v2/rvw/tasks
Content-Type: multipart/form-data
# file: 文件
# selectedAgents: ["editorial", "methodology"]
### 运行单个任务
POST http://localhost:3001/api/v2/rvw/tasks/{{taskId}}/run
Content-Type: application/json
{"selectedAgents": ["editorial", "methodology"]}
### 批量运行任务
POST http://localhost:3001/api/v2/rvw/tasks/batch-run
Content-Type: application/json
{"taskIds": ["id1", "id2"], "selectedAgents": ["editorial"]}
### 获取任务详情
GET http://localhost:3001/api/v2/rvw/tasks/{{taskId}}
### 获取报告
GET http://localhost:3001/api/v2/rvw/tasks/{{taskId}}/report
```
### 旧版API保持兼容
```http
### 上传稿件旧API
POST http://localhost:3001/api/v1/review/upload
Content-Type: multipart/form-data
```
---
## ⚠️ 注意事项
### 对新AI助手
1.**核心功能已完成**:前后端已迁移到新架构,可正常使用
2.**已集成到 frontend-v2**:通过顶部导航栏"预审稿"进入
3.**v2 API 已就绪**/api/v2/rvw/* 路由可用
4.**遵循云原生规范**:使用 logger 服务替代 console.log
5. ⚠️ **保留旧API**v1路由保持兼容支持旧前端
### 已完成改造
| 问题 | 改造前 | 改造后 | 状态 |
|------|--------|--------|------|
| 日志 | console.log | logger服务 | ✅ 已完成 |
| 用户认证 | Mock用户ID | getUserId(request) | ✅ 已完成 |
| 智能体选择 | 自动 | 用户可选 | ✅ 已完成 |
| 批量操作 | 无 | batchRunReviewTasks | ✅ 已完成 |
### 待后续改造
| 问题 | 当前 | 目标 | 优先级 |
|------|------|------|--------|
| Schema位置 | public | review_schema | P2 |
| 任务处理 | 直接异步 | jobQueue | P2 |
| 报告导出 | 基础版 | PDF优化 | P3 |
---
## 📈 验收标准
根据MVP PRD验收标准如下
1. **流程通**用户能成功上传5个PDF勾选双模型运行等待3分钟内状态全部变为"已完成"
2. **报告准**
- 上传一篇故意删掉"摘要结论"的稿件,规范性智能体必须报错
- 上传一篇故意混淆"t检验"和"卡方检验"的稿件,方法学智能体必须报"存疑"或"错误"
3. **无崩溃**连续上传20个文件系统不卡死不白屏
---
## 🚀 未来规划
### ✅ 已完成2026-01-07
- [x] 架构迁移到 modules/rvw后端
- [x] 架构迁移到 modules/rvw前端 frontend-v2
- [x] 整合MVP新功能批量上传、工作台、智能体选择
- [x] 云原生改造logger服务
- [x] v2 API 路由注册
- [x] 数据库字段扩展
### 后续版本
- [ ] Schema迁移到 review_schema
- [ ] 任务队列改造jobQueue
- [ ] PDF报告导出优化
- [ ] PICO卡片UI实现
- [ ] 历史归档UI实现
- [ ] 登录页面(独立产品时)
- [ ] 审稿人管理系统
- [ ] 多轮审稿流程
- [ ] 期刊库管理
- [ ] 独立产品打包
---
**文档版本:** v3.0
**最后更新:** 2026-01-07
**当前状态:** ✅ Phase 1-3 完成,模块可用
**下一步:** 生产环境部署测试 或 Schema隔离迁移