# AIclinicalresearch 系统当前状态与开发指南 > **文档版本:** v3.3 > **创建日期:** 2025-11-28 > **维护者:** 开发团队 > **最后更新:** 2026-01-11 > **重大进展:** 🎉 **运营管理端 Prompt 管理系统开发完成(83%)!** - 基础架构+PromptService+管理API+前端界面全部完成 > **部署状态:** ✅ 生产环境运行中 | 公网地址:http://8.140.53.236/ > **⚠️ 重要更新:** 2026-01-11 新增[数据库开发规范](../04-开发规范/09-数据库开发规范.md)(基于事故教训) > **文档目的:** 快速了解系统当前状态,为新AI助手提供上下文 --- ## 📋 快速导航 **🎯 如果您是新的AI助手**,请优先阅读: 1. **本文档**(5分钟) - 了解系统当前状态 2. [前后端模块化架构设计-V2.md](./前后端模块化架构设计-V2.md)(15分钟) - 了解技术架构 3. [[AI对接] 快速上下文.md](./%5BAI对接%5D%20快速上下文.md)(10分钟) - 快速上手指南 --- ## 🎯 项目概述 ### 项目名称 **壹证循科技 - AI临床研究平台** ### 核心定位 一个覆盖临床科研全生命周期、AI驱动的一站式智能科研平台 ### 目标用户 - **主要用户**:临床医生、研究人员(三甲医院) - **次要用户**:医院科研管理科室、信息中心 - **商业模式**:云端SaaS + 私有化部署 + 单机版 --- ## 📊 业务模块概览(8大核心功能) | 模块代号 | 模块名称 | 核心功能 | 商业价值 | 当前状态 | 优先级 | |---------|---------|---------|---------|---------|--------| | **AIA** | AI智能问答 | 10+专业智能体(选题评价、PICO梳理等) | ⭐⭐⭐⭐ | ✅ 已完成 | P1 | | **PKB** | 个人知识库 | RAG问答、私人文献库 | ⭐⭐⭐ | ✅ **核心功能完成(90%)** | P1 | | **ASL** | AI智能文献 | 文献筛选、Meta分析、证据图谱 | ⭐⭐⭐⭐⭐ | 🚧 **正在开发** | **P0** | | **DC** | 数据清洗整理 | ETL + 医学NER(百万行级数据) | ⭐⭐⭐⭐⭐ | ✅ **Tool B完成 + Tool C 99%(异步架构+性能优化-99%+多指标转换+7大功能)** | **P0** | | **IIT** | IIT Manager Agent | AI驱动IIT研究助手 - 智能质控+REDCap集成 | ⭐⭐⭐⭐⭐ | 🎉 **Phase 1.5完成(60%)- AI对话+REDCap数据集成** | **P0** | | **SSA** | 智能统计分析 | 队列/预测模型/RCT分析 | ⭐⭐⭐⭐⭐ | 📋 规划中 | P2 | | **ST** | 统计分析工具 | 100+轻量化统计工具 | ⭐⭐⭐⭐ | 📋 规划中 | P2 | | **RVW** | 稿件审查系统 | 方法学评估、审稿流程、Word导出 | ⭐⭐⭐⭐ | ✅ **开发完成(95%)** | P3 | | **ADMIN** | 运营管理端 | Prompt管理、租户管理、用户管理 | ⭐⭐⭐⭐⭐ | 🚧 **Prompt管理83%完成** | **P0** | --- ## 🏗️ 技术架构(三层设计) ### 架构总览 ``` ┌─────────────────────────────────────────────────────────┐ │ 业务模块层 (Product Layer) │ │ AIA | PKB | ASL | DC | IIT | SSA | ST | RVW │ │ ✅ ✅ 🚧 🚧 🚀 📋 📋 📋 │ └─────────────────────────────────────────────────────────┘ ↓ 依赖 ┌─────────────────────────────────────────────────────────┐ │ 通用能力层 (Capability Layer) │ │ 后端:LLM网关 | 文档处理 | RAG引擎 | ETL引擎 | Prompt管理✨│ │ ✅ ✅ ✅ 🚧 ✅ 🆕 │ │ 前端:Chat组件(Ant Design X)✅ │ └─────────────────────────────────────────────────────────┘ ↓ 依赖 ┌─────────────────────────────────────────────────────────┐ │ 平台基础层 (Platform Layer) │ │ 🏆 **Postgres-Only架构**(新) │ │ ├── 统一缓存:platform_schema.app_cache ✅ │ │ ├── 统一队列:platform_schema.job (pg-boss) ✅ │ │ ├── 任务管理:job.data 统一存储 ✅ │ │ └── 断点续传:CheckpointService 通用化 ✅ │ │ │ │ 存储 | 日志 | 缓存 | 任务 | 健康检查 | 监控 | 连接池 │ │ ✅ ✅ ✅ ✅ ✅ ✅ ✅ │ └─────────────────────────────────────────────────────────┘ ``` ### 技术栈 **前端**: - React 19 + TypeScript 5 + Vite 7 - **Ant Design 6.0** + **Ant Design X 2.1** ✨ 新增! - TailwindCSS 3 + React Query v5 + React Router DOM v7 - 架构:frontend-v2(模块化,顶部导航) - **通用能力层**:shared/components/Chat(基于 Ant Design X)✅ **后端**: - Fastify v4 (Node.js 22) - Prisma 6 (10个Schema隔离) - LLM:DeepSeek-V3, Qwen-Max, GPT-5-Pro, Claude-4.5 - 架构:增量演进(legacy + common + modules) **数据库**: - PostgreSQL 15 (Docker: postgres:15-alpine) - 12个Schema隔离(platform/aia/pkb/asl/dc/iit/ssa/st/rvw/admin/common/capability ✅新增) **云原生部署**: - 阿里云 SAE (Serverless 应用引擎) - ✅ Python微服务(v1.0)- 内网:172.17.173.66:8000 - ✅ Node.js后端(v1.3)- 内网:172.17.173.73:3001 - ✅ 前端Nginx(v1.0)- 内网:172.17.173.72:80 - ✅ CLB负载均衡 - 公网:http://8.140.53.236/ - RDS PostgreSQL 15(生产环境运行中) - OSS对象存储(已配置) - ACR容器镜像仓库(已推送3个镜像) - 阿里云 ACR (容器镜像服务) ✅ 已推送3个镜像(Frontend、Backend、Python) - 阿里云 RDS (PostgreSQL 15) ✅ 已迁移数据 - RDS PostgreSQL 15 + OSS (对象存储) + NAT网关 - ACR (容器镜像服务 - 个人版免费) - **部署状态**:🚀 **进行中**(PostgreSQL✅、Python微服务✅、前端镜像✅、Node.js后端⏳) --- ## 🚀 当前开发状态(2026-01-11) ### 🎉 最新进展:ADMIN 运营管理端(2026-01-11) #### ✅ Phase 3.5.1-3.5.4 已完成(83%) **Phase 3.5.1: 基础设施搭建** - ✅ 创建 `capability_schema` - ✅ 添加 `prompt_templates` 和 `prompt_versions` 表 - ✅ 添加 `prompt:view/edit/debug/publish` 权限 - ✅ 迁移 RVW Prompt 到数据库(2个:RVW_EDITORIAL, RVW_METHODOLOGY) **Phase 3.5.2: PromptService 核心服务** - ✅ 灰度预览逻辑(调试者看 DRAFT,用户看 ACTIVE) - ✅ 模块级调试控制(`setDebugMode(userId, ['RVW'], true)`) - ✅ Handlebars 模板渲染 - ✅ 变量提取与校验(自动从 `{{xxx}}` 提取) - ✅ 三级容灾(数据库→缓存→兜底 hardcoded) **Phase 3.5.3: 管理 API** - ✅ 8个 RESTful 接口(`/api/admin/prompts/*`) - ✅ 权限控制(PROMPT_ENGINEER 只能编辑,SUPER_ADMIN 才能发布) **Phase 3.5.4: 前端管理界面** - ✅ 管理端基础架构(AdminLayout, OrgLayout) - ✅ 路由系统(`/admin/*`, `/org/*`) - ✅ 头像下拉菜单切换入口 - ✅ PromptListPage(筛选、搜索、调试开关) - ✅ PromptEditor(CodeMirror 6 简化版,中文友好,15px字体) - ✅ PromptEditorPage(编辑、保存、发布、测试、版本历史) **⏳ Phase 3.5.5 待完成** - [ ] 改造 RVW 服务使用 `promptService.get()`(替代文件读取) - [ ] 端到端测试 **📄 相关文档** - 详细计划:`docs/03-业务模块/ADMIN-运营管理端/04-开发计划/02-Prompt管理系统开发计划.md` - TODO清单:`docs/03-业务模块/ADMIN-运营管理端/04-开发计划/01-TODO清单(可追踪).md` --- ### ✅ 已完成模块 #### 1. 平台基础层 🏆 **Postgres-Only 架构完成!**(2025-12-13) **核心架构:Platform-Only 模式** - ✅ **统一缓存**:`PostgresCacheAdapter` → `platform_schema.app_cache` - ✅ **统一队列**:`PgBossQueue` → `platform_schema.job` (pg-boss) - ✅ **任务管理**:所有任务信息存储在 `job.data` (JSONB) - ✅ **断点续传**:`CheckpointService` 通用化(操作 job.data) - ✅ **智能阈值**:小任务直接处理,大任务队列处理(THRESHOLD=50) **原有能力:** - ✅ 存储服务(LocalAdapter ↔ OSSAdapter) - ✅ 日志系统(Winston + 结构化JSON) - ✅ 健康检查(Liveness + Readiness) - ✅ 监控指标(数据库连接/内存/API) - ✅ 数据库连接池(Serverless优化) **测试覆盖:** - ✅ 单元测试:8个全部通过 - ✅ 集成测试:2个全部通过 - ✅ 架构验证:Platform-Only 验证通过 **技术债务:** - ⚠️ Phase 8 全面测试(断点续传压力测试、1000篇文献完整流程) - ⚠️ Phase 9 SAE 部署验证 #### 2. AIA模块 - AI智能问答(已完成) - ✅ 10个专业智能体 - ✅ 流式对话 + 非流式对话 - ✅ 知识库模式(RAG检索) - ✅ 批处理模式 - **状态**:生产就绪 #### 3. PKB模块 - 个人知识库 🎉 **前端V3设计完成!** **开发进度**: - ✅ **后端API**:100%完成(v1 + v2双路由运行) - ✅ **前端Dashboard**:90%完成(基于知识库仪表盘V5原型) - ✅ **前端Workspace**:85%完成(基于工作台V3原型) - ✅ **全文阅读模式**:90%完成(Chat组件集成) - ✅ **逐篇精读模式**:85%完成(文档选择+对话) - 🔧 **批处理模式**:70%完成(UI完成,API待调试) - ❌ **RAG检索模式**:0%(后端待实现) **核心功能**: - 知识库CRUD + 文档管理 - 3种工作模式(全文阅读、逐篇精读、批处理) - Ant Design X Chat组件集成 - 响应式全屏布局 **技术亮点**: - ✅ 模块化架构迁移(/modules/pkb) - ✅ Zustand状态管理 - ✅ 复用shared/components/Chat通用组件 - ✅ 单层Header + 紧凑工作模式栏设计 **待解决问题**: - 🔧 批处理API执行待调试 - 🔧 知识资产页面导航条待完善 - 🔧 UI与原型图精细化对比 **详细文档**:[PKB模块当前状态](../03-业务模块/PKB-个人知识库/00-模块当前状态与开发指南.md) ### 🚧 正在开发模块 #### 4. ASL模块 - AI智能文献 🏆 **Postgres-Only 架构改造完成!** **开发进度**: - ✅ **标题摘要初筛MVP**:完整流程(设置→启动→审核→结果→导出) - ✅ **全文复筛后端**:LLM服务、数据库、批处理、API - ✅ **🏆 Postgres-Only 架构改造**:智能阈值、任务拆分、断点续传(Phase 6完成) - 🚧 **全文复筛前端UI**:4个核心页面(待开发) **核心功能**: - 双模型并行筛选(DeepSeek-V3 + Qwen-Max) - PICOS标准判断 - 12字段结构化提取(全文复筛) - 医学逻辑验证 + 证据链验证 - Excel批量导出 **🚀 Postgres-Only 架构亮点**: - ✅ **智能双模式**:<50篇直接处理,≥50篇队列处理 - ✅ **任务拆分**:1000篇 → 20个批次,每批50篇 - ✅ **断点续传**:支持2-24小时长任务,实例重启可恢复 - ✅ **Platform层统一**:任务管理信息存储在 `job.data`,不在业务表中 - ✅ **零额外成本**:使用 pg-boss,无需 Redis - ✅ **高可靠性**:自动重试3次,6小时过期保护 **技术实现**: - `screeningService.ts`:智能阈值判断,推送批次任务 - `screeningWorker.ts`:批次处理,断点续传 - `CheckpointService`:操作 job.data,所有模块通用 **详细文档**:[ASL模块当前状态](../03-业务模块/ASL-AI智能文献/00-模块当前状态与开发指南.md) #### 5. DC模块 - 数据清洗整理 🏆 **Tool C MVP + Postgres-Only 架构改造完成!** **开发进度**: - ✅ **Tool B后端**:100%完成(1,658行代码) - 4个核心服务(HealthCheck、Template、DualModel、Conflict) - 1个控制器(6个API端点) - 路由集成(/api/v1/dc/tool-b) - Prisma Schema(4个表) - 100%云原生(复用平台能力) - ✅ **🏆 Postgres-Only 架构改造**:智能阈值、任务拆分、断点续传(Phase 7完成) - ❌ **Tool B前端**:0%(有V4原型设计,未实现) - ✅ **Tool C(数据编辑器)**:**MVP + NA处理 + Pivot优化 + UX重大改进完成** ✅ - ✅ Python微服务(~1800行)- Day 1 + NA处理优化 + 全量数据处理 - ✅ Node.js后端(~3500行)- Day 2-3, Day 5-8增强 + 全量返回 - ✅ 前端界面(~4000行)- Day 4-8, 筛选/行号/滚动条/全量加载 - ✅ 通用 Chat 组件(~968行)- Day 5 - ✅ 7个功能按钮(筛选、映射、分箱、条件、删NA、计算、Pivot) - ✅ NA处理优化(4个功能支持空值处理) - ✅ Pivot优化(保留未选列+原始列顺序) - ✅ 计算列方案B(安全列名映射,支持特殊字符 + 全角字符转换) - ✅ **UX重大改进**(Day 8): - 列头筛选(Excel风格,Community版本,中文本地化) - 行号列(固定左侧,灰色背景) - 滚动条修复(修改MainLayout,整个页面无滚动条) - 全量数据(不再限制50行,筛选精确) - 删除预览提示条 - **总计:~13068行** | **完成度:98%** - ❌ **Tool A**:未开发 - ✅ **Portal**:已完成(Tool B + Tool C 入口) **核心功能(Tool C,2025-12-10最新)**: - 7个功能按钮:高级筛选、数值映射、生成分类变量、条件生成列、删除缺失值、计算列、Pivot转换 - NA处理支持:数值映射(保持/映射/删除)、分箱(保持/标记/分配)、条件(为空/不为空) - Pivot优化:保留未选择的列、保持原始列顺序 - 计算列方案B:安全列名映射,支持中文括号等特殊字符 + 全角字符自动转换 - **UX重大改进**: - 列头筛选(Excel风格,Community版本,中文本地化,显示值计数) - 行号列(固定左侧,灰色背景,#列头) - 滚动条修复(修改MainLayout,整个页面无滚动条,只有表格内部滚动) - 全量数据(不再限制50行,筛选精确,所有操作全量返回) **核心功能(Tool B)**: - 双模型并发提取(DeepSeek-V3 + Qwen-Max) - 自动冲突检测(字段级对比) - Excel健康检查(空值率、Token估算、拦截策略) - 预设模板系统(肺癌、糖尿病、高血压) **🚀 Postgres-Only 架构亮点**: - ✅ **智能双模式**:<50条直接处理,≥50条队列处理 - ✅ **任务拆分**:1000条 → 20个批次,每批50条 - ✅ **断点续传**:支持长时间提取任务,实例重启可恢复 - ✅ **Platform层统一**:与 ASL 共用 CheckpointService - ✅ **零额外成本**:使用 pg-boss,无需 Redis **技术实现**: - `ExtractionController.ts`:智能阈值判断,推送批次任务 - `extractionWorker.ts`:批次处理,断点续传 - `CheckpointService`:操作 job.data,所有模块通用 **技术亮点**: - ✅ Excel内存处理(零落盘,云原生) - ✅ 双模型交叉验证(减少AI幻觉) - ✅ 3层JSON解析(容错机制) - ✅ 复用LLMFactory、storage、cache、jobQueue - ✅ 预写Python函数架构(稳定、安全、高性能) - ✅ 安全列名映射(支持特殊字符列名) **待开发功能**: - ⏳ 缺失值填补(均值/中位数/众数/固定值) - ⏳ 多重插补(MICE)- 高优先级 **详细文档**:[DC模块当前状态](../03-业务模块/DC-数据清洗整理/00-模块当前状态与开发指南.md) --- ### 🚀 IIT Manager Agent(代号:IIT,2025-12-31启动) **定位**:AI驱动的IIT(研究者发起的临床研究)智能助手 **核心价值**: - 🎯 **主动工作的AI Agent** - 不是被动工具,而是24/7主动监控的智能助手 - 🎯 **REDCap深度集成** - 与医院现有EDC系统无缝对接 - 🎯 **影子状态机制** - AI建议+人类确权,符合医疗合规要求(FDA 21 CFR Part 11) - 🎯 **企业微信实时通知** - 质控预警秒级推送,移动端查看 **MVP目标**(2周冲刺): - ✅ 打通 REDCap → AI质控 → 企微通知 完整闭环 - ✅ 实现智能数据质控(基于Protocol的入排标准检查) - ✅ 支持历史数据全量扫描 - ✅ PC Workbench复核界面 **Day 1 完成情况**(2025-12-31):✅ **100%** - ✅ **数据库Schema**:5个表(IitProject, IitPendingAction, IitTaskRun, IitUserMapping, IitAuditLog) - ✅ **模块结构**:controllers/services/agents/adapters/routes/types/workers - ✅ **类型系统**:223行完整TypeScript类型定义 - ✅ **系统集成**:健康检查端点正常(`/api/v1/iit/health`) - ✅ **企业微信配置**:Access Token获取成功(核心验证通过) - ✅ **企业微信可信域名**:iit.xunzhengyixue.com(网页授权+JS-SDK授权) - ✅ **Prisma Schema**:含V1.1新增字段(cachedRules, lastSyncAt, miniProgramOpenId) **REDCap环境就绪**(2026-01-02):✅ **100%** - ✅ **REDCap本地部署**:15.8.0版本,Docker Compose(3容器架构) - ✅ **测试项目创建**:test0102 (PID 16),已录入测试数据 - ✅ **DET功能验证**:Data Entry Trigger真实存在(源码验证通过) - ✅ **技术调研完成**:源码分析 + External Module文档研究 - ✅ **对接方案确定**:DET(实时触发) + REST API(数据读写) - ✅ **技术方案文档**:《REDCap对接技术方案与实施指南》(1070行完整文档) - ✅ **代码设计完成**:RedcapAdapter、WebhookController、SyncManager - ✅ **REDCap文档体系**:部署手册、问题排查、API对接指南 **Day 1 技术验证**: ```bash # 数据库CRUD测试 - 全部通过 ✅ ✅ IIT项目创建成功 ✅ 影子状态记录创建成功 ✅ 任务运行记录创建成功 ✅ 用户映射创建成功 ✅ 审计日志创建成功 ✅ 关联查询成功 # 企业微信API测试 - Access Token获取成功 ✅ ✅ CorpID: ww6ab493470ab4f377 ✅ AgentID: 1000002 ✅ Access Token获取成功(核心验证通过) ``` **技术架构**(REDCap对接方案V1.0): - ✅ **DET实时触发**:Data Entry Trigger(REDCap原生,0秒延迟) - ✅ **REST API集成**:exportRecords(数据拉取)+ importRecords(数据回写) - ✅ **双保险机制**:Webhook(主,95%) + 定时轮询(补充,30分钟) - ✅ **Postgres-Only架构**:复用平台缓存(app_cache)和队列(pg-boss) - ✅ **Dify RAG集成**:Protocol知识检索 + 规则预缓存(性能优化) - ✅ **影子状态机制**:PROPOSED → APPROVED → EXECUTED 状态流转 - ✅ **前端技术栈**:Taro 4.x(React语法,支持小程序+H5双端) **核心创新**: - 🔥 **DET实时触发**:CRC保存数据→5秒内收到企微质控通知(实时性100%) - 🔥 **零侵入性**:只用REDCap原生API和DET,无需修改源码(维护成本<10%) - 🔥 **双保险机制**:Webhook幂等性 + 轮询补充,数据不丢失(可靠性99.9%) - 🔥 **历史数据扫描**:BulkScanService支持存量数据质控(智能阈值+断点续传) - 🔥 **规则预缓存**:Protocol上传时提取关键规则,简单检查<100ms **开发进度**: - Day 1/14:✅ 基础架构就位(数据库、模块结构、企微配置) - REDCap准备:✅ 本地环境部署 + 对接方案确定 + 技术方案文档 - Day 2:✅ REDCap API Adapter + WebhookController + SyncManager完成 - Day 3:✅ 企微推送 + 端到端测试通过(REDCap → Node.js → 企微) - **Phase 1.5:✅ AI对话集成完成(2026-01-03)** - ✅ ChatService + SessionMemory + REDCap数据查询 - ✅ 意图识别 + 数据注入LLM + 解决LLM幻觉 - ✅ 测试通过(查询ID 7,10条记录统计) - Phase 2:待开始 - Function Calling + Dify知识库 - Day 6-9:影子状态管理 + 历史数据扫描 - Day 10-14:PC Workbench前端 + 端到端测试 + Demo录制 **已创建文件**(Day 1 + REDCap准备): ``` backend/prisma/schema.prisma # 新增iit_schema(5个表) backend/src/modules/iit-manager/ # 模块目录结构 ├── types/index.ts # 223行类型定义 ├── routes/index.ts # 路由骨架 ├── test-iit-database.ts # 数据库测试(通过) └── test-wechat-push.ts # 企微测试(Access Token成功) backend/src/config/env.ts # 新增企微配置 backend/src/index.ts # IIT模块集成 redcap-docker-dev/ # REDCap Docker环境(新增) ├── docker-compose.yml # 开发环境配置 ├── docker-compose.prod.yml # 生产环境配置 ├── Dockerfile.redcap # REDCap镜像 ├── docker-entrypoint.sh # 容器启动脚本 ├── config/ │ ├── apache/redcap.conf # Apache配置 │ ├── php/php.ini # PHP配置 │ └── database.php # REDCap数据库配置 └── scripts/ # 管理脚本(setup/start/stop/logs/clean) docs/03-业务模块/IIT Manager Agent/ # 完整文档架构 ├── 00-系统设计/ # 技术架构白皮书、实施战略 ├── 02-技术设计/ # 完整技术开发方案(V1.1,2170行) ├── 04-开发计划/ │ ├── MVP开发任务清单.md # 开发任务清单 │ ├── 企业微信注册指南.md # 企微配置指南 │ └── REDCap对接技术方案与实施指南.md # ⭐ 1070行完整方案(新增) └── 06-开发记录/ # V1.1更新完成报告 docs/03-业务模块/Redcap/ # REDCap文档体系(新增) ├── 00-模块概览/ # REDCap文档导航 ├── 01-部署与配置/ # Docker部署手册、问题排查 └── 03-API对接与开发/ # 二次开发指南、API对接 ``` **下一步**(Day 2): - 🔄 **RedcapAdapter开发**(exportRecords/exportMetadata/importRecords) - 🔄 **WebhookController开发**(DET接收器、<100ms响应、异步处理) - 🔄 **SyncManager开发**(定时轮询、增量同步、幂等性保护) - 🔄 **集成测试**(DET配置、API测试、端到端验证) **详细文档**: - ⭐ [REDCap对接技术方案与实施指南](../03-业务模块/IIT%20Manager%20Agent/04-开发计划/REDCap对接技术方案与实施指南.md) - **Day 2核心参考** - [IIT Manager Agent 完整技术开发方案 (V1.1)](../03-业务模块/IIT%20Manager%20Agent/02-技术设计/IIT%20Manager%20Agent%20完整技术开发方案%20(V1.1).md) - [IIT Manager Agent 模块当前状态与开发指南](../03-业务模块/IIT%20Manager%20Agent/00-模块当前状态与开发指南.md) - [MVP开发任务清单](../03-业务模块/IIT%20Manager%20Agent/04-开发计划/MVP开发任务清单.md) - [企业微信注册指南](../03-业务模块/IIT%20Manager%20Agent/04-开发计划/企业微信注册指南.md) - [REDCap Docker部署操作手册](../03-业务模块/Redcap/01-部署与配置/10-REDCap_Docker部署操作手册.md) - [REDCap二次开发深度指南](../03-业务模块/Redcap/03-API对接与开发/33-REDCap二次开发深度指南.md) --- ## 🚀 阿里云生产环境部署状态(2025-12-24) ### ✅ 已完成部署 #### 1. 基础设施层 - ✅ **VPC网络**:`vpc-2ze055cptkew9c38w4r06`(172.17.0.0/16) - ✅ **NAT网关**:`ngw-2zeec9ulzgw7ywvx1pst6`(公网IP: 182.92.176.14) - ✅ **安全组**:`sg-2zedk6fi8sgmmcwdu7tu` - ✅ **交换机**:2个(可用区F + 可用区A) - ✅ **SAE命名空间**:`cn-beijing:test-airesearch` #### 2. 数据存储层 - ✅ **RDS PostgreSQL 15** - 实例ID: `pgm-2zex1m2y3r23hdn5` - 规格: 2核4GB - 内网地址: `pgm-2zex1m2y3r23hdn5.pg.rds.aliyuncs.com:5432` - 数据库: `ai_clinical_research` - **数据迁移**: ✅ 完成(90MB SQL文件,约12秒导入) - **Schema验证**: ✅ 11个Schema全部迁移成功 - **数据验证**: ✅ 用户3条、项目2条、文献1204条 - **部署时间**: 2025-12-24 - ✅ **OSS对象存储** - Bucket: `ai-clinical-research` - 存储类型: 标准存储(同城冗余) - 内网域名: `ai-clinical-research.oss-cn-beijing-internal.aliyuncs.com` - RAM用户: `oss-bucket-put-object@1991407246109125.onaliyun.com` - AccessKey: 已配置(不公开) #### 3. 容器镜像服务(ACR) - ✅ **命名空间**: `ai-clinical` - ✅ **Registry**: `crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com` - ✅ **已推送镜像**: - **前端Nginx**: `ai-clinical_frontend-nginx:v1.0`(约50MB) - 构建时间: 2025-12-24 - 基础镜像: `nginx:alpine` - 功能: React SPA + Nginx反向代理 + 动态环境变量 - 配置文件: `frontend-v2/Dockerfile`, `nginx.conf`, `.dockerignore` - **Python微服务**: `python-extraction:v1.0`(1.12GB) - 构建时间: 2025-12-24 - 基础镜像: `python:3-slim` - 功能: PDF提取(PyMuPDF)+ 数据清洗(pandas/numpy/polars) - 特性: 移除Nougat(减小1.5GB)、使用阿里云Debian源 - 配置文件: `extraction_service/Dockerfile`, `requirements-prod.txt`, `.dockerignore` - **Node.js后端**: `backend-service:v1.0`(838MB,压缩后~186MB)✨ 新增! - 构建时间: 2025-12-24(约5分钟) - 基础镜像: `node:alpine` - 构建策略: 改进版方案B(本地编译+Docker打包) - 技术突破: 修复200+TypeScript错误、手动补全30+Prisma关系字段 - 架构特性: Postgres-Only(pg-boss队列+PostgreSQL缓存) - 配置文件: `backend/Dockerfile`, `backend/.dockerignore`, `backend/prisma/schema.prisma` ### 🚧 进行中 #### 4. SAE应用部署 - ✅ **Python微服务**: 已成功部署到SAE轻量版 - 应用名称: `python-extraction-test` - 规格: 1核2GB - 内网地址: `http://172.17.173.66:8000` - 状态: 运行中 ✅ - ⏳ **Node.js后端**: 镜像已推送,待部署到SAE - 目标规格: 1核2GB(测试环境) - 端口: 8000 - 健康检查: `/api/health` - ⏳ **Node.js后端**: Docker镜像待构建 - 目标规格: 2核4GB - 端口: 3001 - 依赖: RDS PostgreSQL - ⏳ **前端Nginx**: 镜像已推送,待部署到SAE - 目标规格: 1核2GB - 端口: 80 - 需配置: 后端API内网地址 ### 📋 待完成 - [ ] Python微服务部署到SAE - [ ] Node.js后端Docker镜像构建 - [ ] Node.js后端部署到SAE - [ ] 前端Nginx部署到SAE - [ ] 配置服务间内网通信 - [ ] 全链路验证测试 - [ ] Dify AI服务部署(可选) ### 📊 部署文档 **部署进度总览**: - [00-部署进度总览.md](../05-部署文档/00-部署进度总览.md) - 🎯 **一站式部署状态查看** **操作手册**: - [07-前端Nginx-SAE部署操作手册.md](../05-部署文档/07-前端Nginx-SAE部署操作手册.md) - [08-PostgreSQL数据库部署操作手册.md](../05-部署文档/08-PostgreSQL数据库部署操作手册.md) - Python微服务SAE部署操作手册(待创建) **技术指南**: - [01-快速部署SOP-零基础版.md](../05-部署文档/01-快速部署SOP-零基础版.md) - 完整部署流程 - [04-Python微服务-SAE容器部署指南.md](../05-部署文档/04-Python微服务-SAE容器部署指南.md) - [06-前端Nginx-SAE容器部署指南.md](../05-部署文档/06-前端Nginx-SAE容器部署指南.md) ### 🎯 部署关键成就 1. **PostgreSQL数据迁移** ✅ - 采用`pg_dump`全量导出/导入方案 - 11个Schema完整迁移 - 数据一致性验证通过 - 安全加固(外网访问已关闭) 2. **前端Nginx镜像优化** ✅ - 解决Docker Hub网络问题(使用通用标签) - 修复30个TypeScript编译错误 - 多阶段构建优化 - 健康检查通过 3. **Python微服务镜像优化** ✅ - 移除Nougat OCR(减小1.5GB) - 使用阿里云Debian镜像源(解决apt-get网络问题) - 保留数据清洗功能(pandas/numpy/polars) - 运行时依赖优化(libgl1、libglib2.0) 4. **镜像配置文件Git管理** ✅ - Dockerfile: ✅ 已提交Git(构建蓝图) - .dockerignore: ✅ 已提交Git(优化构建) - 依赖文件: ✅ 已提交Git(可复现) - 敏感信息: ❌ 禁止提交(.env等) ### 💰 当前运行成本估算 | 服务 | 规格 | 月成本 | 状态 | |------|------|-------|------| | RDS PostgreSQL | 2核4GB | ¥260 | ✅ 运行中 | | OSS存储 | 10GB | ¥2 | ✅ 运行中 | | NAT网关 | 小型 | ¥60 | ✅ 运行中 | | EIP流量 | 5Mbps | ¥40 | ✅ 运行中 | | ACR镜像仓库 | 个人版 | ¥0(免费) | ✅ 运行中 | | SAE - Python | 1核2GB×1 | ¥60 | ⏳ 待部署 | | SAE - Node.js | 2核4GB×1 | ¥120 | ⏳ 待部署 | | SAE - Frontend | 1核2GB×1 | ¥60 | ⏳ 待部署 | | **总计** | - | **¥602/月** | 部署中 | --- ## 📁 项目结构概览 ``` AIclinicalresearch/ ├── frontend-v2/ # 🌐 前端(React 19 + TS) │ └── src/ │ ├── framework/ # 框架层(布局、路由、权限) │ ├── modules/ # 业务模块 │ │ ├── asl/ # ✅ AI智能文献 │ │ ├── aia/ # ✅ AI智能问答 │ │ ├── pkb/ # ✅ 个人知识库 │ │ ├── dc/ # ✅ 数据清洗(Tool C 完成) │ │ └── ... │ └── shared/ # 共享组件和工具 │ └── components/ # ✨ 通用能力层 │ └── Chat/ # ✅ Chat 通用组件(Ant Design X) │ ├── backend/ # ⚙️ 后端(Fastify + Prisma) │ └── src/ │ ├── common/ # ⭐ 平台基础设施(云原生) │ │ ├── storage/ # 存储抽象层 │ │ ├── logging/ # 日志系统 │ │ ├── cache/ # 缓存服务 │ │ ├── jobs/ # 异步任务 │ │ └── ... │ ├── legacy/ # 🔸 现有业务代码(稳定) │ └── modules/ # 🌟 新架构模块 │ ├── asl/ # ✅ AI智能文献 │ └── dc/ # 🚧 数据清洗(开发中) │ ├── docs/ # 📚 文档体系 │ ├── 00-系统总体设计/ # 架构设计 │ ├── 01-平台基础层/ # 平台能力 │ ├── 02-通用能力层/ # LLM、RAG等 │ ├── 03-业务模块/ # 各模块文档 │ ├── 04-开发规范/ # 云原生规范等 │ └── 08-项目管理/ # 计划和进度 │ └── prisma/ └── schema.prisma # 10个Schema定义 ``` --- ## 🎯 核心设计原则 ### 1. 云原生架构 ☁️ - **无状态应用**:不依赖本地文件系统 - **存储抽象层**:适配器模式,零代码环境切换 - **异步任务**:避免Serverless超时(30秒) - **数据库连接池**:防止连接数耗尽 - **详细规范**:[云原生开发规范](../04-开发规范/08-云原生开发规范.md) ⭐ **必读** ### 2. 模块化与独立部署 🔧 - **前后端分离**:每个模块前后端完全独立 - **Schema隔离**:数据库层面模块隔离(10个Schema) - **路由独立**:每个模块有独立的API路由前缀 - **支持独立销售**:任何模块都可独立打包 ### 3. 商业模式灵活性 💰 - **4种部署形态**:云端SaaS、私有化部署、单机版、混合部署 - **多版本支持**:专业版/高级版/旗舰版(Feature Flag控制) - **AI成本可控**:动态切换LLM模型 - **模块化售卖**:任何模块都可独立销售 ### 4. 渐进式演进 📈 - **新旧并存**:Frontend-v2(新)+ Frontend(旧保留) - **增量改造**:Legacy模块保持稳定,新模块标准化 - **Just-in-time**:聚焦当前,架构预留,避免过度设计 --- ## 📅 开发时间线 | 时间 | 阶段 | 主要成果 | |------|------|---------| | **2025-11-12** | Week 1 | ✅ 数据库Schema隔离(10个Schema) | | **2025-11-13~14** | Week 2 | ✅ 前端模块化架构 + 后端分层 | | **2025-11-17** | Week 2+ | ✅ 平台基础设施(8个核心模块) | | **2025-11-18~21** | Week 3~4 | ✅ ASL标题摘要初筛MVP | | **2025-11-22~23** | ASL Day 2-5 | ✅ ASL全文复筛后端完成 | | **2025-11-26~27** | DC Day 2-3 | ✅ DC工具B健康检查+模板管理 | | **2025-11-28** | DC Day 4-8 | ✅ DC Tool C MVP + UX重大改进完成 | | **2025-12-13** | 架构优化 | ✅ Postgres-Only架构改造完成 | | **2025-12-24 上午** | **部署启动** 🚀 | ✅ PostgreSQL数据迁移 + 前端/Python镜像推送ACR | | **2025-12-24 下午** | **后端镜像构建** 🎉 | ✅ Node.js后端镜像构建成功(修复200+TS错误) | | **2025-12-31** | **IIT Agent启动** 🎯 | ✅ Day 1完成(数据库+企微配置+模块骨架) | | **2026-01-01** | **企微可信域名** 🌐 | ✅ iit.xunzhengyixue.com域名验证完成 | | **2026-01-02** | **REDCap对接方案** 🏆 | ✅ REDCap环境部署 + DET+REST API方案确定 | | **2026-01-07 上午** | **PKB前端V3** 🎉 | ✅ PKB模块前端V3设计实现完成(Dashboard+Workspace+3种工作模式) | | **2026-01-07 下午** | **PKB批处理完善** 🏆 | ✅ 批处理完整流程调试通过(执行+进度+结果导出)+ 文档上传功能 + UI优化 | | **当前** | **PKB模块生产可用** | ✅ 核心功能全部实现(90%),具备生产环境部署条件 | | **2026-01-07 晚** | **RVW模块开发完成** 🎉 | ✅ Phase 1-3完成(后端迁移+数据库扩展+前端重构) | --- ## 🎯 下一步计划 ### 🔥 最高优先级(当前)- 部署到生产环境 1. ✅ **Python微服务部署到SAE** - 已完成 - ✅ 创建SAE应用(轻量版) - ✅ 配置环境变量(OSS、数据库) - ✅ 健康检查验证 - ✅ 获取内网地址:`http://172.17.173.66:8000` 2. ✅ **Node.js后端Docker镜像构建** - 已完成 - ✅ Prisma反向同步(32个模型) - ✅ 手动补全Prisma关系字段(30+个) - ✅ 修复TypeScript编译错误(200+ → 0) - ✅ 创建Dockerfile(改进版方案B) - ✅ 构建并推送到ACR(838MB镜像) 3. ⏳ **Node.js后端部署到SAE** - 待执行 - [ ] 创建SAE应用(1核2GB,测试环境) - [ ] 配置ACR镜像拉取认证 - [ ] 配置环境变量(数据库、Python服务、OSS、LLM API) - [ ] 健康检查验证 - [ ] 获取内网地址 3. **Node.js后端部署到SAE** - 创建SAE应用(2核4GB) - 配置环境变量(DATABASE_URL、OSS等) - 配置Python微服务内网地址 - 健康检查验证 4. **前端Nginx部署到SAE** - 创建SAE应用(1核2GB) - 配置后端API内网地址 - 公网域名绑定 - SSL证书配置 5. **全链路验证测试** - 前端→Node.js后端→Python微服务→RDS - ASL文献筛选完整流程 - DC数据清洗完整流程 - 性能和稳定性测试 ### 短期(1-2周)- 功能完善 6. **ASL全文复筛前端**(Day 6-8) - 4个核心页面:设置、进度、工作台、结果 - PDF上传和预览功能 - 双模型判断对比UI - 实时进度监控 7. **DC工具B前端开发** - 健康检查界面 - 模板管理界面 - 批量提取界面 - 冲突解决界面 ### 中期(1-2月)- 模块完善 8. DC模块完整实现(工具A、Portal优化) 9. ASL模块优化(Prompt优化、并发处理) 10. 监控和告警系统配置 11. CI/CD流程建立 ### 长期(3月+)- 新模块开发 12. SSA模块(智能统计分析) 13. ST模块(统计分析工具) 14. RVW模块(稿件审查系统) --- ## 📚 重要文档索引 ### 🎯 必读文档(新AI助手) 1. ⭐⭐⭐ **本文档** - 系统当前状态 2. ⭐⭐⭐ [前后端模块化架构设计-V2.md](./前后端模块化架构设计-V2.md) - 架构总纲 3. ⭐⭐⭐ [云原生开发规范.md](../04-开发规范/08-云原生开发规范.md) - 开发规范(必读) 4. 🔴⭐⭐⭐ [数据库开发规范.md](../04-开发规范/09-数据库开发规范.md) - **数据库操作安全(必读!)** 5. ⭐⭐ [01-系统架构分层设计.md](./01-系统架构分层设计.md) - 三层架构详解 6. ⭐⭐ [09-总体需求文档(PRD).md](./09-总体需求文档\(PRD\).md) - 产品需求 ### 🚀 当前开发相关 - [ASL模块当前状态](../03-业务模块/ASL-AI智能文献/00-模块当前状态与开发指南.md) - [DC模块README](../03-业务模块/DC-数据清洗整理/README.md) - [DC Day3完成总结](../03-业务模块/DC-数据清洗整理/06-开发记录/Day3完成总结.md) ### 🚀 部署文档(新增) - ⭐ [00-部署进度总览.md](../05-部署文档/00-部署进度总览.md) - **一站式部署状态查看** - [01-快速部署SOP-零基础版.md](../05-部署文档/01-快速部署SOP-零基础版.md) - 完整部署流程 - [07-前端Nginx-SAE部署操作手册.md](../05-部署文档/07-前端Nginx-SAE部署操作手册.md) - [08-PostgreSQL数据库部署操作手册.md](../05-部署文档/08-PostgreSQL数据库部署操作手册.md) ### 🏗️ 架构设计 - [平台基础设施规划](../09-架构实施/04-平台基础设施规划.md) - [云原生部署架构指南](../09-架构实施/03-云原生部署架构指南.md) - [数据库设计规范](../04-开发规范/01-数据库设计规范.md) --- ## 🔧 开发环境 ### 环境要求 ``` Node.js: v22.18.0+ PostgreSQL: 15+(当前使用15.14) npm: 10+ ``` ### 快速启动 **后端**: ```bash cd backend npm install npx prisma generate npm run dev # http://localhost:3001 ``` **前端**: ```bash cd frontend-v2 npm install npm run dev # http://localhost:3000 ``` ### 环境变量配置 参考:[环境配置指南](../07-运维文档/01-环境配置指南.md) --- ## ⚠️ 重要注意事项 ### 对新AI助手 1. ✅ **优先阅读云原生开发规范**:所有代码必须遵守 2. ✅ **使用平台基础设施**:不要重复实现存储、日志、缓存等 3. ✅ **遵循Schema隔离**:每个模块的表必须在对应的Schema中 4. ✅ **查看最新开发记录**:了解当前开发状态和已知问题 ### 常见陷阱 1. ❌ **不要在业务模块中自己实现存储**:使用 `import { storage } from '@/common/storage'` 2. ❌ **不要硬编码配置**:使用环境变量 3. ❌ **不要依赖本地文件系统**:使用OSS或内存处理 4. ❌ **不要创建新的Prisma实例**:使用全局 `prisma` 实例 ### 🔴 数据库操作安全(2026-01-11 事故教训) > ⚠️ **严重警告**:2026-01-11 因误用 `prisma db push --force-reset` 导致数据库事故,详见 [事故总结报告](../08-项目管理/2026-01-11-数据库事故总结.md) **禁止使用的危险命令:** | 命令 | 危险等级 | 说明 | |------|----------|------| | `prisma db push --force-reset` | 🔴 **极高** | 会删除所有数据和非Prisma管理的对象 | | `prisma migrate reset` | 🔴 **极高** | 重置整个数据库 | **必须遵守的规范:** 1. ✅ **操作前必须备份**:`docker exec ai-clinical-postgres pg_dump -U postgres -d ai_clinical_research > backup.sql` 2. ✅ **使用安全命令**:`prisma migrate dev`(开发)或 `prisma migrate deploy`(生产) 3. ✅ **了解 Prisma 管理边界**:pg-boss 的 `job_common` 表和函数不由 Prisma 管理 **Prisma 不管理的对象(需手动恢复):** - `platform_schema.job_common` 表 → 恢复脚本:`restore_job_common.sql` - `platform_schema.create_queue()` 函数 → 恢复脚本:`restore_pgboss_functions.sql` - `platform_schema.delete_queue()` 函数 📚 **完整规范**:[数据库开发规范](../04-开发规范/09-数据库开发规范.md) --- ## 📊 项目统计 ### 代码量 - **前端**:约 15,000 行(TypeScript + TSX) - **后端**:约 20,000 行(TypeScript) - **文档**:约 50,000 行(Markdown) - **总计**:约 85,000 行 ### 模块完成度 - ✅ **已完成**:AIA(100%)、平台基础层(100%)、RVW(95%,Phase 1-6完成,Schema已隔离) - 🚧 **开发中**:PKB(90%,核心功能完成)、ASL(80%)、DC(Tool C 98%,Tool B后端100%,Tool B前端0%)、IIT(60%,Phase 1.5完成) - 📋 **未开始**:SSA、ST ### 部署完成度 - ✅ **基础设施**:VPC(100%)、NAT网关(100%)、安全组(100%) - ✅ **数据存储**:RDS PostgreSQL(100%)、OSS(100%) - ✅ **容器镜像**:前端Nginx(100%)、Python微服务(100%)、Node.js后端(100%)✨ 新增! - ✅ **SAE应用**:Python微服务(100%,已运行)、Node.js后端(镜像已推送,待部署)、前端Nginx(待部署) - 📋 **验证测试**:全链路测试(待进行) ### 测试覆盖率 - **平台基础层**:100%(8/8模块全部通过) - **AIA模块**:手动测试通过 - **PKB模块**:手动测试通过 - **ASL模块**:部分自动化测试(31个REST Client测试用例) - **DC模块**:开发中 --- ## 🏆 Postgres-Only 架构(2025-12-13 重大创新) ### 核心理念 **Platform-Only 模式**:所有平台级功能(缓存、队列、任务管理)统一在 Platform 层实现,业务层只关注业务逻辑。 ### 架构演进 ``` 改造前: 业务层 (分散) ├── ASL: 任务管理字段 (6个) └── DC: 任务管理字段 (6个) ❌ 代码重复 ❌ 维护困难 改造后(Platform-Only): 平台层 (统一) ├── platform_schema.job.data (pg-boss) │ └── 所有任务管理信息 └── CheckpointService (通用) └── 操作 job.data,所有模块复用 业务层 (简洁) ├── ASL: 只存储业务信息 └── DC: 只存储业务信息 ✅ 无重复 ✅ 易维护 ✅ 符合3层架构 ``` ### 核心组件 | 组件 | 位置 | 功能 | 通用性 | |------|------|------|--------| | **PostgresCacheAdapter** | `common/cache/` | Postgres 缓存 | ✅ 所有模块 | | **PgBossQueue** | `common/jobs/` | pg-boss 队列封装 | ✅ 所有模块 | | **CheckpointService** | `common/jobs/` | 操作 job.data | ✅ 所有模块 | | **任务拆分工具** | `common/jobs/utils.ts` | 智能拆分批次 | ✅ 所有模块 | ### 智能双模式处理 ```typescript const QUEUE_THRESHOLD = 50; if (items.length >= 50) { // 队列模式:可靠性优先 - 任务拆分(50条/批) - 断点续传(每10条保存) - 自动重试(3次) - 支持24小时长任务 } else { // 直接模式:性能优先 - 快速响应(<1分钟) - 无队列延迟 - 适合小任务 } ``` ### 技术亮点 1. **Platform-Only 模式**(首创) - 利用 pg-boss 的 `job.data` 字段统一管理 - 业务表保持简洁,只存储业务信息 - CheckpointService 真正做到平台级通用 2. **智能阈值判断** - 根据数据量自动选择处理模式 - 性能与可靠性的完美平衡 - 用户体验优化 3. **零额外成本** - 不引入 Redis(年省¥8400) - 使用已有 Postgres 实现缓存和队列 - 适合小团队快速迭代 4. **企业级可靠性** - 断点续传:任务中断后可恢复 - 自动重试:失败任务重试3次 - 并发处理:支持多实例并行 - 长任务支持:可运行24小时 ### 适用模块 - ✅ ASL 筛选服务(已改造) - ✅ DC 提取服务(已改造) - 📋 SSA 统计分析(未来) - 📋 RVW 文献综述(未来) ### 详细文档 - [Postgres-Only 改造实施计划](../07-运维文档/09-Postgres-Only改造实施计划(完整版).md) - [Postgres-Only 全能架构解决方案](../07-运维文档/08-Postgres-Only 全能架构解决方案.md) - [工作总结(2025-12-13)](../08-项目管理/03-每周计划/2025-12-13-Postgres-Only架构改造完成.md) --- ## 🌟 技术亮点 1. ✅ **Platform-Only 架构**:统一任务管理,零代码重复 🏆 **新!** 2. ✅ **智能双模式处理**:小任务快速响应,大任务可靠执行 🏆 **新!** 3. ✅ **适配器模式**:存储/缓存/日志支持本地↔云端零代码切换 4. ✅ **10个Schema一次性完成**:架构一次到位 5. ✅ **Prisma自动路由**:Schema迁移后,代码无需修改 6. ✅ **4个LLM集成**:DeepSeek、Qwen、GPT、Claude 7. ✅ **增量演进**:新旧并存,降低风险 8. ✅ **云原生就绪**:为SAE部署做好准备 --- ## 📞 联系方式 - **项目负责人**:技术架构师 - **文档维护**:开发团队 - **问题反馈**:GitHub Issues --- **文档版本**:v3.1 **最后更新**:2026-01-10 **下次更新**:RVW生产环境部署 或 ASL智能文献筛选模块启动 --- **🎉 祝新的AI助手工作顺利!所有信息已梳理完毕,可以无缝衔接!** --- ## 📝 最新更新(2026-01-07) **PKB模块核心功能全部实现 🎉**: ### 上午:前端V3设计实现 1. ✅ **后端模块迁移**:迁移到 /modules/pkb,v2 API路由注册 2. ✅ **Dashboard页面**:基于知识库仪表盘V5原型实现 3. ✅ **Workspace页面**:基于工作台V3原型实现 ### 下午:批处理完整流程验证通过 4. ✅ **三种工作模式**:全文阅读、逐篇精读、批处理全部实现 5. ✅ **批处理功能**: - 模板选择(临床研究信息提取,8个字段) - 文档选择(3-50篇) - 实时进度显示 - 结果表格(多行显示+Tooltip) - CSV导出 6. ✅ **Chat组件集成**:Ant Design X,支持流式响应和自定义渲染 7. ✅ **文档上传功能**:拖拽上传 + 进度显示 + Modal弹窗 8. ✅ **UI优化**:参考文献格式化、表格多行显示、输入框清除、自动滚动 ### 技术亮点 - **问题解决**:修复10+个技术问题(API路径、字段映射、状态同步等) - **性能优化**:批处理3篇文档~17-28秒 - **用户体验**:严格按照原型图实现,界面美观易用 ### 里程碑意义 **PKB模块已具备生产环境可用性**,为后续功能扩展奠定坚实基础! 4. ✅ **3种工作模式**:全文阅读、逐篇精读、批处理 5. ✅ **Chat组件集成**:复用Ant Design X通用Chat组件 6. ✅ **响应式布局**:单层Header + 紧凑工作模式栏 + 最大化聊天区域 **技术亮点**: - 🔥 **模块化架构**:前后端完整迁移到新架构 - 🔥 **复用通用组件**:shared/components/Chat - 🔥 **Zustand状态管理**:轻量级状态管理 - 🔥 **双路由兼容**:v1 + v2 API同时运行 **待解决问题**: - 🔧 批处理API执行待调试 - 🔧 知识资产页面导航条待完善 - 🔧 UI与原型图精细化对比 **模块进度**:75%完成 --- **IIT Manager Agent Phase 1.5 完成(2026-01-03)**: - ✅ AI对话集成完成:ChatService + SessionMemory - ✅ REDCap数据查询集成:意图识别 + 数据注入LLM - ✅ 解决LLM幻觉问题:AI基于真实数据回答 - ✅ 测试通过:查询test0102项目,ID 7患者详细信息 **模块进度**:60%完成(Phase 1.5) --- **RVW稿件审查模块开发完成(2026-01-07 ~ 2026-01-10)**: ### Phase 1:后端模块迁移与扩展 - ✅ 创建 `backend/src/modules/rvw/` 模块结构 - ✅ 迁移 reviewService、editorialService、methodologyService - ✅ 实现智能体选择(selectedAgents) - ✅ 实现批量运行API(batchRunReviewTasks) - ✅ 替换 console.log 为 logger 服务 - ✅ 注册 v2 API路由(/api/v2/rvw) - ✅ 实现 pg-boss 异步任务处理(reviewWorker) ### Phase 2:数据库字段扩展 - ✅ 添加 selectedAgents、editorialScore、methodologyScore、methodologyStatus 字段 - ✅ 添加 picoExtract、isArchived、archivedAt 字段 - ✅ 使用 prisma db push 同步到数据库 ### Phase 3:前端重构(frontend-v2) - ✅ 创建 `frontend-v2/src/modules/rvw/` 完整模块目录结构 - ✅ 实现 Dashboard 页面(任务列表、筛选、批量操作) - ✅ 实现 TaskDetail 组件(审稿进度条、实时状态轮询) - ✅ 实现 EditorialReport/MethodologyReport 组件 - ✅ 实现 AgentModal 组件(智能体选择弹窗) - ✅ 注册到 moduleRegistry.ts ### Phase 4:集成测试与Bug修复(2026-01-10) - ✅ 修复方法学分数不显示问题 - ✅ 修复只选方法学时详情页不显示报告问题 - ✅ 完整测试单智能体和双智能体审稿流程 ### Phase 5:报告导出(2026-01-10) - ✅ 安装 docx 和 file-saver 库 - ✅ 实现 Word 文档导出功能 - ✅ 支持结构化报告(标题、基本信息、稿约规范性、方法学评估) ### Phase 6:Schema隔离迁移(2026-01-10) - ✅ 将 review_tasks 表从 public 迁移到 rvw_schema - ✅ 更新 Prisma schema 中的 @@schema 指令 - ✅ 重新生成 Prisma Client - ✅ 验证所有查询和关联正常工作 **技术亮点**: - 🔥 **新旧API兼容**:v1 + v2 API同时运行 - 🔥 **智能体可选**:用户可选择运行稿约规范性/方法学/两者 - 🔥 **异步任务处理**:使用 pg-boss 队列处理长时间审稿任务 - 🔥 **Word导出**:使用 docx 库生成专业格式的审稿报告 - 🔥 **Schema隔离**:数据库表已迁移到独立的 rvw_schema - 🔥 **云原生改造**:使用 logger 服务,遵循开发规范 **模块进度**:95%完成(Phase 1-6)