# [AI对接] 项目状态与下一步指南 > **更新时间:** 2025-11-12 18:00 > **当前阶段:** Week 1 完成(79%),Week 2 Day 6 完成(33%) > **总体进度:** 13/25 任务完成(52%) > **下一步:** Week 2 Day 7 - 完善模块注册机制 --- ## 📋 项目概况(5分钟了解) ### 项目名称 **AI临床研究平台** - 覆盖医学科研全流程的智能化平台 ### 核心目标 打造8个业务模块,优先开发3个核心模块: 1. **ASL** - AI智能文献(Week 3-4开发,最高优先级) 2. **AIA** - AI智能问答(已有技术验证代码,后续重写) 3. **PKB** - 个人知识库(已有技术验证代码,后续重写) ### 技术栈 **后端:** - Node.js + Fastify + TypeScript - PostgreSQL 15+ (10个Schema隔离) - Prisma ORM (多Schema支持) - 4个LLM:DeepSeek-V3、GPT-5-Pro、Claude-4.5、Qwen-Max **前端:** - **Frontend-v2**(新架构,2025-11-12创建)⭐ - React 19 + TypeScript + Vite - Ant Design 5 + Tailwind CSS 3 - 模块化架构(6个业务模块) - 顶部导航布局 - Frontend(旧代码,保留作为参考,不再开发) **数据库:** - PostgreSQL 15+ - 10个Schema隔离(3个详细+7个空) - 11个表已迁移完成 --- ## 🎯 当前架构状态 ### 数据库架构 ✅ 已完成 **10个Schema(3详细+7空):** | Schema | 状态 | 表数量 | 说明 | |--------|------|--------|------| | platform_schema | ✅ 详细 | 1 | 用户管理 | | aia_schema | ✅ 详细 | 5 | AI智能问答(已迁移) | | pkb_schema | ✅ 详细 | 5 | 个人知识库(已迁移) | | asl_schema | 📋 空 | 0 | AI智能文献(Week 3设计) | | common_schema | 📋 空 | 0 | 通用能力层 | | dc_schema | 📋 空 | 0 | 数据清洗 | | rvw_schema | 📋 空 | 0 | 审稿系统 | | admin_schema | 📋 空 | 0 | 运营管理 | | ssa_schema | 📋 空 | 0 | 智能统计分析 | | st_schema | 📋 空 | 0 | 统计分析工具 | **Schema迁移:** ✅ 100%成功,Prisma已配置,现有功能正常运行 --- ### 前端架构 ✅ 框架完成 **Frontend-v2项目结构:** ``` frontend-v2/ ├── src/ │ ├── framework/ # ✅ 框架层 │ │ ├── layout/ # 顶部导航+主布局 │ │ └── modules/ # 模块注册中心 │ │ │ ├── modules/ # 📦 6个业务模块 │ │ ├── aia/ # AI问答(占位) │ │ ├── asl/ # AI智能文献(Week 3开发) │ │ ├── pkb/ # 知识库(占位) │ │ ├── dc/ # 数据清洗(占位) │ │ ├── ssa/ # 智能统计分析(外部集成) │ │ └── st/ # 统计分析工具(外部集成) │ │ │ ├── shared/ # 共享资源 │ ├── pages/ # 首页 │ └── App.tsx │ └── 配置文件 ✅ ``` **访问地址:** http://localhost:3000 --- ### 后端架构 ⏳ 待分层 **当前状态:** 代码平铺,功能正常 **计划:** Week 2 Day 8-9 进行轻度分层重构 ``` backend/ └── src/ ├── platform/ # 📋 待创建:认证、用户管理 ├── common/ # 📋 待创建:中间件、工具函数 └── modules/ # 📋 待创建:aia/pkb/asl等模块 ``` --- ## ✅ 已完成工作(Week 1 + Week 2 Day 6) ### Week 1:数据库Schema隔离 ✅ | 任务 | 状态 | 交付物 | |------|------|--------| | Schema架构设计 | ✅ | `09-架构实施/01-Schema隔离架构设计(10个).md` | | SQL迁移脚本编写 | ✅ | 5个SQL脚本(001-005) | | 执行Schema迁移 | ✅ | 10个Schema创建,11个表迁移 | | Prisma多Schema配置 | ✅ | `backend/prisma/schema.prisma`已更新 | | 功能验证 | ✅ | 所有API正常工作,无需修改代码 | | AIA数据库文档 | ✅ | `03-业务模块/AIA-AI智能问答/02-技术设计/01-数据库设计.md` | | PKB数据库文档 | ✅ | `03-业务模块/PKB-个人知识库/02-技术设计/01-数据库设计.md` | **核心发现:** Prisma自动处理Schema路由,代码无需修改!🎉 --- ### Week 2 Day 6:前端架构 ✅ | 任务 | 状态 | 交付物 | |------|------|--------| | 前端架构设计 | ✅ | `00-系统总体设计/前后端模块化架构设计-V2.md`(867行) | | Frontend-v2创建 | ✅ | 全新项目,模块化架构 | | 顶部导航实现 | ✅ | 6个模块导航 | | 模块注册系统 | ✅ | moduleRegistry.ts | | 6个模块占位 | ✅ | 所有模块目录和组件 | | 首页和路由 | ✅ | HomePage + 动态路由 | --- ## 🚀 下一步工作(明确且具体) ### 立即开始(Week 2 Day 7) **任务17:实现模块注册机制** ⏰ 半天 - [ ] 完善权限控制逻辑 - [ ] 实现错误边界 - [ ] 优化模块加载机制 **任务18:整合和测试** ⏰ 半天 - [ ] 测试所有导航功能 - [ ] 优化UI细节 - [ ] 添加面包屑导航(可选) --- ### 后续计划(Week 2-4) **Week 2 Day 8-9:后端代码分层** ⏰ 1-2天 - [ ] 创建 platform/common/modules 三层目录 - [ ] 迁移现有代码 - [ ] 统一错误处理和日志 **Week 3-4:ASL模块开发** ⏰ 2周(最重要!) - [ ] Day 1上午:4个LLM集成测试 - [ ] Day 1下午:ASL数据库设计(asl_schema) - [ ] Day 2:ASL API + 前端页面设计 - [ ] Day 3-5 + Week 4:ASL核心功能开发 - 文献项目管理 - 文献导入(CSV) - **4模型智能筛选**(DeepSeek + GPT-5 + Claude-4.5 + Qwen) - 筛选结果管理 --- ## 📚 必读核心文档(5个) ### 1. 项目计划 ⭐⭐⭐ **`docs/08-项目管理/下一阶段行动计划-V2.2-完整版.md`** - 完整的4周开发计划 - 25项详细任务清单 - 实时进度追踪 ### 2. 架构设计 ⭐⭐⭐ **`docs/00-系统总体设计/前后端模块化架构设计-V2.md`** - 前后端完整目录结构 - 模块化设计规范 - 开发流程和规范 ### 3. Schema设计 ⭐⭐ **`docs/09-架构实施/01-Schema隔离架构设计(10个).md`** - 10个Schema详细设计 - SQL建表语句 - 迁移策略 ### 4. 数据库文档 ⭐ **AIA数据库:** `docs/03-业务模块/AIA-AI智能问答/02-技术设计/01-数据库设计.md` **PKB数据库:** `docs/03-业务模块/PKB-个人知识库/02-技术设计/01-数据库设计.md` ### 5. LLM配置 ⭐ **`docs/02-通用能力层/01-LLM大模型网关/03-CloseAI集成指南.md`** - 4个LLM配置(DeepSeek/GPT-5/Claude-4.5/Qwen) - CloseAI API Key:`sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo` - 双模型筛选策略 --- ## 🔑 关键技术信息 ### 数据库连接 ``` DATABASE_URL=postgresql://postgres:postgres@localhost:5432/ai_clinical_research ``` ### API端口 - 后端:http://localhost:3001 - 前端(新):http://localhost:3000 - 前端(旧):不再使用 ### CloseAI配置 ```env # OpenAI (GPT-5-Pro) CLOSEAI_API_KEY=sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo CLOSEAI_OPENAI_BASE_URL=https://api.openai-proxy.org/v1 # Claude (Claude-4.5-Sonnet) CLOSEAI_CLAUDE_BASE_URL=https://api.openai-proxy.org/anthropic ``` **可用模型:** - OpenAI: `gpt-5-pro` - Claude: `claude-sonnet-4-5-20250929` --- ## 💡 重要决策和发现 ### 决策1:前端架构调整(V2.2版核心) **决策:** 前端统一架构提前到Week 2,LLM网关推迟到Week 5 **原因:** 避免ASL开发后返工,前端架构是真正的瓶颈 ### 决策2:创建Frontend-v2,不修改旧代码 **决策:** 全新创建frontend-v2项目,保留旧frontend作为参考 **原因:** 彻底的架构改造,互不干扰,降低风险 ### 决策3:后端代码轻度分层 **决策:** platform/common/modules三层架构 **时机:** Week 2 Day 8-9,不急于Week 1 ### 发现1:Prisma自动处理Schema路由 🎉 **发现:** Schema迁移后,代码无需修改,Prisma自动路由到正确Schema **影响:** 节省了任务11(代码适配)的3-4小时 ### 发现2:10个Schema一次性完成更高效 **决策:** 3个详细迁移 + 7个空Schema(只CREATE SCHEMA) **原因:** 额外成本仅6小时,架构一次到位,避免二次迁移 --- ## 📊 项目文件位置导航 ### 核心规划文档 ``` docs/ ├── 08-项目管理/ │ └── 下一阶段行动计划-V2.2-完整版.md ⭐⭐⭐ 必读! │ └── 00-系统总体设计/ └── 前后端模块化架构设计-V2.md ⭐⭐⭐ 必读! ``` ### 数据库相关 ``` docs/ ├── 09-架构实施/ │ ├── 01-Schema隔离架构设计(10个).md ⭐⭐ 详细设计 │ ├── 02-数据库连接配置.md ⭐ 连接信息 │ ├── Schema迁移完成报告.md ✅ 已完成 │ ├── Prisma配置完成报告.md ✅ 已完成 │ └── migration-scripts/ ✅ 5个SQL脚本 │ └── 03-业务模块/ ├── AIA-AI智能问答/02-技术设计/ │ └── 01-数据库设计.md ✅ 5个表 └── PKB-个人知识库/02-技术设计/ └── 01-数据库设计.md ✅ 5个表 ``` ### 前端架构 ``` docs/ └── 01-平台基础层/06-前端架构/ ├── 01-前端总体架构设计.md ⭐⭐ 理论设计 └── 02-导航结构设计.md ⭐⭐ 导航规范 ``` ### LLM配置 ``` docs/ ├── 02-通用能力层/01-LLM大模型网关/ │ └── 03-CloseAI集成指南.md ⭐⭐⭐ 4个LLM │ └── 07-运维文档/ ├── 01-环境配置指南.md ⭐ 所有配置 └── 02-环境变量配置模板.md ⭐ .env模板 ``` --- ## 🔄 快速上手流程 ### 对于新的AI对话 **第1步(5分钟):** 阅读本文档 - 了解项目概况 - 了解当前进度 - 了解下一步任务 **第2步(10分钟):** 阅读核心文档 - `下一阶段行动计划-V2.2-完整版.md`(了解整体计划) - `前后端模块化架构设计-V2.md`(了解架构设计) **第3步(按需):** 阅读专项文档 - 如果要开发数据库:读Schema设计文档 - 如果要开发前端:读前端架构文档 - 如果要集成LLM:读CloseAI集成指南 --- ## 📋 待办事项(To Do List) ### 优先级 P0(必须完成) **Week 2 剩余任务:** - [ ] **任务17**:完善模块注册机制(权限控制) - [ ] **任务18**:整合测试 - [ ] **任务19**:后端代码分层(可选) - [ ] **任务20**:Week 2验收 **Week 3-4 核心任务:** - [ ] **任务21**:4个LLM集成测试 - [ ] **任务22**:ASL数据库设计(asl_schema) - [ ] **任务23**:ASL API设计 - [ ] **任务24**:ASL前端页面设计 - [ ] **任务25**:ASL核心功能开发(2周,最重要!) ### 延后任务 - ⏸️ **任务12**:补充API设计文档(边开发边完善) - ⏸️ **任务13**:Week 1总结验收(可与Week 2一起) --- ## 🎯 关键里程碑 ### 已达成 ✅ - ✅ **2025-11-12**:10个Schema隔离完成 - ✅ **2025-11-12**:Prisma多Schema配置完成 - ✅ **2025-11-12**:Frontend-v2项目创建完成 - ✅ **2025-11-12**:前端顶部导航和模块注册系统完成 ### 即将达成 🎯 - 🎯 **2025-11-14**:Week 2完成(前端架构+后端分层) - 🎯 **2025-11-21**:开始ASL模块开发 - 🎯 **2025-12-04**:ASL Phase 1完成(文献筛选功能) --- ## ⚠️ 注意事项 ### 1. 前端项目有两个 - **frontend/** - 旧的,保留作为参考,**不再开发** - **frontend-v2/** - 新的,**主力开发** ⭐ ### 2. Schema迁移后 - ✅ 数据已100%迁移到新Schema - ✅ public schema中的原始表仍保留(作为备份) - ✅ Prisma已配置,代码自动工作 - ⚠️ 清理public表:等Week 2完成后再决定 ### 3. LLM网关 - 现状:各模块直接调用LLM(DeepSeek、CloseAI) - 计划:Week 5统一抽取LLM网关 - 原因:先有实践再抽象,避免过度设计 ### 4. 模块开发优先级 1. **ASL**(AI智能文献)- Week 3-4,最高优先级 2. **AIA**(AI智能问答)- Week 5+,后续重写 3. **PKB**(个人知识库)- Week 5+,后续重写 4. 其他模块:按需开发 --- ## 🔧 常见问题速查 ### Q1: 如何启动项目? **后端:** ```bash cd backend npm run dev # 端口 3001 ``` **前端(新):** ```bash cd frontend-v2 npm run dev # 端口 3000 ``` ### Q2: 数据库如何连接? **连接信息:** - 主机:localhost:5432 - 数据库:ai_clinical_research - 用户:postgres - 密码:postgres **验证连接:** ```bash cd backend npx prisma migrate status ``` ### Q3: 如何添加新模块? 1. 创建 `frontend-v2/src/modules/[模块名]/index.tsx` 2. 在 `moduleRegistry.ts` 中注册模块 3. 创建后端 `backend/src/modules/[模块名]/` 目录 4. 设计数据库表(在对应的Schema中) ### Q4: 如何使用CloseAI调用LLM? 参考:`docs/02-通用能力层/01-LLM大模型网关/03-CloseAI集成指南.md` **快速示例:** ```typescript import OpenAI from 'openai' // GPT-5 const gpt5 = new OpenAI({ apiKey: 'sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo', baseURL: 'https://api.openai-proxy.org/v1', }) // Claude-4.5 const claude = new OpenAI({ apiKey: 'sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo', baseURL: 'https://api.openai-proxy.org/anthropic', }) ``` --- ## 📈 进度统计 ### 总体进度 - **总任务:** 25项 - **已完成:** 13项(52%) - **进行中:** 0项 - **待完成:** 11项 - **已取消:** 1项(代码适配,Prisma自动处理) ### 时间统计 - **Week 1用时:** 约5小时(原计划2天) - **Week 2 Day 6用时:** 约3小时(原计划半天) - **提前完成:** 节省了约2天时间 🎉 --- ## 🎉 技术亮点 1. ✅ **10个Schema一次性完成** - 3详细+7空,架构预留 2. ✅ **Prisma自动路由** - 无需修改代码 3. ✅ **模块化架构** - 前后端完全独立的模块设计 4. ✅ **4个LLM就绪** - DeepSeek、GPT-5、Claude-4.5、Qwen 5. ✅ **Frontend-v2** - 全新前端架构,顶部导航+模块注册 6. ✅ **Just-in-time设计** - 聚焦当前,架构预留,避免过度设计 --- ## 💬 给下一个AI的建议 ### 理解项目的最快路径 1. **先读本文档**(5分钟) - 了解全貌 2. **再读V2.2计划**(15分钟)- 了解具体任务 3. **边做边查专项文档**(按需)- 深入细节 ### 继续开发的注意事项 1. **前端开发**:在 `frontend-v2/` 中进行,不要改 `frontend/` 2. **后端开发**:当前代码可用,Week 2 Day 8-9再分层 3. **数据库**:新表创建在对应的Schema中(如asl_schema) 4. **LLM调用**:直接使用CloseAI,Week 5再统一网关 5. **文档同步**:开发新功能时同步更新文档 ### 常用命令 ```bash # 前端开发 cd frontend-v2 npm run dev # 后端开发 cd backend npm run dev # 数据库 cd backend npx prisma studio # 可视化数据库 npx prisma migrate status # 查看迁移状态 npx prisma generate # 生成Prisma Client ``` --- ## 🗂️ 文档体系结构 ``` docs/ ├── [AI对接] 项目状态与下一步指南.md ⭐⭐⭐ 本文档(新AI必读) │ ├── 00-系统总体设计/ # 架构级文档 │ ├── 前后端模块化架构设计-V2.md ⭐⭐⭐ 架构总纲 │ └── 01-系统架构分层设计.md │ ├── 01-平台基础层/ # 前端架构 │ └── 06-前端架构/ │ ├── 01-前端总体架构设计.md ⭐⭐ 理论设计 │ └── 02-导航结构设计.md │ ├── 02-通用能力层/ # LLM等能力 │ └── 01-LLM大模型网关/ │ └── 03-CloseAI集成指南.md ⭐⭐⭐ LLM配置 │ ├── 03-业务模块/ # 各模块设计 │ ├── AIA-AI智能问答/ │ ├── ASL-AI智能文献/ │ └── PKB-个人知识库/ │ ├── 07-运维文档/ # 环境配置 │ ├── 01-环境配置指南.md ⭐ 所有配置 │ └── 02-环境变量配置模板.md │ ├── 08-项目管理/ # 计划和进度 │ ├── 下一阶段行动计划-V2.2-完整版.md ⭐⭐⭐ 主计划 │ └── V2.2版本变化说明.md │ └── 09-架构实施/ # 实施记录 ├── 01-Schema隔离架构设计(10个).md ⭐⭐ SQL设计 ├── Schema迁移完成报告.md ✅ 已完成 ├── Prisma配置完成报告.md ✅ 已完成 ├── Frontend-v2创建完成报告.md ✅ 已完成 └── 模块配置更新报告.md ✅ 已完成 ``` --- ## 🚀 如何开始下一步工作 ### 场景1:继续Week 2 Day 7 **目标:** 完善模块注册机制 **操作:** 1. 打开 `frontend-v2/src/framework/modules/` 2. 实现权限控制逻辑 3. 添加错误边界 4. 测试模块加载 **参考:** - `docs/08-项目管理/下一阶段行动计划-V2.2-完整版.md`(任务17-18) - `docs/00-系统总体设计/前后端模块化架构设计-V2.md`(权限控制章节) --- ### 场景2:开始Week 3 ASL开发 **前置条件:** - Week 2 完成(或基本完成) **第一步:4个LLM集成测试** 1. 阅读 `docs/02-通用能力层/01-LLM大模型网关/03-CloseAI集成指南.md` 2. 测试 DeepSeek、GPT-5、Claude-4.5、Qwen连接 3. 编写统一调用服务 **第二步:ASL数据库设计** 1. 参考 AIA/PKB 数据库设计文档 2. 设计 asl_schema 的3个表: - literature_projects(文献项目) - pico_configs(PICO配置) - literature_items(文献条目,含4个模型结果字段) 3. 编写SQL建表语句 **第三步:ASL API和前端设计** 1. 设计API接口 2. 在 `frontend-v2/src/modules/asl/` 下设计页面结构 3. 自动接入统一导航 **参考:** - `docs/03-业务模块/ASL-AI智能文献/01-需求分析/` - `docs/08-项目管理/下一阶段行动计划-V2.2-完整版.md`(Week 3任务) --- ### 场景3:后端代码分层 **时机:** Week 2 Day 8-9 **操作:** 1. 创建 `backend/src/platform/` 2. 创建 `backend/src/common/` 3. 创建 `backend/src/modules/` 4. 迁移现有代码 **参考:** - `docs/00-系统总体设计/前后端模块化架构设计-V2.md`(后端架构章节) --- ## 📝 开发规范速查 ### 命名规范 **前端:** - 组件:PascalCase(`ProjectList.tsx`) - Hooks:camelCase + use前缀(`useProject.ts`) - 工具:camelCase(`formatDate.ts`) **后端:** - Controller:camelCase + Controller后缀(`projectController.ts`) - Service:camelCase + Service后缀(`projectService.ts`) - Routes:`index.ts` ### API设计规范 ``` GET /api/v1/[module]/resources # 列表 GET /api/v1/[module]/resources/:id # 详情 POST /api/v1/[module]/resources # 创建 PUT /api/v1/[module]/resources/:id # 更新 DELETE /api/v1/[module]/resources/:id # 删除 ``` --- ## 🌟 成功经验总结 ### 架构设计经验 1. ✅ **架构先行** - 花时间在设计上,后续开发事半功倍 2. ✅ **Just-in-time** - 聚焦当前,架构预留,避免过度设计 3. ✅ **渐进式改造** - 新旧并存,降低风险 4. ✅ **完整文档** - 详细记录决策和实施过程 ### 技术经验 1. ✅ **Prisma多Schema** - 自动路由,代码无需修改 2. ✅ **模块化架构** - 前后端独立模块,易于扩展 3. ✅ **配置文件格式** - 注意ES Module vs CommonJS 4. ✅ **LLM集成** - CloseAI提供稳定的GPT-5和Claude-4.5访问 --- **最后更新:** 2025-11-12 18:00 **下次更新:** Week 2 Day 7 完成后 **维护者:** 开发团队 **🎯 祝新的AI对话顺利!所有信息已梳理完毕,可以无缝衔接!** ⭐⭐⭐