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)
This commit is contained in:
2026-01-07 22:39:08 +08:00
parent 06028c6952
commit 179afa2c6b
226 changed files with 5860 additions and 21 deletions

View File

@@ -0,0 +1,338 @@
# 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隔离迁移