feat(admin): Add user management and upgrade to module permission system

Features - User Management (Phase 4.1):
- Database: Add user_modules table for fine-grained module permissions
- Database: Add 4 user permissions (view/create/edit/delete) to role_permissions
- Backend: UserService (780 lines) - CRUD with tenant isolation
- Backend: UserController + UserRoutes (648 lines) - 13 API endpoints
- Backend: Batch import users from Excel
- Frontend: UserListPage (412 lines) - list/filter/search/pagination
- Frontend: UserFormPage (341 lines) - create/edit with module config
- Frontend: UserDetailPage (393 lines) - details/tenant/module management
- Frontend: 3 modal components (592 lines) - import/assign/configure
- API: GET/POST/PUT/DELETE /api/admin/users/* endpoints

Architecture Upgrade - Module Permission System:
- Backend: Add getUserModules() method in auth.service
- Backend: Login API returns modules array in user object
- Frontend: AuthContext adds hasModule() method
- Frontend: Navigation filters modules based on user.modules
- Frontend: RouteGuard checks requiredModule instead of requiredVersion
- Frontend: Remove deprecated version-based permission system
- UX: Only show accessible modules in navigation (clean UI)
- UX: Smart redirect after login (avoid 403 for regular users)

Fixes:
- Fix UTF-8 encoding corruption in ~100 docs files
- Fix pageSize type conversion in userService (String to Number)
- Fix authUser undefined error in TopNavigation
- Fix login redirect logic with role-based access check
- Update Git commit guidelines v1.2 with UTF-8 safety rules

Database Changes:
- CREATE TABLE user_modules (user_id, tenant_id, module_code, is_enabled)
- ADD UNIQUE CONSTRAINT (user_id, tenant_id, module_code)
- INSERT 4 permissions + role assignments
- UPDATE PUBLIC tenant with 8 module subscriptions

Technical:
- Backend: 5 new files (~2400 lines)
- Frontend: 10 new files (~2500 lines)
- Docs: 1 development record + 2 status updates + 1 guideline update
- Total: ~4900 lines of code

Status: User management 100% complete, module permission system operational
This commit is contained in:
2026-01-16 13:42:10 +08:00
parent 98d862dbd4
commit 66255368b7
560 changed files with 70424 additions and 52353 deletions

View File

@@ -1,8 +1,8 @@
# 2025-11-06 架构设计总结
> **譌・譛滂シ?* 2025-11-06
> **蟾・菴懃アサ蝙具シ?* 邉サ扈滓楔譫<E6A594>キア蠎ヲ隶セ隶。
> **謌先棡<EFBFBD>?* 7荳ェ譬ク蠢<EFBDB8>楔譫<E6A594>枚譯」<E8ADAF>悟ョ梧紛逧<E7B49B>橿譛ッ譁ケ譯?
> **日期:** 2025-11-06
> **工作类型:** 系统架构深度设计
> **成果:** 7个核心架构文档完整的技术方案
---
@@ -13,143 +13,143 @@
| # | 文档 | 核心内容 | 页数 |
|---|------|---------|------|
| 1 | [00-核心问题解答](./00-核心问题解答.md) | 部署模式、审稿系统独立性、数据库架构澄清 | 详尽 |
| 2 | [01-邉サ扈滓楔譫<EFBFBD><EFBFBD>螻りョセ隶。](./01-邉サ扈滓楔譫<E6A594><E8ADAB>螻りョセ隶。.md) | 荳牙アよ楔譫<E6A594>€?荳ェ荳壼苅讓。蝮励€?荳ェ騾夂畑閭ス蜉<EFBDBD> | 900+ |
| 3 | [02-<EFBFBD>。」菴鍋ウサ驥肴桷譁ケ譯<EFBFBD>2.0](./02-譁<>。」菴鍋ウサ驥肴桷譁ケ譯<EFBDB9>.md) | 譁ー譁<EFBDB0>。」扈捺桷縲?荳ェ讓。蝮励€?遘埼Κ鄂イ譁ケ譯?| 790+ |
| 4 | [03-謨ー謐ョ蠎捺楔譫<EFBFBD>ッエ譏讃(./03-謨ー謐ョ蠎捺楔譫<E6A594>ッエ譏?md) | PostgreSQL Docker驛ィ鄂イ縲∽ク、荳ェ迢ャ遶区焚謐ョ蠎<EFBFBD> | 434+ |
| 5 | [04-霑占是邂。逅<EFBFBD>ォッ譫カ譫<EFBFBD>ョセ隶。](./04-霑占是邂。逅<EFBDA1>ォッ譫カ譫<EFBDB6>ョセ隶?md) | 15荳ェ蜉溯<E89C89>讓。蝮励€?髦カ谿オ螳樊命 | 859+ |
| 6 | [05-Schema髫皮ヲサ譁ケ譯井ク取<EFBFBD>譛ャ蛻<EFBFBD>](./05-Schema髫皮ヲサ譁ケ譯井ク取<EFBDB8>譛ャ蛻<EFBDAC><E89BBB>?md) | 騾サ霎宋s迚ゥ逅<EFBDA9>囈遖サ縲∵隼騾<E99ABC>謌先悽蟇ケ豈?| 1042+ |
| 2 | [01-系统架构分层设计](./01-系统架构分层设计.md) | 三层架构、8个业务模块、5个通用能力 | 900+ |
| 3 | [02-文档体系重构方案v2.0](./02-文档体系重构方案.md) | 新文档结构、8个模块、4种部署方案 | 790+ |
| 4 | [03-数据库架构说明](./03-数据库架构说明.md) | PostgreSQL Docker部署、两个独立数据库 | 434+ |
| 5 | [04-运营管理端架构设计](./04-运营管理端架构设计.md) | 15个功能模块、3阶段实施 | 859+ |
| 6 | [05-Schema隔离方案与成本分析](./05-Schema隔离方案与成本分析.md) | 逻辑vs物理隔离、改造成本对比 | 1042+ |
| 7 | [06-模块独立部署与单机版方案](./06-模块独立部署与单机版方案.md) | 完整打包、共享服务、Electron架构 | 1541+ |
| 8 | [07-Monorepo譫カ譫<EFBFBD><EFBFBD>シー](./07-Monorepo譫カ譫<EFBFBD><EFBFBD>シー.md) | 蠖灘燕髦カ谿オ譏ッ蜷ヲ髴€隕√€<C280>譛ャ謾カ逶雁<E980B6>譫?| 555+ |
| 8 | [07-Monorepo架构评估](./07-Monorepo架构评估.md) | 当前阶段是否需要、成本收益分析 | 555+ |
**諤サ隶。<EFBFBD>?* 6000+ 陦瑚ッヲ扈<EFBDA6>ョセ隶。譁<EFBDA1>。?
**总计:** 6000+ 行详细设计文档
---
## 📊 核心架构决策
### 1. 邉サ扈滓楔譫<EFBFBD><EFBFBD><EFBFBD> 箝絶ュ絶ュ絶ュ絶ュ?
### 1. 系统架构分层 ⭐⭐⭐⭐⭐
**荳牙アよ楔譫<EFBFBD>シ?*
**三层架构:**
```
笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
笏? 荳壼苅讓。蝮怜アゑシ<E38291>8荳ェ讓。蝮暦シ<E69AA6> 笏?
笏? AIA | ASL | PKB | DC | SSA | ST | RVW | ADMIN
笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
竊?萓晁オ<E69981>
笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
笏? 騾夂畑閭ス蜉帛アゑシ<E38291>5荳ェ閭ス蜉幢シ<E5B9A2> 笏?
笏? LLM鄂大<EFBFBD> | 譁<>。」螟<EFBDA3> | RAG | ETL | NLP 笏?
笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
竊?萓晁オ<E69981>
笏娯楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
笏? 蟷ウ蜿ー蝓コ遑€螻? 笏?
笏? 逕ィ謌キ譚<EFBDB7>剞 | 蟄伜お | 騾夂衍 | 逶第而 | 驟咲スョ 笏?
笏披楳笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏€笏?
┌───────────────────────────────────────┐
│ 业务模块层8个模块
AIA | ASL | PKB | DC | SSA | ST | RVW | ADMIN
└───────────────────────────────────────┘
↓ 依赖
┌───────────────────────────────────────┐
│ 通用能力层5个能力
LLM网关 | 文档处理 | RAG | ETL | NLP
└───────────────────────────────────────┘
↓ 依赖
┌───────────────────────────────────────┐
│ 平台基础层
│ 用户权限 | 存储 | 通知 | 监控 | 配置 │
└───────────────────────────────────────┘
```
**蜈ウ髞ョ豢槫ッ滂シ?*
- 笨?LLM鄂大<EFBFBD><EFBFBD>?1%螟咲畑邇<E79591><EFBFBD>5/7讓。蝮嶺セ晁オ厄シ?
- 笨?譁<>。」螟<EFBDA3><EFBFBD>?6%螟咲畑邇<E79591><EFBFBD>6/7讓。蝮嶺セ晁オ厄シ?
- 笨?讓。蝮礼峡遶区€<C280>啌VW縲、SL縲C蜿ッ迢ャ遶矩楳蜚?
**关键洞察:**
- LLM网关71%复用率5/7模块依赖
- ✅ 文档处理86%复用率6/7模块依赖
- ✅ 模块独立性RVW、ASL、DC可独立销售
---
### 2. 荳壼苅讓。蝮苓ァ<EFBFBD><EFBFBD><EFBFBD>?荳ェ讓。蝮暦シ<E69AA6>
### 2. 业务模块规划8个模块
| 讓。蝮<EFBFBD> | 蜷咲ァー | 蝠<>ク壻サキ蛟?| 迢ャ遶区€?| 迥カ諤?|
| 模块 | 名称 | 商业价值 | 独立性 | 状态 |
|------|------|---------|-------|------|
| AIA | AI譎コ閭ス髣ョ遲<EFBFBD> | 箝絶ュ絶ュ絶ュ<E7B5B6> | 箝絶ュ絶ュ?| 笨?蟾イ螳梧<E89EB3>?|
| ASL | AI譎コ閭ス譁<EFBFBD>鍵 | 箝絶ュ絶ュ絶ュ絶ュ?| 箝絶ュ絶ュ絶ュ絶ュ?| 竢?荳倶ク€豁・驥咲<E9A9A5>?|
| PKB | 荳ェ莠コ遏・隸<EFBFBD>コ?| 箝絶ュ絶ュ?| 箝絶ュ絶ュ?| 笨?蟾イ螳梧<E89EB3>?|
| DC | 謨ー謐ョ貂<EFBFBD>エ玲紛逅<EFBFBD> | 箝絶ュ絶ュ絶ュ絶ュ?| 箝絶ュ絶ュ絶ュ絶ュ?| 竢?隗<><E99A97>荳?|
| SSA | 譎コ閭ス扈溯ョ。蛻<EFBFBD>梵 | 箝絶ュ絶ュ絶ュ絶ュ?| 箝絶ュ絶ュ絶ュ<E7B5B6> | 竢?隗<><E99A97>荳?|
| ST | 扈溯ョ。蛻<EFBFBD>梵蟾・蜈キ | 箝絶ュ絶ュ絶ュ<E7B5B6> | 箝絶ュ絶ュ絶ュ<E7B5B6> | 竢?隗<><E99A97>荳?|
| RVW | 遞ソ莉カ螳。譟・邉サ扈<EFBFBD> | 箝絶ュ絶ュ絶ュ絶ュ?| 箝絶ュ絶ュ絶ュ絶ュ?| 笞?迢ャ遶狗ウサ扈<EFBDBB> |
| **ADMIN** | 霑占是邂。逅<EFBFBD>ォ?| 箝絶ュ絶ュ絶ュ絶ュ?| 箝絶ュ絶ュ絶ュ絶ュ?| 箝?譁ー蠅<EFBDB0> |
| AIA | AI智能问答 | ⭐⭐⭐⭐ | ⭐⭐⭐ | ✅ 已完成 |
| ASL | AI智能文献 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⏳ 下一步重点 |
| PKB | 个人知识库 | ⭐⭐⭐ | ⭐⭐⭐ | ✅ 已完成 |
| DC | 数据清洗整理 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⏳ 规划中 |
| SSA | 智能统计分析 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⏳ 规划中 |
| ST | 统计分析工具 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⏳ 规划中 |
| RVW | 稿件审查系统 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⚡ 独立系统 |
| **ADMIN** | 运营管理端 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐ 新增 |
**譬ク蠢<EFBFBD>コョ轤ケ<EFBFBD>?*
- 笨?譁ー蠅櫁ソ占是邂。逅<EFBDA1>ォッ<EFBDAB><EFBDAF>15荳ェ蜉溯<E89C89>讓。蝮暦シ<E69AA6>
- 笨?3荳ェ讓。蝮玲栫蜈キ迢ャ遶矩楳蜚ョ莉キ蛟シ<E89B9F><EFBDBC>VW縲、SL縲C<EFBC8E>?
**核心亮点:**
- ✅ 新增运营管理端15个功能模块
- ✅ 3个模块极具独立销售价值RVW、ASL、DC
---
### 3. 驛ィ鄂イ譁ケ譯茨シ?遘肴ィ。蠑擾シ<E693BE>
### 3. 部署方案4种模式
| 驛ィ鄂イ讓。蠑<EFBFBD> | 逶ョ譬<EFBDAE>畑謌キ | 謚€譛ッ譁ケ譯?| 莉」遐∝、咲畑 | 莨伜<E88EA8>郤?|
| 部署模式 | 目标用户 | 技术方案 | 代码复用 | 优先级 |
|---------|---------|---------|---------|-------|
| **云端SaaS** | 个人、小机构 | Node.js + PostgreSQL | 100% | P0当前 |
| **迢ャ遶倶コァ蜩∝<EFBFBD>?* | 迚ケ螳壼ョ「謌キ | Docker螳梧紛謇灘桁 | 80% | P1<EFBFBD>磯亳谿オ莠鯉シ?|
| **Electron蜊墓惻迚?* | 荳ェ莠コ蛹サ逕<EFBDBB> | 蜑咲ォッ90%+蜷守ォッ80% | 85% | P2<EFBFBD>磯亳谿オ莠鯉シ?|
| **遘∵怏蛹夜Κ鄂?* | 蛹サ髯「縲∵惻譫?| K8s/Docker | 100% | P1<EFBFBD>磯亳谿オ莠鯉シ?|
| **独立产品包** | 特定客户 | Docker完整打包 | 80% | P1(阶段二) |
| **Electron单机版** | 个人医生 | 前端90%+后端80% | 85% | P2(阶段二) |
| **私有化部署** | 医院、机构 | K8s/Docker | 100% | P1(阶段二) |
**蜈ウ髞ョ豢槫ッ滂シ?*
- 笨?Electron蜊墓惻迚井サ」遐∝、咲畑邇<EFBFBD>栫鬮假シ?5%+<EFBFBD>?
- 笨?迢ャ遶倶コァ蜩∝桁謾ッ謖∵ィ。蝮怜喧髞€蜚?
- 笨?4遘埼Κ鄂イ隕<EFBDB2>尠蜈ィ驛ィ蟶ょ惻髴€豎?
**关键洞察:**
- Electron单机版代码复用率极高85%+
- ✅ 独立产品包支持模块化销售
- ✅ 4种部署覆盖全部市场需求
---
### 4. 謨ー謐ョ蠎捺楔譫?
### 4. 数据库架构
**当前状态:**
- 笨?譛芽<E8AD9B>蟾ア迢ャ遶狗噪PostgreSQL謨ー謐ョ蠎難シ<E99BA3>ocker驛ィ鄂イ<E98482>?
- 笨?16蠑<36>陦ィ<E999A6><EFBFBD>驛ィ蝨ィpublic schema
- 笶?髴€隕ヾchema髫皮ヲサ<EFBDA6>域悴譚・蠕ョ譛榊苅諡<E88B85><E8ABA1><EFBFBD>渕遑€<E98191>?
- ✅ 有自己独立的PostgreSQL数据库Docker部署
- ✅ 16张表全部在public schema
- ❌ 需要Schema隔离未来微服务拆分的基础
**Schema髫皮ヲサ蜀ウ遲厄シ?*
**Schema隔离决策:**
| 方案 | 成本 | 时机 | 建议 |
|------|------|------|------|
| 邇ー蝨ィ蛛夂黄逅<EFBFBD>囈遖?| 1蜻?| 謨ー謐ョ驥丞ー<E4B89E> | 箝絶ュ絶ュ絶ュ絶ュ?蠑コ辜域耳闕<E880B3> |
| 扈ァ扈ュ騾サ霎鷹囈遖サ | 0 | 蠖灘燕 | 箝絶ュ絶ュ?蜿ッ謗・蜿?|
| 譛ェ譚・蛛夂黄逅<EFBFBD>囈遖?| 3-5蜻?| 謨ー謐ョ驥丞、ァ | 笞<><E7AC9E><EFBFBD> 謌先悽5蛟?|
| 现在做物理隔离 | 1周 | 数据量小 | ⭐⭐⭐⭐⭐ 强烈推荐 |
| 继续逻辑隔离 | 0 | 当前 | ⭐⭐⭐ 可接受 |
| 未来做物理隔离 | 3-5周 | 数据量大 | ⚠️ 成本5倍 |
**蜈ウ髞ョ豢槫ッ滂シ?*
- 笨?邇ー蝨ィ蛛壽<E89B9B>譛ャ譛€菴趣シ域焚謐ョ驥丞ー擾シ?
- 笨?荳?荳ェ讓。蝮玲遠荳句撓螳槫渕遑€
- 笨?謾ッ謖∵ィ。蝮礼峡遶矩Κ鄂イ
**关键洞察:**
- ✅ 现在做成本最低(数据量小)
- ✅ 为7个模块打下坚实基础
- ✅ 支持模块独立部署
---
### 5. 霑占是邂。逅<EFBFBD>ォッ<EFBFBD>育ャ?荳ェ讓。蝮暦シ<E69AA6>
### 5. 运营管理端第8个模块
**15个核心功能**
**P0<EFBFBD>亥ソ<EFBFBD>。サ<EFBFBD>会シ?*
**P0(必须):**
1. 用户管理
2. Feature Flag管理
3. LLM模型管理
4. 系统配置管理
**P1<EFBFBD>磯㍾隕<EFBFBD>シ会シ?*
**P1(重要):**
5. 智能体提示词管理
6. 逶第而荳取律蠢?
7. 謨ー謐ョ扈溯ョ。荳取冠陦?
8. 謌先悽蛻<EFBFBD>梵荳手ョ。雍?
6. 监控与日志
7. 数据统计与报表
8. 成本分析与计费
**P2<EFBFBD>域怏逕ィ<EFBFBD>会シ?*
9-15. 遘滓姐邂。逅<EFBFBD>€<EFBFBD>蜻翫€∵枚譯」縲∝キ・蜊輔€∝▼蠎キ譽€譟・縲∝、<EFBFBD>サス縲∬ソ占是蛻<EFBFBD><EFBFBD>?
**P2(有用):**
9-15. 租户管理、公告、文档、工单、健康检查、备份、运营分析
**螳樊命隶。蛻抵シ?*
- 髦カ谿オ荳€<EFBFBD>?-2荳ェ譛茨シ会シ啀0蜉溯<E89C89>
**实施计划:**
- 阶段一1-2个月P0功能
- 阶段二1-2个月P1功能
- 阶段三1-2个月P2功能
**蜈ウ髞ョ豢槫ッ滂シ?*
- 笨?蝠<>ク壽ィ。蠑冗噪謚€譛ッ菫晞囿<E6999E><E59BBF>eature Flag縲∵<E7B8B2>譛ャ謗ァ蛻カ<E89BBB><EFBDB6>
- 笨?迢ャ遶狗噪蜑咲ォッ蠎皮畑<E79AAE><E79591>https://admin.yizhengxun.com`<EFBFBD>?
**关键洞察:**
- ✅ 商业模式的技术保障Feature Flag、成本控制
- ✅ 独立的前端应用(`https://admin.yizhengxun.com`
---
### 6. 模块独立部署方案
**譁ケ譯井ク€<EFBFBD>壼ョ梧紛謇灘桁<EFBFBD>育峡遶倶コァ蜩<EFBFBD>シ?*
**方案一:完整打包(独立产品)**
```
审稿系统独立产品 =
RVW讓。蝮<EFBFBD> + 蠢<>怙逧<E68099>ケウ蜿ー螻<EFBDB0> + 蠢<>怙逧<E68099><E980A7>蜉帛ア<E5B89B> + 迢ャ遶区焚謐ョ蠎?
RVW模块 + 必需的平台层 + 必需的能力层 + 独立数据库
```
**譁ケ譯井コ鯉シ壼<EFBFBD>莠ォ譛榊苅<EFBFBD>亥ケウ蜿ー蜀<EFBFBD>ィ。蝮暦シ?*
**方案二:共享服务(平台内模块)**
```
API网关
├─ AIA模块服务独立部署
@@ -158,28 +158,28 @@ API网关
```
**关键技术:**
- 笨?Monorepo譫カ譫<EFBFBD>シ亥桁邂。逅<EFBFBD>€∽サ」遐∝、咲畑<EFBFBD><EFBFBD>
- 笨?騾画叫諤ァ蟇シ蜃コ<E89C83>育イセ邂€迚亥ケウ蜿ー螻ゑシ?
- 笨?Docker謇灘桁<EFBFBD>井ク€髞ョ驛ィ鄂イ<EFBFBD><EFBFBD>
- Monorepo架构(包管理、代码复用)
- ✅ 选择性导出(精简版平台层)
- Docker打包(一键部署)
---
### 7. Monorepo架构评估
**謌先悽蟇ケ豈費シ?*
**成本对比:**
| 譁ケ譯<EFBFBD> | 遶句叉謌先悽 | 譛ェ譚・謌先悽 | 謚募<E8AC9A>莠ァ蜃コ豈?|
| 方案 | 立即成本 | 未来成本 | 投入产出比 |
|------|---------|---------|-----------|
| **邇ー蝨ィ霓ャ謐「** | 2-3螟?| 0 | 箝絶ュ絶ュ絶ュ絶ュ?譫<><EFBFBD> |
| **蟒カ蜷手スャ謐「** | 0 | 7-11螟?| 箝絶ュ<E7B5B6> 菴?|
| **现在转换** | 2-3| 0 | ⭐⭐⭐⭐⭐ 极高 |
| **延后转换** | 0 | 7-11天 | ⭐⭐ 低 |
**蟒コ隶ョ<EFBFBD>?* 邇ー蝨ィ霓ャ謐「 箝絶ュ絶ュ絶ュ絶ュ?
**建议:** 现在转换 ⭐⭐⭐⭐⭐
**<EFBFBD><EFBFBD>?*
1. 笨?謚募<E8AC9A>蟆擾シ<E693BE>2-3螟ゥ<E89E9F>会シ梧噺逶雁、ァ<EFBDA4>郁鰍逵?-8螟ゥ<E89E9F><EFBDA9>
2. 笨?豁」螟<EFBDA3>コ取怙菴ウ譌カ譛コ<E8AD9B>亥叉蟆<E58F89>€蜿大、壽ィ。蝮暦シ?
3. 笨?隨ヲ蜷域悴譚・隗<EFBDA5><E99A97><EFBFBD>郁ソ占是邂。逅<EFBDA1>ォッ縲∫峡遶倶コァ蜩<EFBDA7><EFBFBD>
4. 笨?蟄ヲ荵<EFBDA6>謌先悽蜿ッ謗ァ<E8AC97>域怏AI蜈ィ遞区欠蟇シ<E89F87>?
**理由:**
1. ✅ 投入小2-3天收益大节省5-8天
2. ✅ 正处于最佳时机(即将开发多模块)
3. ✅ 符合未来规划(运营管理端、独立产品)
4. ✅ 学习成本可控有AI全程指导
---
@@ -187,37 +187,37 @@ API网关
### 决策1Schema隔离
**蟒コ隶ョ<EFBFBD>夂鴫蝨ィ蛛夂黄逅<EFBFBD>囈遖サ** 箝絶ュ絶ュ絶ュ絶ュ?
**建议:现在做物理隔离** ⭐⭐⭐⭐⭐
- 謌先悽<EFBFBD>?蜻?
- 謾カ逶奇シ夐∩蜈肴悴譚?-5蜻ィ逧<EFBDA8>隼騾<E99ABC>謌先<E8AC8C>?
- 成本1周
- 收益避免未来3-5周的改造成本
- 理由:数据量小,改造风险低
---
### 决策2Monorepo架构
**蟒コ隶ョ<EFBFBD>夂鴫蝨ィ霓ャ謐?* 箝絶ュ絶ュ絶ュ絶ュ?
**建议:现在转换** ⭐⭐⭐⭐⭐
- 謌先悽<EFBFBD>?-3螟?
- 謾カ逶奇シ夊鰍逵∵悴譚?-8螟?
- 成本2-3天
- 收益节省未来5-8天
- 理由即将开发多个应用运营管理端、ASL等
---
### 蜀ウ遲<EFBFBD>3<EFBFBD>Κ鄂イ譁ケ譯?
### 决策3部署方案
**阶段一专注云端SaaS**
- 荳榊★豺キ蜷磯Κ鄂イ<EFBFBD>域橿譛ッ髫セ蠎ヲ譫<EFBFBD>ォ假シ碁怙豎ゆク肴<EFBFBD>遑ョ<EFBFBD>?
- 不做混合部署(技术难度极高,需求不明确)
- 暂缓Electron单机版阶段二再做
---
### 蜀ウ遲<EFBFBD>4<EFBFBD>壻ク倶ク€豁・蠑€蜿鷹㍾轤?
### 决策4下一步开发重点
**优先级:**
1. P0<EFBFBD>哂SL讓。蝮暦シ<EFBFBD>I譎コ閭ス譁<EFBFBD><EFBFBD>?
2. P0<EFBFBD>哭LM鄂大<EFBFBD><EFBFBD>亥膚荳壽ィ。蠑丞渕遑€<EFBFBD>?
1. P0ASL模块AI智能文献
2. P0LLM网关商业模式基础
3. P1Schema隔离可选但强烈推荐
4. P1Monorepo转换可选但强烈推荐
@@ -225,20 +225,20 @@ API网关
## 📚 文档体系v2.0
### 譁ー譁<EFBFBD>。」扈捺<EFBFBD>?
### 新文档结构
```
docs/
笏懌楳笏€ 00-邉サ扈滓€サ菴楢ョセ隶。/ 笨?7荳ェ譬ク蠢<EFBDB8>枚譯?
笏懌楳笏€ 01-蟷ウ蜿ー蝓コ遑€螻?
笏懌楳笏€ 02-騾夂畑閭ス蜉帛ア?
笏懌楳笏€ 03-荳壼苅讓。蝮<EFBDA1>/ 笨?譁ー蠅暸DMIN讓。蝮暦シ亥<EFBDBC>8荳ェ<E88DB3><EFBDAA>
笏懌楳笏€ 04-蠑€蜿題ァ<E9A18C><EFBDA7>?
笏懌楳笏€ 05-驛ィ鄂イ譁<EFBDB2>。」/ 笨?謇ゥ螻穂ク?遘埼Κ鄂イ譁ケ譯?
├── 00-系统总体设计/ ✅ 7个核心文档
├── 01-平台基础层/
├── 02-通用能力层/
├── 03-业务模块/ ✅ 新增ADMIN模块共8个
├── 04-开发规范/
├── 05-部署文档/ ✅ 扩展为4种部署方案
├── 06-测试文档/
├── 07-运维文档/
├── 08-项目管理/
笏披楳笏€ 09-譫カ譫<EFBDB6>ョ樊命/ 笨?譁ー蠅橸シ<E6A9B8>onorepo縲∵遠蛹<E981A0>€∝セョ譛榊苅<E6A68A>?
└── 09-架构实施/ ✅ 新增Monorepo、打包、微服务
```
---
@@ -249,48 +249,48 @@ docs/
**为什么?**
```
<EFBFBD>ク壽ィ。蠑擾シ?
- 蝓コ遑€迚茨シ壼宵閭ス逕ィDeepSeek-V3<EFBFBD>按?/逋セ荳㏄okens<EFBFBD>?
商业模式:
- 基础版:只能用DeepSeek-V3¥1/百万tokens
- 高级版可用DeepSeek + Qwen3
- 譌苓芦迚茨シ壼庄逕ィ謇€譛画ィ。蝙?
- 旗舰版:可用所有模型
謌先悽謗ァ蛻カ<EFBFBD>?
- 扈滉ク€逶第而縲<EFBFBD>剞豬√€∬ョ。雍?
成本控制:
- 统一监控、限流、计费
- 超出配额自动降级
- 謖臥沿譛ャ蜉ィ諤∝<EFBFBD>謐「讓。蝙?
- 按版本动态切换模型
5个模块依赖71%复用率)
```
---
### 2. 螳。遞ソ邉サ扈滓栫蜈キ迢ャ遶倶サキ蛟?
### 2. 审稿系统极具独立价值
**荳コ莉€荵磯€ょ粋迢ャ遶具シ?*
**为什么适合独立?**
```
1. 逕ィ謌キ鄒、螳悟<EFBFBD>荳榊酔<EFBFBD>域悄蛻顔シ冶セ鷹<EFBFBD>?vs 荳エ蠎雁現逕滂シ?
1. 用户群完全不同(期刊编辑部 vs 临床医生)
2. 业务逻辑完全独立
3. 部署场景独立
4. <EFBFBD>ク壽ィ。蠑冗峡遶具シ域潔譛溷<EFBFBD>隶「髦<EFBFBD>シ?
4. 商业模式独立(按期刊订阅)
迢ャ遶矩楳蜚ョ莉キ蛟シ<EFBFBD>壺ュ絶ュ絶ュ絶ュ絶ュ?譫<><EFBFBD>
独立销售价值:⭐⭐⭐⭐⭐ 极高
```
---
### 3. 邇ー蝨ィ譏ッ譛€菴ウ謾ケ騾<EFBFBD>譌カ譛?
### 3. 现在是最佳改造时机
**荳コ莉€荵育鴫蝨ィ蛛夲シ?*
**为什么现在做?**
```
Schema髫皮ヲサ<EFBFBD>?
- 邇ー蝨ィ<EFBFBD>?蜻ィ<E89CBB>域焚謐ョ驥丞ー擾シ?
- 譛ェ譚・<EFBFBD>?-5蜻ィ<E89CBB>域焚謐ョ驥丞、ァ<EFBDA4><EFBFBD>譛?蛟搾シ<E690BE>
Schema隔离:
- 现在1周数据量小
- 未来3-5周数据量大成本5倍
Monorepo霓ャ謐「<EFBFBD>?
- 邇ー蝨ィ<EFBFBD>?-3螟ゥ<E89E9F>井サ」遐<EFBDA3>㍼騾ゆクュ<EFBDB8>?
- 譛ェ譚・<EFBFBD>?-11螟ゥ<E89E9F>亥、壼コ皮畑縲∽サ」遐<EFBDA3>㍼螟ァ<E89E9F><EFBDA7>
Monorepo转换:
- 现在2-3天代码量适中
- 未来7-11天多应用、代码量大
諤サ扈難シ夊カ頑掠蛛夲シ梧<EFBFBD>譛ャ雜贋ス?
总结:越早做,成本越低
```
---
@@ -299,211 +299,211 @@ Monorepo转换
**为什么可行?**
```
蜑咲ォッ螟咲畑<EFBFBD>?0%+
前端复用90%+
- 所有React组件
- UI蠎薙€∫憾諤∫ョ。逅<EFBFBD>€∬キッ逕?
- UI库、状态管理、路由
- 只需修改API调用层1个文件
蜷守ォッ螟咲畑<EFBFBD>?0%+
- 謇€譛唄ervice螻ゑシ井ク壼苅騾サ霎托シ?
后端复用80%+
- 所有Service层(业务逻辑)
- Prisma ORM
- 蜿ェ髴€騾る<EFBFBD><EFBFBD>唏TTP霍ッ逕ア 竊?IPC Handler
- 只需适配HTTP路由 → IPC Handler
諤サ螟咲畑邇<EFBFBD>シ?5%+
€譛ッ蜿ッ陦梧€<EFBFBD>壺ュ絶ュ絶ュ絶ュ絶ュ?
总复用率85%+
技术可行性:⭐⭐⭐⭐⭐
```
---
## <EFBFBD>噫 荳倶ク€豁・陦悟勘蟒コ隶?
## 🚀 下一步行动建议
### 譁ケ譯<EFBFBD><EFBFBD>壼ソォ騾滓耳霑帑ク壼苅<EFBFBD>域耳闕千サ呎慮髣エ邏ァ霑ォ逧<EFBFBD>ュ蜀オ<EFBFBD>?
### 方案A快速推进业务推荐给时间紧迫的情况
**譛ャ蜻ィ<EFBFBD>?*
- 笨?遶句叉蠑€蟋帰SL讓。蝮怜シ€蜿?
**本周:**
- ✅ 立即开始ASL模块开发
- ⚠️ 暂缓Schema隔离
- ⚠️ 暂缓Monorepo转换
**隗ヲ蜿第擅莉カ<EFBFBD>?*
**触发条件:**
- 开发运营管理端时必须转换Monorepo
- 謨ー謐ョ驥剰カ<EFBFBD>ソ?0荳<30>。梧慮<E6A2A7>悟ソ<E6829F>。サ蛛售chema髫皮ヲサ
- 数据量超过50万行时必须做Schema隔离
**莨倡せ<EFBFBD>?* 遶句叉謗ィ霑帑ク壼苅
**郛コ轤ケ<EFBFBD>?* 邏ッ遘ッ謚€譛ッ蛟コ<E89B9F>梧悴譚・謌先悽鬮?
**优点:** 立即推进业务
**缺点:** 累积技术债,未来成本高
---
### 譁ケ譯<EFBFBD><EFBFBD>壼、ッ螳槫渕遑€<EFBFBD>檎ィウ豁・謗ィ霑幢シ亥シコ辜域耳闕撰シ?
### 方案B夯实基础稳步推进强烈推荐
**隨?蜻ィ<E89CBB>chema髫皮ヲサ + Monorepo霓ャ謐「<EFBFBD>?-6螟ゥ<E89E9F><EFBDA9>**
- Day 1-3<EFBFBD>chema髫皮ヲサ<EFBFBD>€サ霎鷹囈遖サ 竊?迚ゥ逅<EFBDA9>囈遖サ<E98196>?
**第1周Schema隔离 + Monorepo转换5-6天**
- Day 1-3Schema隔离(逻辑隔离 → 物理隔离)
- Day 4-6Monorepo转换
**隨?蜻ィ<E89CBB>壼シ€蟋帰SL讓。蝮怜シ€蜿?*
- 莠ォ蜿祐chema髫皮ヲサ蟶ヲ譚・逧<EFBFBD><EFBFBD>匆譫カ譫?
- 莠ォ蜿柚onorepo蟶ヲ譚・逧<EFBFBD>サ」遐∝、咲畑萓ソ蛻?
**第2周开始ASL模块开发**
- 享受Schema隔离带来的清晰架构
- 享受Monorepo带来的代码复用便利
**莨倡せ<EFBFBD>?*
- 笨?荳€谺。諤ァ霑俶ク<E4BFB6>橿譛ッ蛟?
- 笨?荳?荳ェ讓。蝮玲遠荳句撓螳槫渕遑€
- 笨?驕ソ蜈肴悴譚・螟ァ隗<EFBDA7>ィ。驥肴<E9A9A5>?
**优点:**
- ✅ 一次性还清技术债
- ✅ 为7个模块打下坚实基础
- ✅ 避免未来大规模重构
**郛コ轤ケ<EFBFBD>?*
- <EFBFBD><EFBFBD><EFBFBD> ASL讓。蝮怜サカ霑<EFBDB6>1蜻?
**缺点:**
- ⚠️ ASL模块延迟1周
**謚募<EFBFBD>莠ァ蜃コ豈費シ<EFBFBD>** 箝絶ュ絶ュ絶ュ絶ュ?譫<><EFBFBD>
**投入产出比:** ⭐⭐⭐⭐⭐ 极高
---
### 譁ケ譯<EFBFBD><EFBFBD>壽釜荳ュ譁ケ譯茨シ域耳闕撰シ?
### 方案C折中方案推荐
**譛ャ蜻ィ<EFBFBD>?*
- Day 1-3<EFBFBD>onorepo霓ャ謐「<EFBFBD>亥ソ<EFBFBD>。サ<EFBFBD>瑚ソ第悄蠑€蜿題ソ占是邂。逅<EFBFBD>ォッ<EFBFBD>?
- Day 4-7<EFBFBD>壼シ€蟋帰SL讓。蝮怜シ€蜿?
**本周:**
- Day 1-3Monorepo转换(必须,近期开发运营管理端)
- Day 4-7开始ASL模块开发
**荳句捉<EFBFBD>?*
- 扈ァ扈ュASL讓。蝮怜シ€蜿?
**下周:**
- 继续ASL模块开发
**譛ェ譚・<EFBFBD>?-2荳ェ譛亥錘<E4BAA5>会シ?*
**未来1-2个月后**
- Schema隔离数据量增长前
**莨倡せ<EFBFBD>?*
- 笨?隗」蜀ウ譛€邏ァ霑ォ逧<EFBDAB>琉鬚假シ<E58187>onorepo<EFBFBD>?
- 笨?蠢ォ騾滓耳霑帑ク壼苅<E5A3BC><E88B85>SL<53>?
- 笨?蟒カ蜷惹ス<E683B9>ク肴叛蠑ゴchema髫皮ヲサ
**优点:**
- ✅ 解决最紧迫的问题Monorepo
- ✅ 快速推进业务ASL
- ✅ 延后但不放弃Schema隔离
**郛コ轤ケ<EFBFBD>?*
- <EFBFBD><EFBFBD><EFBFBD> Schema髫皮ヲサ謌先悽莨壼「槫<EFBFBD>?
**缺点:**
- ⚠️ Schema隔离成本会增加
---
## <EFBFBD>投 謚募<E8AC9A>莠ァ蜃コ豈泌<E8B188>譫?
## 📊 投入产出比分析
| 投入 | 成本 | 收益 | ROI |
|------|------|------|-----|
| **Schema髫皮ヲサ** | 1蜻?| 驕ソ蜈肴悴譚・3-5蜻ィ謾ケ騾?| 300-500% |
| **Monorepo霓ャ謐「** | 2-3螟?| 驕ソ蜈肴悴譚・7-11螟ゥ謾ケ騾?| 300-400% |
| **譫カ譫<EFBFBD>ョセ隶。** | 1螟?| 貂<>匆逧<E58C86>橿譛ッ霍ッ郤ソ蝗セ | 譌<>莉キ |
| **Schema隔离** | 1周 | 避免未来3-5周改造 | 300-500% |
| **Monorepo转换** | 2-3天 | 避免未来7-11天改造 | 300-400% |
| **架构设计** | 1天 | 清晰的技术路线图 | 无价 |
**諤サ謚募<EFBFBD>莠ァ蜃コ豈費シ?* 箝絶ュ絶ュ絶ュ絶ュ?譫<><EFBFBD>
**总投入产出比:** ⭐⭐⭐⭐⭐ 极高
---
## <EFBFBD>識 謌醍噪譛€扈亥サコ隶?
## 🎯 我的最终建议
### 推荐方案B夯实基础⭐⭐⭐⭐⭐
**譬ク蠢<EFBFBD>炊逕ア<EFBFBD>?*
**核心理由:**
**1. 投入1周节省未来1个月**
```
邇ー蝨ィ謚募<EFBFBD><EFBFBD>?
- Schema髫皮ヲサ<EFBFBD>?螟?
- Monorepo霓ャ謐「<EFBFBD>?螟?
- 諤サ隶。<EFBFBD>?螟ゥ<E89E9F><EFBDA9>1蜻ィ<E89CBB><EFBDA8>
现在投入:
- Schema隔离3天
- Monorepo转换3天
- 总计6天1周
譛ェ譚・闃ら怐<EFBFBD>?
- Schema髫皮ヲサ<EFBFBD>?5-25螟ゥ<E89E9F><EFBDA9>3-5蜻ィ<E89CBB><EFBDA8>
- Monorepo霓ャ謐「<EFBFBD>?-11螟?
- 諤サ隶。<EFBFBD>?2-36螟ゥ<E89E9F><EFBDA9>1荳ェ譛<EFBDAA>+<2B>?
未来节省:
- Schema隔离15-25天3-5周
- Monorepo转换7-11
- 总计22-36天1个月+
投入产出比300-500%
```
**2. 豁」螟<EFBFBD>コ取怙菴ウ譌カ譛?*
**2. 正处于最佳时机**
```
蠖灘燕<EFBFBD>?
- 謨ー謐ョ驥丞ー擾シ? 1荳<31>。鯉シ?
当前:
- 数据量小(< 1万行
- 代码量适中
- 蜊ウ蟆<EFBFBD>€蜿大、壻クェ讓。蝮?
- 即将开发多个模块
- 团队小,沟通成本低
譛ェ譚・<EFBFBD>?
- 謨ー謐ョ驥丞、ァ<EFBFBD>?00荳<30><EFBFBD>+<2B>?
未来:
- 数据量大100万行+
- 代码量大
- 多个应用同时运行
- 驥肴桷蠖ア蜩崎激蝗エ螟?
- 重构影响范围大
```
**3. 荳?荳ェ讓。蝮玲遠荳句撓螳槫渕遑€**
**3. 为7个模块打下坚实基础**
```
ASL、DC、SSA、ST、RVW、ADMIN等模块
- 逶エ謗・莠ォ蜿祐chema髫皮ヲサ逧<EFBFBD>・ス螟?
- 逶エ謗・莠ォ蜿柚onorepo逧<EFBFBD>サ」遐∝、咲<EFBFBD>?
- 驕ソ蜈埼㍾螟埼€<EFBFBD>霓ョ蟄?
- 直接享受Schema隔离的好处
- 直接享受Monorepo的代码复用
- 避免重复造轮子
```
**4. 驕ソ蜈肴橿譛ッ蛟コ邏ッ遘?*
**4. 避免技术债累积**
```
€譛ッ蛟コ逧<EFBFBD>音轤ケ<EFBFBD>?
- 譌カ髣エ雜贋ケ<EFBFBD>シ悟茜諱ッ雜企ォ?
- 謾ケ騾<EFBFBD>謌先悽謌仙€榊「樣<EFBFBD>?
技术债的特点:
- 时间越久,利息越高
- 改造成本成倍增长
- 影响业务创新速度
邇ー蝨ィ謾ケ騾?= 荳€谺。諤ァ霑俶ク?
现在改造 = 一次性还清
```
---
## 笨?莉頑律螳梧<E89EB3><EFBFBD>
## ✅ 今日完成清单
### 譫カ譫<EFBFBD>ョセ隶。<EFBFBD>?00%螳梧<E89EB3><E6A2A7>?
### 架构设计100%完成)
- [x] 系统架构分层设计
- [x] 文档体系重构方案v2.0
- [x] 謨ー謐ョ蠎捺楔譫<EFBFBD>ッエ譏?
- [x] 霑占是邂。逅<EFBFBD>ォッ譫カ譫<EFBFBD>ョセ隶?
- [x] Schema髫皮ヲサ譁ケ譯井ク取<EFBFBD>譛ャ蛻<EFBFBD><EFBFBD>?
- [x] 数据库架构说明
- [x] 运营管理端架构设计
- [x] Schema隔离方案与成本分析
- [x] 模块独立部署与单机版方案
- [x] Monorepo架构评估
### 蜈ウ髞ョ蜀ウ遲厄シ?00%螳梧<E89EB3><E6A2A7>?
### 关键决策100%完成)
- [x] 三层架构设计
- [x] 8荳ェ荳壼苅讓。蝮苓ァ<EFBFBD><EFBFBD>?
- [x] 4遘埼Κ鄂イ譁ケ譯郁ョセ隶?
- [x] 8个业务模块规划
- [x] 4种部署方案设计
- [x] Schema隔离时机建议
- [x] Monorepo转换时机建议
### <EFBFBD>。」莠ァ蜃コ<EFBFBD>?00%螳梧<E89EB3><E6A2A7>?
### 文档产出100%完成)
- [x] 7荳ェ譬ク蠢<EFBFBD>楔譫<EFBFBD>枚譯?
- [x] 6000+陦瑚ッヲ扈<EFBFBD>ョセ隶?
- [x] 螳梧紛逧<EFBFBD>橿譛ッ譁ケ譯?
- [x] 7个核心架构文档
- [x] 6000+行详细设计
- [x] 完整的技术方案
---
## <EFBFBD>脂 諱ュ蝟懶シ?
## 🎉 恭喜!
**今天完成了非常扎实和深入的架构设计工作!**
我们从零开始,构建了一个:
- 笨?貂<>匆逧<E58C86>ク牙アよ楔譫?
- 笨?螳梧紛逧?荳ェ荳壼苅讓。蝮苓ァ<E88B93><EFBDA7>?
- 笨?4遘埼Κ鄂イ譁ケ譯?
- 笨?隸ヲ扈<EFBDA6>噪螳樊命霍ッ蠕?
- ✅ 清晰的三层架构
- ✅ 完整的8个业务模块规划
- ✅ 4种部署方案
- ✅ 详细的实施路径
**霑吩コ帶楔譫<EFBFBD>ョセ隶。蟆<EFBFBD>欠蟇シ譛ェ譚?-12荳ェ譛育噪蠑€蜿大キ・菴懶シ<E687B6>**
**这些架构设计将指导未来6-12个月的开发工作**
---
## 📌 明天开始可以做的事
### 騾画叫1<EFBFBD>夂ォ句叉蠑€蟋句シ€蜿?
- ASL讓。蝮怜シ€蜿?
### 选择1立即开始开发
- ASL模块开发
- 使用现有架构
### 选择2夯实基础强烈推荐
- Week 1Schema隔离 + Monorepo转换
- Week 2<EFBFBD>哂SL讓。蝮怜シ€蜿?
- Week 2ASL模块开发
### 騾画叫3<EFBFBD>壽釜荳ュ譁ケ譯?
### 选择3折中方案
- Day 1-3Monorepo转换
- Day 4+<EFBFBD>哂SL讓。蝮怜シ€蜿?
- Day 4+ASL模块开发
---
**謔ィ逧<EFBFBD>€画叫<EFBFBD>?* <20><>
**您的选择?** 😊
我已经准备好全程协助您实施任何一个方案!

View File

@@ -1,13 +1,13 @@
# 核心问题解答
> **鍒涘缓鏃ユ湡锛?* 2025-11-06
> **鏂囨。鐩<EFBFBD>殑锛?* 鍥炵瓟鐢ㄦ埛鎻愬嚭鐨勫叧閿<E58FA7>灦鏋勯棶棰?
> **创建日期:** 2025-11-06
> **文档目的:** 回答用户提出的关键架构问题
---
## 📋 您提出的问题
鎮ㄦ彁鍑轰簡闈炲父鏍稿績鐨勬灦鏋勯棶棰橈紝杩欎簺闂<EFBFBD><EFBFBD>鐩存帴褰卞搷浜嗘暣涓<EFBFBD>郴缁熺殑璁捐<EFBFBD>銆傝<EFBFBD>鎴戦€愪竴娣卞叆瑙瓟锛?
您提出了非常核心的架构问题,这些问题直接影响了整个系统的设计。让我逐一深入解答:
---
@@ -15,12 +15,12 @@
### 您的建议
> 锛?锛夌郴缁熸€讳綋鏋舵瀯銆佹€讳綋闇€姹侾RD銆佺郴缁熸€讳綋璁捐<E79281>銆佺郴缁熸€讳綋閮ㄧ讲绛夛紝搴旇<E690B4><EFBFBD>竴涓<E7ABB4>嫭绔嬬殑鏂囦欢澶?
> 锛?锛?涓<>ā鍧楀簲璇ユ槸鐙<E6A7B8>珛鐨?涓<>枃浠跺す锛屾瘡涓<E798A1>ā鍧楁湁锛氶」鐩<E3808D><E990A9>杩般€佽<E282AC>璁℃枃妗€佷笟鍔¤<E98D94>鍒欍€佸紑鍙戣<E98D99>鍒掋€佹瘡鏃ヨ繘搴︺€侀儴缃叉枃妗?
> 1系统总体架构、总体需求PRD、系统总体设计、系统总体部署等应该是一个独立的文件夹
> 27个模块应该是独立的7个文件夹每个模块有项目概述、设计文档、业务规则、开发计划、每日进度、部署文档
### 我的回复
鉁?**瀹屽叏璁ゅ悓锛佽繖鏄<E7B996>潪甯告<E794AF><EFBFBD>殑鏋舵瀯鎬濊矾锛?*
**完全认同!这是非常正确的架构思路!**
我已经创建了详细的文档重构方案:
- 📄 [文档体系重构方案](./02-文档体系重构方案.md)
@@ -28,20 +28,20 @@
**新文档结构:**
```
docs/
鈹溾攢鈹€ 00-绯荤粺鎬讳綋璁捐<E79281>/ # 鉁?鎬讳綋鐙<E7B68B>
鈹? 鈹溾攢鈹€ 01-绯荤粺鏋舵瀯鍒嗗眰璁捐<E79281>.md
鈹? 鈹溾攢鈹€ 02-鏂囨。浣撶郴閲嶆瀯鏂规<E98F82>.md
鈹? 鈹溾攢鈹€ 03-鎬讳綋闇€姹傛枃妗?PRD).md
鈹? 鈹溾攢鈹€ 04-鎶€鏈<E282AC>灦鏋勭櫧鐨<E6ABA7>.md
鈹? 鈹斺攢鈹€ 05-閮ㄧ讲鏋舵瀯璁捐<E79281>.md
鈹?
鈹溾攢鈹€ 01-骞冲彴鍩虹<E98DA9>灞? # 骞冲彴灞傦紙鐢ㄦ埛鏉冮檺銆佸瓨鍌ㄣ€侀€氱煡绛夛級
鈹溾攢鈹€ 02-閫氱敤鑳藉姏灞? # 閫氱敤鑳藉姏锛圠LM缃戝叧銆佹枃妗<E5A697>鐞嗐€丷AG绛夛級
鈹?
鈹斺攢鈹€ 03-涓氬姟妯″潡/ # 鉁?7涓<37>ā鍧楃嫭绔?
├── 00-系统总体设计/ # ✅ 总体独立
│ ├── 01-系统架构分层设计.md
│ ├── 02-文档体系重构方案.md
│ ├── 03-总体需求文档(PRD).md
│ ├── 04-技术架构白皮书.md
│ └── 05-部署架构设计.md
├── 01-平台基础层/ # 平台层(用户权限、存储、通知等)
├── 02-通用能力层/ # 通用能力LLM网关、文档处理、RAG等
└── 03-业务模块/ # ✅ 7个模块独立
├── AIA-AI智能问答/
├── ASL-AI智能文献/
鈹溾攢鈹€ PKB-涓<>汉鐭ヨ瘑搴?
├── PKB-个人知识库/
├── DC-数据清洗整理/
├── SSA-智能统计分析/
├── ST-统计分析工具/
@@ -51,21 +51,21 @@ docs/
**每个模块的标准结构:**
```
XXX-模块名称/
鈹溾攢鈹€ 00-椤圭洰姒傝堪/ # PRD銆佸姛鑳芥竻鍗曘€佺敤鎴锋晠浜?
├── 00-项目概述/ # PRD、功能清单、用户故事
├── 01-设计文档/ # 技术架构、数据库、API、前端组件、UI原型
鈹溾攢鈹€ 02-涓氬姟瑙勫垯/ # 涓氬姟瑙勫垯銆侀獙璇佽<E79287>鍒?
鈹溾攢鈹€ 03-寮€鍙戣<E98D99>鍒? # 閲岀▼纰戙€佷换鍔″垎瑙?
鈹溾攢鈹€ 04-娴嬭瘯鏂囨。/ # 娴嬭瘯璁″垝銆佹祴璇曠敤渚?
鈹溾攢鈹€ 05-閮ㄧ讲鏂囨。/ # 閮ㄧ讲鎸囧崡銆侀厤缃<E58EA4><E7BC83>鏄?
鈹溾攢鈹€ 06-寮€鍙戣繘搴? # 姣忔棩/姣忓懆杩涘害锛堝彲閫夛級
├── 02-业务规则/ # 业务规则、验证规则
├── 03-开发计划/ # 里程碑、任务分解
├── 04-测试文档/ # 测试计划、测试用例
├── 05-部署文档/ # 部署指南、配置说明
├── 06-开发进度/ # 每日/每周进度(可选)
└── README.md # 模块导航
```
**鏍稿績浼樺娍锛?*
- 鉁?鎬讳綋涓庢ā鍧楀垎绂?
- 鉁?灞傛<E7819E>娓呮櫚锛堝钩鍙板眰銆侀€氱敤鑳藉姏灞傘€佷笟鍔℃ā鍧楀眰锛?
- 鉁?鏀<>寔妯″潡鐙<E6BDA1>珛閿€鍞<E282AC>紙姣忎釜妯″潡鏂囨。鍙<E38082>嫭绔嬫墦鍖咃級
- 鉁?鏄撲簬鎵╁睍锛堟柊澧炴ā鍧楀<E98DA7>鍒舵ā鏉垮嵆鍙<E5B586>
**核心优势:**
- ✅ 总体与模块分离
- ✅ 层次清晰(平台层、通用能力层、业务模块层)
- ✅ 支持模块独立销售(每个模块文档可独立打包)
- ✅ 易于扩展(新增模块复制模板即可)
---
@@ -77,60 +77,60 @@ XXX-模块名称/
### 我的回复
鉁?**瀹屽叏璧炲悓锛佹贩鍚堥儴缃叉妧鏈<E5A6A7>毦搴︽瀬楂橈紝闇€姹備笉鏄庣锛屽簲璇ユ殏缂撱€?*
**完全赞同!混合部署技术难度极高,需求不明确,应该暂缓。**
**璋冩暣鍚庣殑閮ㄧ讲妯″紡锛?*
| 閮ㄧ讲妯″紡 | 鐩<>爣鐢ㄦ埛 | 鎶€鏈<E282AC>毦搴?| 浼樺厛绾?|
**调整后的部署模式:**
| 部署模式 | 目标用户 | 技术难度 | 优先级 |
|---------|---------|---------|-------|
| **浜戠<EFBFBD>SaaS鐗?* | 涓<>汉鐢ㄦ埛銆佸皬鏈烘瀯 | 猸愨瓙猸?涓<>瓑 | P0锛堝綋鍓嶏級 |
| **绉佹湁鍖栭儴缃?* | 鍖婚櫌銆佸ぇ鏈烘瀯 | 猸愨瓙猸愨瓙 楂?| P1锛堥樁娈典簩锛?|
| **鍗曟満鐗堬紙Electron锛?* | 涓<>汉鍖荤敓 | 猸愨瓙猸愨瓙猸?寰堥珮 | P2锛堥樁娈典簩锛?|
| ~~娣峰悎閮ㄧ讲~~ | ~~楂樼骇瀹㈡埛~~ | ~~猸愨瓙猸愨瓙猸?鏋侀珮~~ | 鉂?涓嶈€冭檻 |
| **云端SaaS** | 个人用户、小机构 | ⭐⭐⭐ 中等 | P0当前 |
| **私有化部署** | 医院、大机构 | ⭐⭐⭐⭐ 高 | P1阶段二 |
| **单机版(Electron** | 个人医生 | ⭐⭐⭐⭐⭐ 很高 | P2阶段二 |
| ~~混合部署~~ | ~~高级客户~~ | ~~⭐⭐⭐⭐⭐ 极高~~ | ❌ 不考虑 |
**简化后的好处:**
- 鉁?闄嶄綆鎶€鏈<E282AC><E98F88>鏉傚害
- 鉁?鑱氱劍鏍稿績鍦烘櫙
- 鉁?鍔犲揩寮€鍙戦€熷害
- 鉁?闄嶄綆缁存姢鎴愭湰
- ✅ 降低技术复杂度
- ✅ 聚焦核心场景
- ✅ 加快开发速度
- ✅ 降低维护成本
**闃舵<EFBFBD>瑙勫垝锛?*
**阶段规划:**
```
闃舵<EFBFBD>涓€锛堝綋鍓?6涓<36>湀锛夛細浜戠<E6B59C>SaaS鐗?
阶段一(当前-6个月云端SaaS
- 专注云端部署
- 楠岃瘉甯傚満闇€姹?
- <EFBFBD>€熻凯浠?
- 验证市场需求
- 快速迭代
闃舵<EFBFBD>浜岋紙6-18涓<38>湀锛夛細绉佹湁鍖栭儴缃?
阶段二6-18个月私有化部署
- 触发条件:有客户明确要求
- 引入K8s
- Docker涓€閿<EFBFBD>儴缃?
- Docker一键部署
阶段三18个月+):单机版(可选)
- 瑙﹀彂鏉′欢锛氭湁澶ч噺鍗曟満鐗堥渶姹?
- 触发条件:有大量单机版需求
- 开发Electron应用
- <EFBFBD>湴鍖栬繍琛?
- 本地化运行
```
---
## 3锔忊儯 瀹$ǹ绯荤粺鐨勭嫭绔嬫€?
## 3️⃣ 审稿系统的独立性
### 您的计划
> <EFBFBD>潵杩樹細澧炲姞涓€涓<EFBFBD><EFBFBD>绋跨郴缁熺殑寮€鍙戯紝鐩<EFBFBD>墠宸茬粡鏈夋牳蹇冨<EFBFBD>绋垮姛鑳戒簡锛屽彲鑳介渶瑕佺嫭绔嬫垚涓€涓<EFBFBD>郴缁?
> 未来还会增加一个审稿系统的开发,目前已经有核心审稿功能了,可能需要独立成一个系统
### 我的回复
鉁?**瀹ǹ绯荤粺闈炲父閫傚悎鐙<E6828E>珛锛佽繖鏄<E7B996>竴涓<E7ABB4>瀬鍏峰晢涓氫环鍊肩殑鍐崇瓥锛?*
**审稿系统非常适合独立!这是一个极具商业价值的决策!**
**涓轰粈涔堝<EFBFBD>绋跨郴缁熼€傚悎鐙<EFBFBD>珛锛?*
**为什么审稿系统适合独立?**
**1. 鐢ㄦ埛缇ゅ畬鍏ㄤ笉鍚?*
**1. 用户群完全不同**
```
涓诲钩鍙扮敤鎴凤細涓村簥鍖荤敓銆佺爺绌惰€?
ǹ绯荤粺鐢ㄦ埛锛氭湡鍒婄紪杈戦儴銆佸嚭鐗堢ぞ銆佸<EFBFBD>浼?
主平台用户:临床医生、研究者
审稿系统用户:期刊编辑部、出版社、学会
鈫?涓ょ被鐢ㄦ埛娌℃湁浜ら泦锛屽畬鍏ㄧ嫭绔?
→ 两类用户没有交集,完全独立
```
**2. 业务逻辑完全独立**
@@ -138,7 +138,7 @@ XXX-模块名称/
主平台:科研全流程(统计分析、文献筛选、数据清洗)
审稿系统:稿件审查流程(投稿、审稿、修改、决策)
鈫?涓氬姟閫昏緫鏃犲叧鑱?
→ 业务逻辑无关联
```
**3. 部署场景独立**
@@ -146,42 +146,42 @@ XXX-模块名称/
主平台云端SaaS为主部分私有化
审稿系统:期刊编辑部独立部署
鈫?閮ㄧ讲闇€姹備笉鍚?
→ 部署需求不同
```
**4. 商业模式独立**
```
涓诲钩鍙帮細鎸夌増鏈<EFBFBD><EFBFBD>闃咃紙鍩虹<EFBFBD>鐗堛€侀珮绾х増銆佹棗鑸扮増锛?
ǹ绯荤粺锛氭寜鏈熷垔璁㈤槄锛屾垨鎸夌ǹ浠舵暟閲忚<EFBFBD>璐?
主平台:按版本订阅(基础版、高级版、旗舰版)
审稿系统:按期刊订阅,或按稿件数量计费
鈫?鍟嗕笟妯″紡瀹屽叏涓嶅悓
→ 商业模式完全不同
```
**当前状态:**
- 鉁?鏍稿績鍔熻兘宸插疄鐜帮紙鏂囨。鎻愬彇銆佽<E98A86>鑼冩€ц瘎浼般€佹柟娉曞<E5A889>璇勪及锛?
- 鉁?鏁版嵁搴撹〃宸茬嫭绔嬶紙review_tasks锛?
- ✅ 核心功能已实现(文档提取、规范性评估、方法学评估)
- ✅ 数据库表已独立(review_tasks
- ⚠️ 需要扩展(审稿人管理、审稿流程、多轮审稿)
**寤鸿<EFBFBD>锛?*
**建议:**
```
<EFBFBD>湡锛堝綋鍓嶏級锛?
- ǹ绯荤粺浣滀负涓诲钩鍙扮殑涓€涓<EFBFBD>ā鍧?
- 浣嗗湪鏋舵瀯璁捐<EFBFBD>涓婁繚鎸佺嫭绔嬶紙鐙<EFBFBD>珛Schema銆佺嫭绔婣PI锛?
短期(当前):
- 审稿系统作为主平台的一个模块
- 但在架构设计上保持独立独立Schema、独立API
<EFBFBD>湡锛?-12涓<32>湀锛夛細
中期6-12个月
- 开发完整审稿系统(审稿人、流程、多轮审稿)
- 楠岃瘉甯傚満闇€姹?
- 验证市场需求
闀挎湡锛?2涓<32>湀+锛夛細
- 瀹屽叏鐙<EFBFBD>珛涓哄崟鐙<EFBFBD>骇鍝?AI杈呭姪瀹ǹ绯荤粺"
- <EFBFBD>珛閮ㄧ讲銆佺嫭绔嬮攢鍞?
长期12个月+
- 完全独立为单独产品"AI辅助审稿系统"
- 独立部署、独立销售
- 目标客户:期刊编辑部、出版社
```
**<EFBFBD>珛閿€鍞<EFBFBD>环鍊硷細猸愨瓙猸愨瓙猸?鏋侀珮锛?*
**独立销售价值:⭐⭐⭐⭐⭐ 极高!**
- 市场空白国内缺乏AI审稿工具
- 鍒氶渶锛氭湡鍒婄紪杈戦儴瀹$ǹ鍘嬪姏澶?
- 浠樿垂鑳藉姏寮猴細鏈熷垔鏈夐<EFBFBD>绠?
- 刚需:期刊编辑部审稿压力大
- 付费能力强:期刊有预算
---
@@ -197,186 +197,186 @@ XXX-模块名称/
这是最核心的架构问题!我已经创建了详细的架构分层设计:
- 📄 [系统架构分层设计](./01-系统架构分层设计.md)
**涓夊眰鏋舵瀯鎬昏<EFBFBD>锛?*
**三层架构总览:**
### <EFBFBD>竴灞傦細骞冲彴鍩虹<EFBFBD>灞傦紙Platform Layer锛?
### 第一层:平台基础层(Platform Layer
**瀹氫箟锛?* 鎵€鏈変笟鍔℃ā鍧楃殑鍦板熀锛屾彁渚涢€氱敤鐨勫熀纭€璁炬柦鑳藉姏
**定义:** 所有业务模块的地基,提供通用的基础设施能力
**鍖呭惈妯″潡锛?*
1. 鉁?**鐢ㄦ埛涓庢潈闄愪腑蹇冿紙UAM锛?* - 鐢ㄦ埛璁よ瘉銆佹潈闄愮<E99784>鐞嗐€丗eature Flag
2. 鉁?**瀛樺偍鏈嶅姟** - 鏂囦欢涓婁紶涓嬭浇銆丱SS/鏈<>湴鏂囦欢绯荤粺
3. 鉁?**閫氱煡鏈嶅姟** - 绔欏唴娑堟伅銆侀偖浠躲€乄ebSocket鎺ㄩ€?
4. 鉁?**鐩戞帶涓庢棩蹇?* - 鎿嶄綔鏃ュ織銆侀敊璇<E6958A>棩蹇椼€佸<E282AC>璁℃棩蹇?
5. 鉁?**绯荤粺閰嶇疆** - 绯荤粺绾ч厤缃<EFBFBD><EFBFBD>鐞?
**包含模块:**
1. **用户与权限中心UAM** - 用户认证、权限管理、Feature Flag
2. **存储服务** - 文件上传下载、OSS/本地文件系统
3. **通知服务** - 站内消息、邮件、WebSocket推送
4. **监控与日志** - 操作日志、错误日志、审计日志
5. **系统配置** - 系统级配置管理
**鐗瑰緛锛?*
- 鉁?鍏ㄥ眬鍞<E79CAC>竴锛堟暣涓<E69AA3>钩鍙板彧鏈変竴濂楋級
- 鉁?涓氬姟鏃犲叧锛堜笉娑夊強鍏蜂綋涓氬姟閫昏緫锛?
- 鉁?寮轰緷璧栨€э紙鎵€鏈変笟鍔℃ā鍧楅兘蹇呴』渚濊禆锛?
- 鉁?绋冲畾鎬ч珮锛堝緢灏戝彉鍔<E5BD89>
**特征:**
- ✅ 全局唯一(整个平台只有一套)
- ✅ 业务无关(不涉及具体业务逻辑)
- ✅ 强依赖性(所有业务模块都必须依赖)
- ✅ 稳定性高(很少变动)
---
### <EFBFBD>簩灞傦細閫氱敤鑳藉姏灞傦紙Capability Layer锛?
### 第二层:通用能力层(Capability Layer
**瀹氫箟锛?* 璺ㄤ笟鍔℃ā鍧楀叡浜<E58FA1>殑鏍稿績鎶€鏈<E282AC>兘鍔?
**定义:** 跨业务模块共享的核心技术能力
**鍖呭惈鑳藉姏锛?*
**包含能力:**
#### 1. LLM澶фā鍨嬬綉鍏?猸愨瓙猸愨瓙猸?**鏈€鏍稿績**
#### 1. LLM大模型网关 ⭐⭐⭐⭐⭐ **最核心**
**鑱岃矗锛?*
**职责:**
- 统一管理所有LLM调用
- 鏍规嵁鐢ㄦ埛鐗堟湰鍔ㄦ€佸垏鎹㈡ā鍨?
- 鎴愭湰鎺у埗涓庨檺娴?
- Token璁℃暟涓庤<EFBFBD>璐?
- 根据用户版本动态切换模型
- 成本控制与限流
- Token计数与计费
**浣跨敤妯″潡锛?*
- 鉁?AIA锛圓I鏅鸿兘闂<EFBFBD>瓟锛?
- 鉁?ASL锛圓I鏅鸿兘鏂囩尞锛?
- 鉁?PKB锛堜釜浜虹煡璇嗗簱锛?
- 鉁?DC锛堟暟鎹<E69A9F>竻娲楋級
- 鉁?RVW锛堢ǹ浠跺<EFBFBD>鏌ワ級
**使用模块:**
- AIAAI智能问答
- ASLAI智能文献
- PKB(个人知识库)
- ✅ DC数据清洗
- RVW(稿件审查)
**复用率:** 5/7 = 71%
**涓轰粈涔堟槸鏍稿績锛?*
**为什么是核心?**
```
这是商业模式的技术保障:
- 鍩虹<EFBFBD>鐗堬細鍙<EFBFBD>兘鐢―eepSeek-V3锛埪?/鐧句竾tokens锛?
- 基础版只能用DeepSeek-V3¥1/百万tokens
- 高级版可用DeepSeek + Qwen3
- 旗舰版可用DeepSeek + Qwen3 + Qwen-Long + Claude
鎴愭湰鎺у埗锛?
成本控制:
- 统一监控所有LLM API调用
- 超出配额自动限流
- 鎸夌増鏈<EFBFBD><EFBFBD>璐?
- 按版本计费
```
**褰撳墠鐘舵€侊細** 鉂?鏈<>疄鐜帮紙P0浼樺厛绾э級
**当前状态:** ❌ 未实现P0优先级
---
#### 2. 鏂囨。澶勭悊寮曟搸 猸愨瓙猸愨瓙猸?**鏈€鏍稿績**
#### 2. 文档处理引擎 ⭐⭐⭐⭐⭐ **最核心**
**鑱岃矗锛?*
- 澶氭牸寮忔枃妗f彁鍙栵紙PDF/Docx/Txt/Excel锛?
**职责:**
- 多格式文档提取(PDF/Docx/Txt/Excel
- 文本清洗与预处理
- OCR处理
- 表格提取
**浣跨敤妯″潡锛?*
- 鉁?ASL锛堟枃鐚甈DF鎻愬彇锛?
- 鉁?PKB锛堢煡璇嗗簱鏂囨。锛?
- 鉁?DC锛圗xcel/Docx瀵煎叆锛?
- 鉁?SSA锛堟暟鎹<EFBFBD><EFBFBD>鍏ワ級
- 鉁?ST锛堟暟鎹<E69A9F><E98EB9>鍏ワ級
- 鉁?RVW锛堢ǹ浠舵彁鍙栵級
**使用模块:**
- ASL文献PDF提取
- PKB(知识库文档)
- ✅ DCExcel/Docx导入)
- SSA(数据导入)
- ✅ ST数据导入
- RVW(稿件提取)
**复用率:** 6/7 = 86%
**褰撳墠鐘舵€侊細** 鉁?宸插疄鐜帮紙Python寰<6E>湇鍔★級
**当前状态:** ✅ 已实现Python微服务
---
#### 3. RAG引擎 ⭐⭐⭐⭐ **核心**
**鑱岃矗锛?*
- 鍚戦噺鍖栧瓨鍌<EFBFBD>Embedding锛?
- <EFBFBD>箟妫€绱<EFBFBD>Semantic Search锛?
- 妫€绱㈠<EFBFBD>寮虹敓鎴愶紙RAG锛?
**职责:**
- 向量化存储(Embedding
- 语义检索(Semantic Search
- 检索增强生成(RAG
**浣跨敤妯″潡锛?*
- 鉁?PKB锛堜釜浜虹煡璇嗗簱闂<EFBFBD>瓟锛?
- 鉁?ASL锛堟枃鐚<EFBFBD>唴瀹规<EFBFBD><EFBFBD>
- 鉁?AIA锛園鐭ヨ瘑搴撻棶绛旓級
**使用模块:**
- PKB(个人知识库问答)
- ASL(文献内容检索)
- AIA@知识库问答
**复用率:** 3/7 = 43%
**褰撳墠鐘舵€侊細** 鉁?宸插疄鐜帮紙鍩轰簬Dify锛?
**当前状态:** ✅ 已实现(基于Dify
---
#### 4. 鏁版嵁ETL寮曟搸 猸愨瓙猸?**涓<>**
#### 4. 数据ETL引擎 ⭐⭐⭐ **中等**
**鑱岃矗锛?*
**职责:**
- Excel多表JOIN
- 数据清洗
- 数据转换
**浣跨敤妯″潡锛?*
- 鉁?DC锛堟暟鎹<E69A9F>竻娲楋級
- 鉁?SSA锛堢粺璁″垎鏋愭暟鎹<EFBFBD><EFBFBD>澶勭悊锛?
**使用模块:**
- ✅ DC数据清洗
- SSA(统计分析数据预处理)
**复用率:** 2/7 = 29%
**褰撳墠鐘舵€侊細** 鉂?鏈<>疄鐜帮紙P2浼樺厛绾э級
**当前状态:** ❌ 未实现P2优先级
---
#### 5. 鍖诲<EFBFBD>NLP寮曟搸 猸愨瓙猸?**涓<>**
#### 5. 医学NLP引擎 ⭐⭐⭐ **中等**
**鑱岃矗锛?*
- 鍖诲<EFBFBD>瀹炰綋璇嗗埆锛圢ER锛?
- 鍖诲<EFBFBD><EFBFBD><EFBFBD>鏍囧噯鍖?
**职责:**
- 医学实体识别NER
- 医学术语标准化
**浣跨敤妯″潡锛?*
- 鉁?DC锛堢梾渚嬫暟鎹甆ER鎻愬彇锛?
**使用模块:**
- ✅ DC病例数据NER提取
**复用率:** 1/7 = 14%
**褰撳墠鐘舵€侊細** 鉂?鏈<>疄鐜帮紙P2浼樺厛绾э級
**当前状态:** ❌ 未实现P2优先级
---
### <EFBFBD>笁灞傦細涓氬姟妯″潡灞傦紙Product Layer锛?
### 第三层:业务模块层(Product Layer
**瀹氫箟锛?* 闈㈠悜鐢ㄦ埛鐨勪骇鍝佸姛鑳斤紝姣忎釜妯″潡閮芥槸鐙<E6A7B8>珛鐨勪骇鍝佸崟鍏?
**定义:** 面向用户的产品功能,每个模块都是独立的产品单元
**7个业务模块**
| 妯″潡 | 鍚嶇О | 鍟嗕笟浠峰€?| 鐙<>珛鎬?| 鐘舵€?|
| 模块 | 名称 | 商业价值 | 独立性 | 状态 |
|------|------|---------|-------|------|
| **AIA** | AI鏅鸿兘闂<EFBFBD>瓟 | 猸愨瓙猸愨瓙 | 猸愨瓙猸?| 鉁?宸插畬鎴?|
| **ASL** | AI鏅鸿兘鏂囩尞 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙猸?| 鈴?涓嬩竴姝ラ噸鐐?|
| **PKB** | <EFBFBD>汉鐭ヨ瘑搴?| 猸愨瓙猸?| 猸愨瓙猸?| 鉁?宸插畬鎴?|
| **DC** | 鏁版嵁娓呮礂鏁寸悊 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙猸?| 鈴?瑙勫垝涓?|
| **SSA** | 鏅鸿兘缁熻<EFBFBD>鍒嗘瀽 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙 | 鈴?瑙勫垝涓?|
| **ST** | 缁熻<EFBFBD>鍒嗘瀽宸ュ叿 | 猸愨瓙猸愨瓙 | 猸愨瓙猸愨瓙 | 鈴?瑙勫垝涓?|
| **RVW** | 绋夸欢瀹℃煡绯荤粺 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙猸?| 鈿?鐙<>珛绯荤粺 |
| **AIA** | AI智能问答 | ⭐⭐⭐⭐ | ⭐⭐⭐ | ✅ 已完成 |
| **ASL** | AI智能文献 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⏳ 下一步重点 |
| **PKB** | 个人知识库 | ⭐⭐⭐ | ⭐⭐⭐ | ✅ 已完成 |
| **DC** | 数据清洗整理 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⏳ 规划中 |
| **SSA** | 智能统计分析 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⏳ 规划中 |
| **ST** | 统计分析工具 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⏳ 规划中 |
| **RVW** | 稿件审查系统 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⚡ 独立系统 |
**鐗瑰緛锛?*
- 鉁?鐙<>珛閮ㄧ讲锛氬彲浠ュ崟鐙<E5B49F>墦鍖呴儴缃?
- 鉁?鐙<>珛閿€鍞<E282AC>細鍙<E7B4B0>互鍗曠嫭鍞<E5ABAD>
- 鉁?浣庤€﹀悎锛氭ā鍧楅棿涓嶇洿鎺ヤ緷璧?
- 鉁?楂樺唴鑱氾細妯″潡鍐呭姛鑳藉畬鏁?
**特征:**
- ✅ 独立部署:可以单独打包部署
- ✅ 独立销售:可以单独售卖
- ✅ 低耦合:模块间不直接依赖
- ✅ 高内聚:模块内功能完整
---
### 可复用能力总结
| 鑳藉姏 | 浣跨敤棰戠巼 | 澶嶇敤妯″潡鏁?| 浼樺厛绾?| 鐘舵€?|
| 能力 | 使用频率 | 复用模块数 | 优先级 | 状态 |
|------|---------|-----------|--------|------|
| **LLM缃戝叧** | 71% | 5/7 | P0 | 鉂?寰呭疄鐜?|
| **鏂囨。澶勭悊寮曟搸** | 86% | 6/7 | P0 | 鉁?宸插疄鐜?|
| **RAG寮曟搸** | 43% | 3/7 | P1 | 鉁?宸插疄鐜?|
| **ETL寮曟搸** | 29% | 2/7 | P2 | 鉂?寰呭疄鐜?|
| **鍖诲<EFBFBD>NLP** | 14% | 1/7 | P2 | 鉂?寰呭疄鐜?|
| **LLM网关** | 71% | 5/7 | P0 | ❌ 待实现 |
| **文档处理引擎** | 86% | 6/7 | P0 | ✅ 已实现 |
| **RAG引擎** | 43% | 3/7 | P1 | ✅ 已实现 |
| **ETL引擎** | 29% | 2/7 | P2 | ❌ 待实现 |
| **医学NLP** | 14% | 1/7 | P2 | ❌ 待实现 |
---
## 5锔忊儯 鏁版嵁搴撴灦鏋?
## 5️⃣ 数据库架构
### 您的问题
> 璁捐<EFBFBD>澶歋chema鏋舵瀯鏄<EFBFBD>潪甯稿繀瑕佺殑銆?
> 设计多Schema架构是非常必要的。
> 目前当前系统的数据库似乎是DIFY的
> <EFBFBD>墠鎴戜滑鏈夎嚜宸辩嫭绔嬬殑鏁版嵁搴撳悧锛?
> 目前我们有自己独立的数据库吗?
### 我的回复
鉁?**鎴戜滑鏈夎嚜宸辩嫭绔嬬殑PostgreSQL鏁版嵁搴擄紝涓嶆槸Dify鐨勶紒**
**我们有自己独立的PostgreSQL数据库不是Dify的**
**当前数据库情况:**
@@ -391,17 +391,17 @@ datasource db {
**当前表结构:**
```
当前数据库PostgreSQL独立于Dify
鈹溾攢鈹€ users # 鐢ㄦ埛琛?
鈹溾攢鈹€ projects # 椤圭洰琛?
鈹溾攢鈹€ conversations # 瀵硅瘽琛<EFBFBD>紙AI闂<EFBFBD>瓟锛?
鈹溾攢鈹€ messages # 娑堟伅琛?
├── users # 用户表
├── projects # 项目表
├── conversations # 对话表AI问答
├── messages # 消息表
├── knowledge_bases # 知识库表
鈹溾攢鈹€ documents # 鏂囨。琛?
鈹溾攢鈹€ admin_logs # 绠$悊鍛樻棩蹇?
├── documents # 文档表
├── admin_logs # 管理员日志
├── general_conversations # 通用对话
├── general_messages # 通用消息
鈹溾攢鈹€ batch_tasks # 鎵瑰<EFBFBD>鐞嗕换鍔★紙Phase 3锛?
鈹溾攢鈹€ batch_results # 鎵瑰<EFBFBD>鐞嗙粨鏋?
├── batch_tasks # 批处理任务(Phase 3
├── batch_results # 批处理结果
├── task_templates # 任务模板
└── review_tasks # 稿件审查任务
@@ -410,22 +410,22 @@ Dify数据库完全独立
└── 通过Dify API调用不直接访问
```
**鍏抽敭婢勬竻锛?*
- 鉁?鎴戜滑鏈夎嚜宸辩殑PostgreSQL鏁版嵁搴?
- 鉁?Dify鏈夎嚜宸辩殑鏁版嵁搴擄紙鎴戜滑涓嶇洿鎺ヨ<EFBFBD><EFBFBD>
- 鉁?鎴戜滑閫氳繃Dify API璋冪敤锛圚TTP REST API锛?
- 鉁?涓や釜鏁版嵁搴撳畬鍏ㄧ嫭绔?
**关键澄清:**
- ✅ 我们有自己的PostgreSQL数据库
- Dify有自己的数据库(我们不直接访问)
- ✅ 我们通过Dify API调用HTTP REST API
- ✅ 两个数据库完全独立
**但是存在的问题:**
- 鉂?**鎵€鏈夎〃鍦ㄥ悓涓€Schema锛坧ublic锛?*
- 鉂?鏈<>潵寰<E6BDB5>湇鍔℃媶鍒嗗洶闅?
- 鉂?涓嶆敮鎸佹ā鍧楃嫭绔嬮儴缃?
- **所有表在同一Schemapublic**
- ❌ 未来微服务拆分困难
- ❌ 不支持模块独立部署
---
### Schema隔离方案
**<EFBFBD>爣鏋舵瀯锛?*
**目标架构:**
```sql
-- 平台层Schema
CREATE SCHEMA platform_schema;
@@ -454,7 +454,7 @@ CREATE SCHEMA asl_schema; -- AI智能文献
asl_screening_results
...
CREATE SCHEMA pkb_schema; -- <EFBFBD>汉鐭ヨ瘑搴?
CREATE SCHEMA pkb_schema; -- 个人知识库
pkb_knowledge_bases
pkb_documents
@@ -481,12 +481,12 @@ CREATE SCHEMA review_schema; -- 稿件审查
### 迁移策略
**闃舵<EFBFBD>涓€锛氶€昏緫闅旂<EFBFBD>锛堝綋鍓嶉樁娈碉紝绔嬪嵆瀹炴柦锛?*
**阶段一:逻辑隔离(当前阶段,立即实施)**
```
目标在代码层面按Schema组织但数据库还是public
方式Prisma中使用@@map指定表名前缀
渚嬪<EFBFBD>锛?
例如:
model AiaProject {
id String @id @default(uuid())
// ...
@@ -506,10 +506,10 @@ model DcProject {
}
```
**濂藉<EFBFBD>锛?*
- 鉁?绔嬪嵆鍙<E5B586>疄鏂斤紝鏃犻渶鏁版嵁杩佺Щ
- 鉁?涓烘湭鏉ョ墿鐞嗛殧绂绘墦鍩虹<E98DA9>
- 鉁?浠g爜灞傞潰宸茬粡鎸夋ā鍧楃粍缁?
**好处:**
- ✅ 立即可实施,无需数据迁移
- ✅ 为未来物理隔离打基础
- ✅ 代码层面已经按模块组织
---
@@ -518,47 +518,47 @@ model DcProject {
目标真正创建独立Schema
时机:当需要拆分某个模块为独立微服务时
姝ラ<EFBFBD>锛?
步骤:
1. CREATE SCHEMA xxx_schema;
2. CREATE TABLE xxx_schema.table_name ...
3. INSERT INTO xxx_schema.table SELECT * FROM public.old_table;
4. 鏇存柊Prisma Schema锛堟寚瀹歴chema锛?
4. 更新Prisma Schema指定schema
5. 测试验证
6. 切换生产
```
---
## 6锔忊儯 涓嬩竴姝ュ紑鍙戦噸鐐?
## 6️⃣ 下一步开发重点
### 您的决策
> 涓嬩竴姝ョ潃閲嶅紑鍙戠殑鍔熻兘鑲<EFBFBD>畾鏄疉I鏅鸿兘鏂囩尞妯″潡銆?
> 褰撶劧鍦ㄦ€讳綋鏋舵瀯璁ㄨ<EFBFBD>娓呮<EFBFBD>鍓嶏紝鎴戜滑鍏堜笉寮€鍙戙€?
> 下一步着重开发的功能肯定是AI智能文献模块。
> 当然在总体架构讨论清楚前,我们先不开发。
### 我的回复
鉁?**瀹屽叏璧炲悓锛丄I鏅鸿兘鏂囩尞鏄<E5B09E>牳蹇冪珵浜夊姏锛屽簲璇ユ槸涓嬩竴姝ラ噸鐐广€?*
**完全赞同AI智能文献是核心竞争力应该是下一步重点。**
**开发顺序建议:**
**第一步架构设计本周1-2天**
```
P0鏂囨。锛堝繀椤诲畬鎴愶級锛?
1. 鉁?绯荤粺鏋舵瀯鍒嗗眰璁捐<E79281>锛堝凡瀹屾垚锛?
2. 鉁?鏂囨。浣撶郴閲嶆瀯鏂规<E98F82>锛堝凡瀹屾垚锛?
3. 鈿狅笍 LLM澶фā鍨嬬綉鍏宠<EFBFBD>璁★紙鍏抽敭锛?
P0文档(必须完成):
1. ✅ 系统架构分层设计(已完成)
2. ✅ 文档体系重构方案(已完成)
3. ⚠️ LLM大模型网关设计(关键)
4. ⚠️ 数据库Schema隔离方案关键
```
**第二步文档整理本周1-2天**
```
1. 调整ASL模块文档结构按新模板
2. 琛ュ厖缂哄け鐨勮<EFBFBD>璁℃枃妗?
2. 补充缺失的设计文档
3. 明确开发里程碑
```
**<EFBFBD>笁姝ワ細鍏抽敭鎶€鏈<EFBFBD>獙璇侊紙涓嬪懆锛?-2澶╋級**
**第三步关键技术验证下周1-2天**
```
1. ⚠️ R语言技术验证SSA模块需要可延后
2. ⚠️ LLM Gateway原型验证
@@ -580,65 +580,65 @@ P0文档必须完成
### 核心原则
**1. 鏋舵瀯鍏堣<EFBFBD>锛屾枃妗厛琛?*
**1. 架构先行,文档先行**
```
鉁?鍏堟妸鎬讳綋鏋舵瀯璁ㄨ<E79281>娓呮<E5A893>
鉁?鍏堟妸鏂囨。缁撴瀯璋冩暣濂?
鉁?鐒跺悗鍐嶅紑濮嬪紑鍙?
✅ 先把总体架构讨论清楚
✅ 先把文档结构调整好
✅ 然后再开始开发
```
**2. 聚焦核心,逐步扩展**
```
闃舵<EFBFBD>涓€锛堝綋鍓?6涓<36>湀锛夛細
- 浜戠<EFBFBD>SaaS鐗?
阶段一(当前-6个月
- 云端SaaS
- 核心模块ASL、DC、AIA优化
- 关键能力LLM网关、Schema隔离
阶段二6-18个月
- 绉佹湁鍖栭儴缃?
- 私有化部署
- 扩展模块SSA、ST
- 独立系统RVW审稿系统
阶段三18个月+
- 单机版(可选)
- 鍏ㄩ潰寰<EFBFBD>湇鍔?
- 全面微服务
```
**3. 妯″潡鐙<EFBFBD>珛锛岃兘鍔涘<EFBFBD>鐢?*
**3. 模块独立,能力复用**
```
鉁?涓氬姟妯″潡鐙<E6BDA1>珛璁捐<E79281>锛堜綆鑰﹀悎锛?
鉁?閫氱敤鑳藉姏缁熶竴鎻愪緵锛堥珮澶嶇敤锛?
鉁?鏀<>寔妯″潡鐙<E6BDA1>珛閿€鍞?
✅ 业务模块独立设计(低耦合)
✅ 通用能力统一提供(高复用)
✅ 支持模块独立销售
```
---
## 鉁?绔嬪嵆琛屽姩娓呭崟
## ✅ 立即行动清单
### <EFBFBD>懆琛屽姩锛圥0锛?
### 本周行动P0
**1. 鏋舵瀯璁捐<EFBFBD>锛?-2澶╋級**
- [x] 绯荤粺鏋舵瀯鍒嗗眰璁捐<EFBFBD> 鉁?
- [x] 鏂囨。浣撶郴閲嶆瀯鏂规<EFBFBD> 鉁?
- [ ] LLM澶фā鍨嬬綉鍏宠<EFBFBD>璁?
**1. 架构设计1-2天**
- [x] 系统架构分层设计 ✅
- [x] 文档体系重构方案 ✅
- [ ] LLM大模型网关设计
- [ ] 数据库Schema隔离方案
**2. 鏂囨。杩佺Щ锛?-2澶╋級**
**2. 文档迁移1-2天**
- [ ] 创建新文件夹结构
- [ ] 迁移ASL模块文档
- [ ] 调整文档结构(按新模板)
---
### 涓嬪懆琛屽姩锛圥1锛?
### 下周行动P1
**3. 鍏抽敭鏂囨。琛ュ厖锛?-3澶╋級**
**3. 关键文档补充2-3天**
- [ ] ASL模块缺失文档
- [ ] LLM网关详细设计
- [ ] RVW独立系统规划
**4. 寮€濮婣SL妯″潡寮€鍙戯紙鍚<EFBFBD>姩锛?*
- [ ] 鏁版嵁搴撹〃璁捐<EFBFBD>锛坅sl_schema锛?
**4. 开始ASL模块开发启动**
- [ ] 数据库表设计asl_schema
- [ ] API设计
- [ ] 前端组件设计
@@ -646,41 +646,41 @@ P0文档必须完成
## 📊 总结
### 鎮ㄧ殑鎯虫硶闈炲父姝g‘锛?
### 您的想法非常正确!
1. 鉁?**鏂囨。绯荤粺閲嶆瀯**锛氭€讳綋鐙<E7B68B>珛锛屾ā鍧楃嫭绔?
2. 鉁?**涓嶈€冭檻娣峰悎閮ㄧ讲**锛氱畝鍖栨妧鏈<E5A6A7><E98F88>鏉傚害
3. 鉁?**瀹ǹ绯荤粺鐙<E7B2BA>珛**锛氭瀬鍏峰晢涓氫环鍊?
4. 鉁?**鏋舵瀯鍒嗗眰娓呮櫚**锛氬钩鍙板眰銆侀€氱敤鑳藉姏灞傘€佷笟鍔℃ā鍧楀眰
5. 鉁?**Schema闅旂<EFBFBD>蹇呰<EFBFBD>**锛氭敮鎸佹ā鍧楃嫭绔嬪拰寰<E68BB0>湇鍔℃媶鍒?
6. 鉁?**ASL<EFBFBD>笅涓€姝ラ噸鐐?*锛氭牳蹇冪珵浜夊姏
1. **文档系统重构**:总体独立,模块独立
2. **不考虑混合部署**:简化技术复杂度
3. **审稿系统独立**:极具商业价值
4. **架构分层清晰**:平台层、通用能力层、业务模块层
5. **Schema隔离必要**:支持模块独立和微服务拆分
6. **ASL是下一步重点**:核心竞争力
### 褰撳墠鏈€鍏抽敭鐨勫伐浣?
### 当前最关键的工作
**P0锛堟湰鍛<EFBFBD>級锛?*
1. 瀹屾垚鏋舵瀯璁捐<EFBFBD>鏂囨。锛圠LM缃戝叧銆丼chema闅旂<EFBFBD>锛?
2. 璋冩暣鏂囨。缁撴瀯锛堣縼绉籄SL妯″潡锛?
**P0(本周):**
1. 完成架构设计文档LLM网关、Schema隔离
2. 调整文档结构迁移ASL模块
**P1锛堜笅鍛<EFBFBD>級锛?*
**P1(下周):**
3. 补充关键文档
4. 寮€濮婣SL妯″潡寮€鍙?
4. 开始ASL模块开发
### 鎴戜滑涓嶇潃鎬ワ紝鍏堟妸鎬讳綋鎬濊矾娌熼€氭竻妤?
### 我们不着急,先把总体思路沟通清楚
鉁?**瀹屽叏璁ゅ悓鎮ㄧ殑鎯虫硶锛?*
**完全认同您的想法!**
鏋舵瀯璁捐<EFBFBD><EFBFBD>湴鍩猴紝鍦板熀涓嶇墷锛屽悗闈㈠紑鍙戜細寰堢棝鑻︺€?
架构设计是地基,地基不牢,后面开发会很痛苦。
鎴戜滑鍏堟妸鏋舵瀯鍜屾枃妗f⒊鐞嗘竻妤氾紝鍐嶅紑濮嬪紑鍙戙€?
我们先把架构和文档梳理清楚,再开始开发。
---
**接下来您想讨论什么?**
1. LLM澶фā鍨嬬綉鍏崇殑璇︾粏璁捐<EFBFBD>锛?
1. LLM大模型网关的详细设计?
2. 数据库Schema隔离的具体实施
3. ASL模块的开发计划
4. 审稿系统的独立规划?
5. 鍏朵粬鏋舵瀯闂<EFBFBD><EFBFBD>锛?
5. 其他架构问题?

View File

@@ -1,14 +1,14 @@
# AIclinicalresearch 系统当前状态与开发指南
> **文档版本:** v3.4
> **文档版本:** v3.5
> **创建日期:** 2025-11-28
> **维护者:** 开发团队
> **最后更新:** 2026-01-14
> **重大进展:** 🏆 **通用能力层重大升级AIA V2.0发布**
> - 🆕 StreamingServiceOpenAI Compatible
> - 🆕 Chat组件V2Ant Design X深度集成
> - 🎨 AIA模块全新UI100%还原原型图
> - ✨ 12个智能体配置完成
> **最后更新:** 2026-01-16
> **重大进展:** 🎉 **运营管理端用户管理完成!模块权限系统架构升级**
> - 🆕 用户管理功能CRUD + 租户管理 + 模块权限配置
> - 🏆 模块权限系统改造(版本系统 → 模块代码系统
> - ✅ user_modules 表(精细化权限控制
> - ✅ 登录API返回模块列表前端导航智能过滤
> **部署状态:** ✅ 生产环境运行中 | 公网地址http://8.140.53.236/
> **文档目的:** 快速了解系统当前状态为新AI助手提供上下文
@@ -50,7 +50,7 @@
| **SSA** | 智能统计分析 | 队列/预测模型/RCT分析 | ⭐⭐⭐⭐⭐ | 📋 规划中 | P2 |
| **ST** | 统计分析工具 | 100+轻量化统计工具 | ⭐⭐⭐⭐ | 📋 规划中 | P2 |
| **RVW** | 稿件审查系统 | 方法学评估、审稿流程、Word导出 | ⭐⭐⭐⭐ | ✅ **开发完成95%** | P3 |
| **ADMIN** | 运营管理端 | Prompt管理、租户管理、用户管理 | ⭐⭐⭐⭐⭐ | 🚧 **Prompt管理83%完成** | **P0** |
| **ADMIN** | 运营管理端 | Prompt管理、租户管理、用户管理 | ⭐⭐⭐⭐⭐ | 🎉 **Phase 4.1完成75%** - 用户管理+模块权限系统 | **P0** |
---

View File

@@ -1,157 +1,157 @@
# 系统总体设计 - 阅读指南
> **鏂囨。鏃ユ湡锛?* 2025-11-06
> **鏂囨。鐩<EFBFBD>殑锛?* 蹇<>€熷<E282AC><EFBFBD>紝鎵惧埌鎮ㄩ渶瑕佺殑鏂囨。
> **文档日期:** 2025-11-06
> **文档目的:** 快速导航,找到您需要的文档
---
## 🎯 如果您想...
### 快速了解今天的成果
馃憠 **蹇呰<E8B987>锛?* [00-浠婃棩鏋舵瀯璁捐<E79281>鎬荤粨](./00-浠婃棩鏋舵瀯璁捐<E79281>鎬荤粨.md)
👉 **必读:** [00-今日架构设计总结](./00-今日架构设计总结.md)
- 7个核心文档总览
- 关键决策总结
- 涓嬩竴姝ュ缓璁?
- 下一步建议
---
### 了解整个系统架构
馃憠 **蹇呰<E8B987>锛?* [08-鏋舵瀯璁捐<E79281>鍏ㄦ櫙鍥綸(./08-鏋舵瀯璁捐<E79281>鍏ㄦ櫙鍥?md)
- 涓€鍥剧湅鎳傚畬鏁存灦鏋?
👉 **必读:** [08-架构设计全景图](./08-架构设计全景图.md)
- 一图看懂完整架构
- 四种部署模式
- 代码组织结构
馃憠 **璇︾粏浜嗚В锛?* [01-绯荤粺鏋舵瀯鍒嗗眰璁捐<EFBFBD>](./01-绯荤粺鏋舵瀯鍒嗗眰璁捐<E79281>.md)
👉 **详细了解:** [01-系统架构分层设计](./01-系统架构分层设计.md)
- 三层架构详细设计
- 8<EFBFBD>笟鍔℃ā鍧?
- 8个业务模块
- 5个通用能力
- 依赖关系分析
---
### 鍋氬嚭涓嬩竴姝ヨ<EFBFBD>鍔ㄥ喅绛?
馃憠 **蹇呰<E8B987>锛?* [99-涓嬩竴姝ヨ<E5A79D>鍔ㄥ喅绛栧缓璁甝(./99-涓嬩竴姝ヨ<E5A79D>鍔ㄥ喅绛栧缓璁?md)
- 3涓<33>柟妗堝<E5A697>姣旓紙绔嬪嵆寮€鍙?vs 鍏堟敼閫?vs 鎶樹腑锛?
### 做出下一步行动决策
👉 **必读:** [99-下一步行动决策建议](./99-下一步行动决策建议.md)
- 3个方案对比立即开发 vs 先改造 vs 折中)
- 成本收益分析
- 明确的建议和实施计划
---
### 浜嗚В鏁版嵁搴撴灦鏋?
馃憠 **鍏堢湅锛?* [03-鏁版嵁搴撴灦鏋勮<EFBFBD>鏄嶿(./03-鏁版嵁搴撴灦鏋勮<E98F8B>鏄?md)
- PostgreSQL鏄疍ocker閮ㄧ讲鐨?
### 了解数据库架构
👉 **先看:** [03-数据库架构说明](./03-数据库架构说明.md)
- PostgreSQL是Docker部署的
- 您有自己独立的数据库
- 与Dify数据库的关系
馃憠 **娣卞叆浜嗚В锛?* [05-Schema闅旂<EFBFBD>鏂规<EFBFBD>涓庢垚鏈<EFBFBD>垎鏋怾(./05-Schema闅旂<E99785>鏂规<E98F82>涓庢垚鏈<E59E9A>垎鏋?md)
👉 **深入了解:** [05-Schema隔离方案与成本分析](./05-Schema隔离方案与成本分析.md)
- 逻辑隔离 vs 物理隔离
- 鏀归€犳垚鏈<E59E9A><E98F88>姣旓紙鐜板湪1鍛?vs 鏈<>潵3-5鍛<35>
- 改造成本对比现在1周 vs 未来3-5周
- 实施方案
---
### 了解如何模块独立部署
馃憠 **蹇呰<E8B987>锛?* [06-妯″潡鐙<EFBFBD>珛閮ㄧ讲涓庡崟鏈虹増鏂规<EFBFBD>](./06-妯″潡鐙<E6BDA1>珛閮ㄧ讲涓庡崟鏈虹増鏂规<E98F82>.md)
👉 **必读:** [06-模块独立部署与单机版方案](./06-模块独立部署与单机版方案.md)
- 完整打包方案(独立产品)
- 鍏变韩鏈嶅姟鏂规<EFBFBD>锛堝钩鍙板唴妯″潡锛?
- Electron鍗曟満鐗堟灦鏋?
- 浠g爜澶嶇敤鐜囧垎鏋愶紙85%+锛?
- 共享服务方案(平台内模块)
- Electron单机版架构
- 代码复用率分析(85%+
---
### 浜嗚В杩愯惀绠$悊绔?
馃憠 **蹇呰<E8B987>锛?* [04-杩愯惀绠悊绔<E6828A>灦鏋勮<E98F8B><EFBFBD>(./04-杩愯惀绠悊绔<E6828A>灦鏋勮<E98F8B>璁?md)
- 15涓<35>姛鑳芥ā鍧?
### 了解运营管理端
👉 **必读:** [04-运营管理端架构设计](./04-运营管理端架构设计.md)
- 15个功能模块
- 3阶段实施计划
- 瀵圭郴缁熺殑6澶у奖鍝?
- 对系统的6大影响
---
### 了解是否需要Monorepo
馃憠 **蹇呰<E8B987>锛?* [07-Monorepo鏋舵瀯璇勪及](./07-Monorepo鏋舵瀯璇勪及.md)
- 褰撳墠闃舵<EFBFBD>闇€瑕佸悧锛?
- 鎴愭湰瀵规瘮锛堢幇鍦?-3澶?vs 鏈<>7-11澶╋級
👉 **必读:** [07-Monorepo架构评估](./07-Monorepo架构评估.md)
- 当前阶段需要吗?
- 成本对比现在2-3天 vs 未来7-11天)
- 实施方案
---
### 了解文档体系如何重构
馃憠 **蹇呰<E8B987>锛?* [02-鏂囨。浣撶郴閲嶆瀯鏂规<E98F82>v2.0](./02-鏂囨。浣撶郴閲嶆瀯鏂规<EFBFBD>.md)
- 鏂版枃妗粨鏋勮<EFBFBD>璁?
👉 **必读:** [02-文档体系重构方案v2.0](./02-文档体系重构方案.md)
- 新文档结构设计
- 8个模块的标准文档模板
- 迁移计划
---
### 了解所有架构问题的答案
馃憠 **蹇呰<E8B987>锛?* [00-鏍稿績闂<E7B8BE><E99782>](./00-鏍稿績闂<E7B8BE><E99782>.md)
- 閮ㄧ讲妯″紡璋冩暣锛?绉嶏紝涓嶈€冭檻娣峰悎閮ㄧ讲锛?
- ǹ绯荤粺鐙<EFBFBD>珛鎬у垎鏋?
- 鏁版嵁搴撴灦鏋勬緞娓?
👉 **必读:** [00-核心问题解答](./00-核心问题解答.md)
- 部署模式调整3种不考虑混合部署
- 审稿系统独立性分析
- 数据库架构澄清
---
## 📊 文档阅读顺序建议
### <EFBFBD>緞1锛氬揩閫熶簡瑙紙20鍒嗛挓锛?
### 路径1快速了解20分钟
1. [00-今日架构设计总结](./00-今日架构设计总结.md) - 5分钟
2. [08-鏋舵瀯璁捐<EFBFBD>鍏ㄦ櫙鍥綸(./08-鏋舵瀯璁捐<E79281>鍏ㄦ櫙鍥?md) - 10鍒嗛挓
3. [99-涓嬩竴姝ヨ<EFBFBD>鍔ㄥ喅绛栧缓璁甝(./99-涓嬩竴姝ヨ<E5A79D>鍔ㄥ喅绛栧缓璁?md) - 5鍒嗛挓
2. [08-架构设计全景图](./08-架构设计全景图.md) - 10分钟
3. [99-下一步行动决策建议](./99-下一步行动决策建议.md) - 5分钟
---
### <EFBFBD>緞2锛氬叏闈㈢悊瑙紙1-2灏忔椂锛?
### 路径2全面理解1-2小时
1. [00-今日架构设计总结](./00-今日架构设计总结.md) - 10分钟
2. [01-系统架构分层设计](./01-系统架构分层设计.md) - 30分钟
3. [05-Schema闅旂<EFBFBD>鏂规<EFBFBD>涓庢垚鏈<EFBFBD>垎鏋怾(./05-Schema闅旂<E99785>鏂规<E98F82>涓庢垚鏈<E59E9A>垎鏋?md) - 20鍒嗛挓
3. [05-Schema隔离方案与成本分析](./05-Schema隔离方案与成本分析.md) - 20分钟
4. [07-Monorepo架构评估](./07-Monorepo架构评估.md) - 15分钟
5. [99-涓嬩竴姝ヨ<EFBFBD>鍔ㄥ喅绛栧缓璁甝(./99-涓嬩竴姝ヨ<E5A79D>鍔ㄥ喅绛栧缓璁?md) - 10鍒嗛挓
5. [99-下一步行动决策建议](./99-下一步行动决策建议.md) - 10分钟
---
### <EFBFBD>緞3锛氭繁鍏ョ爺绌讹紙3-4灏忔椂锛?
### 路径3深入研究3-4小时
鎸夐『搴忛槄璇绘墍鏈?0涓<30>枃妗?
按顺序阅读所有10个文档
---
## 🎯 关键结论速查
### Schema隔离
- **寤鸿<EFBFBD>锛?* 鐜板湪鍋?猸愨瓙猸愨瓙猸?
- **鎴愭湰锛?* 1鍛?vs <EFBFBD>3-5鍛?
- **ROI锛?* 300-500%
- **建议:** 现在做 ⭐⭐⭐⭐⭐
- **成本:** 1vs 未来3-5
- **ROI** 300-500%
### Monorepo
- **寤鸿<EFBFBD>锛?* 鐜板湪杞<E6B9AA>崲 猸愨瓙猸愨瓙猸?
- **鎴愭湰锛?* 2-3澶?vs <EFBFBD>7-11澶?
- **ROI锛?* 300-400%
- **瑙﹀彂鏉′欢锛?* 杩戞湡寮€鍙戣繍钀ョ<E99280>鐞嗙<E9909E>锛屽繀椤昏浆鎹?
- **建议:** 现在转换 ⭐⭐⭐⭐⭐
- **成本:** 2-3vs 未来7-11
- **ROI** 300-400%
- **触发条件:** 近期开发运营管理端,必须转换
### 涓嬩竴姝ヨ<EFBFBD>鍔?
- **鏂规<EFBFBD>A锛?* 绔嬪嵆寮€鍙慉SL锛堢疮绉<E796AE>妧鏈<E5A6A7>€猴級
- **鏂规<EFBFBD>B锛?* 鍏堟敼閫犳灦鏋勶紝鍐嶅紑鍙慉SL锛堝己鐑堟帹鑽愶級猸愨瓙猸愨瓙猸?
- **鏂规<EFBFBD>C锛?* 鍙<>Monorepo锛屽欢鍚嶴chema闅旂<EFBFBD>
### 下一步行动
- **方案A** 立即开发ASL累积技术债
- **方案B** 先改造架构再开发ASL强烈推荐⭐⭐⭐⭐⭐
- **方案C** 只做Monorepo延后Schema隔离
---
## 📝 今日成果
**完成的文档:**
1. 鉁?00-鏍稿績闂<EFBFBD><EFBFBD>.md
2. 鉁?01-绯荤粺鏋舵瀯鍒嗗眰璁捐<EFBFBD>.md锛?00+琛岋級
3. 鉁?02-鏂囨。浣撶郴閲嶆瀯鏂规<EFBFBD>v2.0.md锛?90+琛岋級
4. 鉁?03-鏁版嵁搴撴灦鏋勮<EFBFBD>鏄?md锛?34+琛岋級
5. 鉁?04-杩愯惀绠悊绔<EFBFBD>灦鏋勮<EFBFBD>璁?md锛?59+琛岋級
6. 鉁?05-Schema闅旂<EFBFBD>鏂规<EFBFBD>涓庢垚鏈<EFBFBD>垎鏋?md锛?042+琛岋級
7. 鉁?06-妯″潡鐙<EFBFBD>珛閮ㄧ讲涓庡崟鏈虹増鏂规<EFBFBD>.md锛?541+琛岋級
8. 鉁?07-Monorepo鏋舵瀯璇勪及.md锛?55+琛岋級
9. 鉁?08-鏋舵瀯璁捐<EFBFBD>鍏ㄦ櫙鍥?md
10. 鉁?99-涓嬩竴姝ヨ<EFBFBD>鍔ㄥ喅绛栧缓璁?md
1. 00-核心问题解答.md
2. 01-系统架构分层设计.md900+行)
3. 02-文档体系重构方案v2.0.md790+行)
4. 03-数据库架构说明.md434+行)
5. 04-运营管理端架构设计.md859+行)
6. 05-Schema隔离方案与成本分析.md1042+行)
7. 06-模块独立部署与单机版方案.md1541+行)
8. 07-Monorepo架构评估.md555+行)
9. 08-架构设计全景图.md
10. 99-下一步行动决策建议.md
**鎬昏<EFBFBD>锛?* 6000+琛岃<E7909B>缁嗚<E7BC81>璁?
**总计:** 6000+行详细设计
---

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,19 +1,19 @@
# <EFBFBD>唳旿摨𤘪沲<EFBFBD><EFBFBD><EFBFBD>?
# 数据库架构说明
> **<EFBFBD>𥕦遣<EFBFBD><EFBFBD>嚗?* 2025-11-06
> **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?* 瞉<><E79E89><EFBFBD>唳旿摨㯄<E691A8>蝵脫䲮撘誩<E69298><E8AAA9><EFBFBD>
> **创建日期:** 2025-11-06
> **文档目的:** 澄清数据库部署方式和架构
---
## 📋 核心澄清
### <EFBFBD>?<3F><EFBFBD><E586BD>芸楛<E88AB8><EFBFBD><E7A589><EFBFBD>ostgreSQL<EFBFBD>唳旿摨橒<EFBFBD>
### ✅ 您有自己独立的PostgreSQL数据库!
**<EFBFBD>喲睸鈭见<EFBFBD>嚗?*
1. <EFBFBD>?PostgreSQL<EFBFBD><EFBFBD><EFBFBD>Docker<EFBFBD>函蔡<EFBFBD><EFBFBD><EFBFBD>`docker-compose.yml`嚗?
2. <EFBFBD>?餈蹱糓<E8B9B1>券★<E588B8><EFBFBD><E6A183><EFBFBD><E7A589>唳旿摨橒<E691A8>銝齿糓Dify<EFBFBD>?
3. <EFBFBD>?Dify<EFBFBD>㕑䌊撌勗<EFBFBD><EFBFBD>函𡠺蝡讠<EFBFBD><EFBFBD>唳旿摨橒<EFBFBD><EFBFBD>dify/docker/`<EFBFBD><EFBFBD>銝页<EFBFBD>
4. <EFBFBD>?<3F><EFBFBD><E585B6><EFBFBD><EFBFBD><E996AC><EFBFBD><EFBFBD><EFBFBD>ostgreSQL嚗㷉ocker隡朞䌊<EFBFBD><EFBFBD>撱?
**关键事实:**
1. PostgreSQL是通过Docker部署的(`docker-compose.yml`
2. ✅ 这是您项目的独立数据库,不是Dify
3. Dify有自己完全独立的数据库(在`dify/docker/`目录下)
4. ✅ 您不需要手动安装PostgreSQLDocker会自动创建
---
@@ -25,18 +25,18 @@
# 位置AIclinicalresearch/docker-compose.yml
services:
# PostgreSQL <EFBFBD>唳旿摨?
# PostgreSQL 数据库
postgres:
image: postgres:15-alpine # 使用官方PostgreSQL镜像
container_name: ai-clinical-postgres
environment:
POSTGRES_DB: ai_clinical_research # 数据库名
POSTGRES_USER: postgres # <EFBFBD><EFBFBD><EFBFBD>?
POSTGRES_USER: postgres # 用户名
POSTGRES_PASSWORD: postgres123 # 密码
ports:
- "5432:5432" # 端口映射
volumes:
- postgres_data:/var/lib/postgresql/data # <EFBFBD>唳旿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- postgres_data:/var/lib/postgresql/data # 数据持久化
networks:
- ai-clinical-network
healthcheck:
@@ -58,14 +58,14 @@ services:
volumes:
postgres_data: # PostgreSQL数据卷数据持久化存储
redis_data: # Redis<EFBFBD>唳旿<EFBFBD>?
redis_data: # Redis数据卷
```
---
## 🚀 启动流程
### <EFBFBD><EFBFBD>桀鍳<EFBFBD><EFBFBD><EFBFBD>穿<EFBFBD><EFBFBD><EFBFBD>桀鍳<EFBFBD>?bat嚗?
### 一键启动脚本(一键启动.bat
```batch
[步骤2/7] 启动PostgreSQL和Redis容器
@@ -79,14 +79,14 @@ docker-compose up -d
5. 启动容器并在后台运行
```
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ostgreSQL嚗?*
- <EFBFBD>?Docker隡朞䌊<EFBFBD><EFBFBD>撱箏<EFBFBD>蝞∠<EFBFBD>
- <EFBFBD>?<3F>唳旿摮睃<E691AE><E79D83>求ocker<65>唳旿<E594B3>瑚葉嚗䔶<E59A97>隡帋腺憭?
- <EFBFBD>?<3F>臭誑<E887AD><EFBFBD>`localhost:5432`餈墧𦻖
**您不需要手动安装PostgreSQL**
- Docker会自动创建和管理
- ✅ 数据存储在Docker数据卷中不会丢失
- ✅ 可以通过`localhost:5432`连接
---
## <EFBFBD><EFBFBD>儭?<3F>唳旿摨栞<E691A8><E6A09E>乩縑<E4B9A9>?
## 🗄️ 数据库连接信息
### 连接配置
@@ -95,18 +95,18 @@ docker-compose up -d
postgresql://postgres:postgres123@localhost:5432/ai_clinical_research
```
**<EFBFBD><EFBFBD>圾嚗?*
- **<EFBFBD>讛悅嚗?* postgresql://
**拆解:**
- **协议:** postgresql://
- **用户名:** postgres
- **<EFBFBD><EFBFBD>嚗?* postgres123
- **銝餅㦤嚗?* localhost嚗㇄ocker<EFBFBD><EFBFBD><EFBFBD>唳𧋦<EFBFBD><EFBFBD>
- **蝡臬藁嚗?* 5432
- **<EFBFBD>唳旿摨枏<EFBFBD>嚗?* ai_clinical_research
- **密码:** postgres123
- **主机:** localhostDocker映射到本地)
- **端口:** 5432
- **数据库名:** ai_clinical_research
### <EFBFBD>𡒊垢<EFBFBD>滨蔭嚗Ê̄ackend/.env嚗?
### 后端配置backend/.env
```bash
# <EFBFBD>唳旿摨栞<EFBFBD><EFBFBD>?
# 数据库连接
DATABASE_URL=postgresql://postgres:postgres123@localhost:5432/ai_clinical_research
# 这个连接的是您自己的PostgreSQL不是Dify的
@@ -118,85 +118,85 @@ DATABASE_URL=postgresql://postgres:postgres123@localhost:5432/ai_clinical_resear
### 系统对比
| 憿寧𤌍 | <20><EFBFBD><E587BD>唳旿摨?| Dify<66><79><EFBFBD><EFBFBD> |
| 项目 | 您的数据库 | Dify的数据库 |
|------|----------|-------------|
| **位置** | `AIclinicalresearch/docker-compose.yml` | `dify/docker/docker-compose.yml` |
| **摰孵膥<EFBFBD>?* | `ai-clinical-postgres` | `dify-db`<EFBFBD><EFBFBD>瘚页<EFBFBD> |
| **容器名** | `ai-clinical-postgres` | `dify-db`(猜测) |
| **端口** | `5432` | 可能是`5433`或不暴露 |
| **数据库名** | `ai_clinical_research` | `dify` |
| **<EFBFBD><EFBFBD>?* | 摮睃<E691AE><E79D83>券★<E588B8><EFBFBD>銝𡁜𦛚<F0A1819C>唳旿 | 摮睃<E691AE>Dify<66><79><EFBFBD>?|
| **用途** | 存储您项目的业务数据 | 存储Dify的数据 |
| **访问方式** | 直接Prisma访问 | 通过Dify API访问 |
### <EFBFBD><EFBFBD><EFBFBD>?
### 架构图
```
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<EFBFBD>? AIclinicalresearch憿寧𤌍 <EFBFBD>?
<EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>? Backend <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? PostgreSQL <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>? (Node.js) <EFBFBD>?SQL <EFBFBD>? (Docker) <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>? <EFBFBD>? <20>? <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>? Prisma <EFBFBD>? <EFBFBD>?Port: 5432 <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <EFBFBD>? <EFBFBD>?
<EFBFBD>? <EFBFBD>?HTTP API <EFBFBD>?
<EFBFBD>? <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>? Dify <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>> Dify<EFBFBD>芸楛<EFBFBD><EFBFBD>ostgreSQL <EFBFBD>?
<EFBFBD>? <20>? (Docker) <EFBFBD>? (<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <EFBFBD>?
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
┌─────────────────────────────────────────────────────────┐
AIclinicalresearch项目
│ ┌──────────────┐ ┌──────────────┐
│ │ Backend │──────│ PostgreSQL
│ │ (Node.js) SQL (Docker)
│ │
│ │ Prisma Port: 5432
│ └──────────────┘ └──────────────┘
HTTP API
│ ┌──────────────┐
│ │ Dify │──────> Dify自己的PostgreSQL
│ │ (Docker) (完全独立)
│ └──────────────┘
└─────────────────────────────────────────────────────────┘
```
---
## 📊 当前数据库表结构
### <EFBFBD><EFBFBD>PostgreSQL銝剔<EFBFBD>銵?
### 您的PostgreSQL中的表
```sql
-- 来源backend/prisma/schema.prisma
-- 用户模块
users -- <EFBFBD><EFBFBD>銵?
users -- 用户表
-- 项目模块
projects -- 憿寧𤌍銵?
projects -- 项目表
-- AI问答模块
conversations -- 撖寡<EFBFBD>銵?
messages -- <EFBFBD><EFBFBD>銵?
general_conversations -- <EFBFBD>𡁶鍂撖寡<EFBFBD>銵?
general_messages -- <EFBFBD>𡁶鍂瘨<EFBFBD><EFBFBD>銵?
conversations -- 对话表
messages -- 消息表
general_conversations -- 通用对话表
general_messages -- 通用消息表
-- <20><EFBFBD>摨𤘪芋<F0A498AA>?
-- 知识库模块
knowledge_bases -- 知识库表
documents -- <EFBFBD><EFBFBD>﹝銵?
documents -- 文档表
-- <20><EFBFBD><E5ADB5><EFBFBD><EFBFBD><EFBFBD>Phase 3嚗?
-- 批处理模块(Phase 3
batch_tasks -- 批处理任务表
batch_results -- 批处理结果表
task_templates -- 隞餃𦛚璅⊥踎銵?
task_templates -- 任务模板表
-- 稿件审查模块
review_tasks -- 蝔蹂辣摰⊥䰻隞餃𦛚銵?
review_tasks -- 稿件审查任务表
-- 运营管理模块
admin_logs -- 管理员日志表
```
**<EFBFBD>餉恣嚗?6撘㰘”嚗<E2809D><E59A97><EFBFBD>典銁<E585B8>刻䌊撌梁<E6928C>PostgreSQL銝准<EFBFBD>?*
**总计16张表全部在您自己的PostgreSQL中。**
---
## 🔧 常用操作
### <EFBFBD><EFBFBD>Docker摰孵膥<EFBFBD><EFBFBD>?
### 查看Docker容器状态
```bash
# <20><EFBFBD><E4BAA6><EFBFBD><EFBFBD>匧捆<E58CA7>?
# 查看所有容器
docker ps
# 应该能看到:
@@ -211,15 +211,15 @@ docker ps
# 进入PostgreSQL容器
docker exec -it ai-clinical-postgres psql -U postgres -d ai_clinical_research
# <EFBFBD><EFBFBD><EFBFBD>臭誑<EFBFBD><EFBFBD>SQL嚗?
# 然后可以执行SQL
\dt # 查看所有表
\d users # <EFBFBD><EFBFBD>users銵函<EFBFBD><EFBFBD>?
\d users # 查看users表结构
SELECT * FROM users LIMIT 10;
```
**<EFBFBD><EFBFBD>2嚗帋蝙<EFBFBD>冽㺭<EFBFBD><EFBFBD><EFBFBD>蝡?*
**方法2使用数据库客户端**
- **DBeaver** / **pgAdmin** / **DataGrip** / **Navicat**
- 餈墧𦻖靽⊥<E99DBD>嚗?
- 连接信息:
- Host: `localhost`
- Port: `5432`
- Database: `ai_clinical_research`
@@ -239,7 +239,7 @@ docker-compose up -d
docker-compose restart postgres
```
### <EFBFBD><EFBFBD><EFBFBD>唳旿摨𤘪𠯫敹?
### 查看数据库日志
```bash
# 查看PostgreSQL日志
@@ -251,7 +251,7 @@ docker logs -f ai-clinical-postgres
---
## <EFBFBD>𠒣 <20>唳旿<E594B3><E697BF><EFBFBD><EFBFBD>?
## 💾 数据持久化
### 数据存储位置
@@ -260,22 +260,22 @@ docker logs -f ai-clinical-postgres
postgres_data:/var/lib/postgresql/data
```
**摰鮋<EFBFBD>摮睃<EFBFBD>雿滨蔭嚗?*
**实际存储位置:**
- Windows: `C:\ProgramData\Docker\volumes\aiclinicalresearch_postgres_data\_data`
- Mac/Linux: `/var/lib/docker/volumes/aiclinicalresearch_postgres_data/_data`
**<EFBFBD><EFBFBD>嚗?*
- <20>?<3F>喃蝙<E59683>𣳇膄摰孵膥嚗Ǒdocker-compose down`嚗㚁<EFBFBD><EFBFBD>唳旿銝滢<EFBFBD>
- <EFBFBD>?<3F>唳旿摮睃<E691AE><E79D83>求ocker<65>唳旿<E594B3>瑚葉嚗峕<E59A97><EFBFBD><E98A8B>靽嘥<E99DBD>
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E88AA3><EFBFBD>`docker-compose down -v`<EFBFBD><EFBFBD><EFBFBD>斗㺭<EFBFBD>桀㭘嚗㗇<EFBFBD>隡𡁏<EFBFBD>蝛箸㺭<EFBFBD>?
**重要:**
- ✅ 即使删除容器(`docker-compose down`),数据不会丢失
- ✅ 数据存储在Docker数据卷中持久化保存
- ⚠️ 只有执行`docker-compose down -v`(删除数据卷)才会清空数据
### <EFBFBD><EFBFBD>唳旿摨?
### 备份数据库
```bash
# <EFBFBD>遢嚗<EFBFBD><EFBFBD>搴QL嚗?
# 备份导出SQL
docker exec ai-clinical-postgres pg_dump -U postgres ai_clinical_research > backup.sql
# <EFBFBD><EFBFBD><EFBFBD><EFBFBD>兄QL嚗?
# 恢复导入SQL
docker exec -i ai-clinical-postgres psql -U postgres ai_clinical_research < backup.sql
```
@@ -283,7 +283,7 @@ docker exec -i ai-clinical-postgres psql -U postgres ai_clinical_research < back
## 🎯 未来Schema隔离计划
### 敶枏<EFBFBD><EFBFBD><EFBFBD>?
### 当前状态
```sql
-- 所有表都在public schema
@@ -296,7 +296,7 @@ public.review_tasks
...
```
### <EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗𠄎chema<EFBFBD>𠉛氖嚗?
### 目标架构Schema隔离
```sql
-- 平台层Schema
@@ -311,7 +311,7 @@ aia_schema.projects
aia_schema.conversations
aia_schema.messages
CREATE SCHEMA pkb_schema; -- 銝芯犖<EFBFBD><EFBFBD>摨?
CREATE SCHEMA pkb_schema; -- 个人知识库
pkb_schema.knowledge_bases
pkb_schema.documents
@@ -325,15 +325,15 @@ review_schema.review_tasks
review_schema.review_journals
```
**摰墧鴌霈<EFBFBD>嚗?*
- **<EFBFBD>嗆挾銝<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?* <20><EFBFBD><E9A489>𠉛氖嚗䔶蝙<E494B6>刻”<E588BB><EFBFBD><EFBFBD>嚗Ǒaia_projects`, `asl_projects`嚗?
**实施计划:**
- **阶段一(立即):** 逻辑隔离,使用表名前缀(`aia_projects`, `asl_projects`
- **阶段二(微服务拆分时):** 物理隔离创建真正的Schema
---
## <EFBFBD><EFBFBD> Dify<EFBFBD>唳旿摨橒<EFBFBD><EFBFBD><EFBFBD>蝟餌<EFBFBD>嚗?
## 🔍 Dify数据库(独立系统)
### Dify<EFBFBD><EFBFBD><EFBFBD>蝵?
### Dify的部署
```
dify/docker/docker-compose.yml
@@ -345,17 +345,17 @@ dify/docker/docker-compose.yml
```
**关键点:**
- <EFBFBD>?Dify<EFBFBD>㕑䌊撌勗<EFBFBD><EFBFBD>函𡠺蝡讠<EFBFBD>docker-compose.yml
- <EFBFBD>?Dify<EFBFBD><EFBFBD>ostgreSQL<EFBFBD>舐𡠺蝡讠<EFBFBD>摰孵膥
- <EFBFBD>?<3F><EFBFBD>憿寧𤌍銝滨凒<E6BBA8>亥挪<E4BAA5>唏ify<66><79><EFBFBD><EFBFBD>
- <EFBFBD>?<3F><EFBFBD>Dify API嚗𠃍TTP REST嚗㕑<EFBFBD><EFBFBD>求ify<EFBFBD><EFBFBD>
- Dify有自己完全独立的docker-compose.yml
- Dify的PostgreSQL是独立的容器
- ✅ 您的项目不直接访问Dify的数据库
- ✅ 通过Dify APIHTTP REST调用Dify功能
### 您的项目如何使用Dify
```typescript
// 不是直接访问Dify数据库而是通过API
// <EFBFBD>𥕦遣<EFBFBD><EFBFBD>摨?
// 创建知识库
const response = await fetch('http://localhost/v1/datasets', {
method: 'POST',
headers: {
@@ -363,7 +363,7 @@ const response = await fetch('http://localhost/v1/datasets', {
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: '<EFBFBD>𤑳<EFBFBD><EFBFBD><EFBFBD>摨?
name: '我的知识库'
})
});
@@ -379,12 +379,12 @@ await fetch(`http://localhost/v1/datasets/${datasetId}/document/create-by-file`,
});
```
**<EFBFBD><EFBFBD><EFBFBD>唳旿摨㮖葉摮睃<EFBFBD>嚗?*
**您的数据库中存储:**
```sql
-- knowledge_bases銵?
-- knowledge_bases
{
id: 'uuid',
name: '<EFBFBD>𤑳<EFBFBD><EFBFBD><EFBFBD>摨?,
name: '我的知识库',
dify_dataset_id: 'xxx' -- 关联Dify的dataset_id
}
```
@@ -395,39 +395,39 @@ await fetch(`http://localhost/v1/datasets/${datasetId}/document/create-by-file`,
### 核心要点
1. <EFBFBD>?**<2A><EFBFBD><E586BD>芸楛<E88AB8><E6A59B>ostgreSQL<EFBFBD>唳旿摨?*
- <EFBFBD><EFBFBD>Docker<EFBFBD>函蔡嚗Ǒdocker-compose.yml`嚗?
1. **您有自己的PostgreSQL数据库**
- 通过Docker部署(`docker-compose.yml`
- 容器名:`ai-clinical-postgres`
- 数据库名:`ai_clinical_research`
2. <EFBFBD>?**<2A><EFBFBD><E585B6><EFBFBD><EFBFBD><E996AC><EFBFBD><EFBFBD><EFBFBD>ostgreSQL**
- `docker-compose up -d`隡朞䌊<EFBFBD><EFBFBD>撱?
2. **您不需要手动安装PostgreSQL**
- `docker-compose up -d`会自动创建
- 数据持久化存储在Docker数据卷中
3. <EFBFBD>?**Dify<EFBFBD><EFBFBD><EFBFBD>函𡠺蝡讠<EFBFBD>蝟餌<EFBFBD>**
- <EFBFBD>㕑䌊撌梁<EFBFBD>PostgreSQL<EFBFBD>唳旿摨?
- <EFBFBD><EFBFBD><EFBFBD>Dify API霈輸䔮嚗䔶<EFBFBD><EFBFBD>湔𦻖霈輸䔮<EFBFBD>唳旿摨?
3. **Dify是完全独立的系统**
- 有自己的PostgreSQL数据库
- 您通过Dify API访问,不直接访问数据库
4. <EFBFBD>?**敶枏<E695B6>16撘㰘”<E3B098><EFBFBD><E588B8><EFBFBD><E586BD><EFBFBD>ostgreSQL銝?*
4. **当前16张表全部在您的PostgreSQL**
- 用户、项目、对话、知识库、文档、批处理、稿件审查等
- 全部在`public` schema未来需要隔离
### 銝箔<EFBFBD><EFBFBD><EFBFBD>銝滩扇敺堒<EFBFBD><EFBFBD>ostgreSQL嚗?
### 为什么您不记得安装PostgreSQL
**因为您根本没有手动安装!** 😊
- <EFBFBD>?Docker<EFBFBD>芸𢆡銝贝蝸<EFBFBD>𨅯<EFBFBD>
- <EFBFBD>?Docker<EFBFBD>芸𢆡<EFBFBD>𥕦遣摰孵膥
- <EFBFBD>?銝<><E98A9D>桀鍳<E6A180><EFBFBD><E588BB>祈䌊<E7A588>典鍳<E585B8>?
- <EFBFBD>?<3F>典蘨<E585B8><E898A8><EFBFBD><E996AC>銵䈣銝<E488A3><E98A9D>桀鍳<E6A180>?bat`
- Docker自动下载镜像
- Docker自动创建容器
- ✅ 一键启动脚本自动启动
- ✅ 您只需要运行`一键启动.bat`
**这就是Docker的魔力**
---
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>甇乩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>捆嚗?*
1. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>憭齿㺭<EFBFBD><EFBFBD>嚗?
2. <EFBFBD><EFBFBD><EFBFBD><EFBFBD>訕chema<EFBFBD>𠉛氖<EFBFBD><EFBFBD>嚗?
**需要进一步了解的内容:**
1. 如何备份和恢复数据库?
2. 如何迁移到Schema隔离架构
3. 如何连接数据库进行手动查询?
4. Prisma如何管理数据库迁移

File diff suppressed because it is too large Load Diff

View File

@@ -1,15 +1,15 @@
# Monorepo架构评估 - 当前阶段是否需要?
> **鏂囨。鐗堟湰锛?* v1.0
> **鍒涘缓鏃ユ湡锛?* 2025-11-06
> **鏂囨。鐩<EFBFBD>殑锛?* 璇勪及褰撳墠闃舵<E99783>閲囩敤Monorepo鏋舵瀯鐨勫繀瑕佹€у拰鎴愭湰
> **文档版本:** v1.0
> **创建日期:** 2025-11-06
> **文档目的:** 评估当前阶段采用Monorepo架构的必要性和成本
---
## 🤔 核心问题
1. 当前阶段需要使用Monorepo架构吗
2. 瀵瑰綋鍓嶉樁娈电殑鎴愭湰楂樺悧锛?
2. 对当前阶段的成本高吗?
3. 什么时候是最佳时机?
---
@@ -20,32 +20,32 @@
```
AIclinicalresearch/
鈹溾攢鈹€ frontend/ # 鍓嶇<EFBFBD>锛圧eact + Vite锛?
鈹? 鈹溾攢鈹€ src/
鈹? 鈹溾攢鈹€ package.json
鈹? 鈹斺攢鈹€ node_modules/
鈹?
鈹溾攢鈹€ backend/ # 鍚庣<EFBFBD>锛圢ode.js + Fastify锛?
鈹? 鈹溾攢鈹€ src/
鈹? 鈹溾攢鈹€ package.json
鈹? 鈹斺攢鈹€ node_modules/
鈹?
├── frontend/ # 前端React + Vite
│ ├── src/
│ ├── package.json
│ └── node_modules/
├── backend/ # 后端Node.js + Fastify
│ ├── src/
│ ├── package.json
│ └── node_modules/
├── extraction_service/ # Python文档提取服务
鈹? 鈹溾攢鈹€ main.py
鈹? 鈹溾攢鈹€ requirements.txt
鈹? 鈹斺攢鈹€ venv/
鈹?
│ ├── main.py
│ ├── requirements.txt
│ └── venv/
├── docker-compose.yml # Docker配置
└── ...
```
**褰撳墠鐗圭偣锛?*
- 鉁?缁撴瀯绠€鍗曪紝鏄撲簬鐞嗚В
- 鉁?鍓嶅悗绔<E68297>垎绂伙紝鑱岃矗娓呮櫚
- 鉁?鍚勮嚜鐙<E59A9C>珛鐨勪緷璧栫<E792A7>鐞?
- 鉂?娌℃湁浠g爜鍏变韩鏈哄埗
- 鉂?閲嶅<E996B2>鐨勯厤缃<E58EA4>枃浠?
- 鉂?涓嶆敮鎸佹ā鍧楃嫭绔嬫墦鍖?
**当前特点:**
- ✅ 结构简单,易于理解
- ✅ 前后端分离,职责清晰
- ✅ 各自独立的依赖管理
- ❌ 没有代码共享机制
- ❌ 重复的配置文件
- ❌ 不支持模块独立打包
---
@@ -55,59 +55,59 @@ AIclinicalresearch/
```
AIclinicalresearch/
鈹溾攢鈹€ packages/ # 鍏变韩鍖?
鈹? 鈹溾攢鈹€ platform-core/ # 骞冲彴鏍稿績锛堝彲澶嶇敤锛?
鈹? 鈹? 鈹溾攢鈹€ auth/
鈹? 鈹? 鈹溾攢鈹€ storage/
鈹? 鈹? 鈹溾攢鈹€ package.json
鈹? 鈹? 鈹斺攢鈹€ tsconfig.json
鈹? 鈹?
鈹? 鈹溾攢鈹€ capabilities-core/ # 閫氱敤鑳藉姏锛堝彲澶嶇敤锛?
鈹? 鈹? 鈹溾攢鈹€ llm-gateway/
鈹? 鈹? 鈹溾攢鈹€ document-processor/
鈹? 鈹? 鈹溾攢鈹€ package.json
鈹? 鈹? 鈹斺攢鈹€ tsconfig.json
鈹? 鈹?
鈹? 鈹斺攢鈹€ shared-types/ # 鍏变韩绫诲瀷瀹氫箟
鈹? 鈹溾攢鈹€ src/
鈹? 鈹溾攢鈹€ package.json
鈹? 鈹斺攢鈹€ tsconfig.json
鈹?
├── packages/ # 共享包
│ ├── platform-core/ # 平台核心(可复用)
│ │ ├── auth/
│ │ ├── storage/
│ │ ├── package.json
│ │ └── tsconfig.json
│ │
│ ├── capabilities-core/ # 通用能力(可复用)
│ │ ├── llm-gateway/
│ │ ├── document-processor/
│ │ ├── package.json
│ │ └── tsconfig.json
│ │
│ └── shared-types/ # 共享类型定义
├── src/
├── package.json
└── tsconfig.json
├── apps/ # 应用
鈹? 鈹溾攢鈹€ frontend/ # Web鍓嶇<EFBFBD>
鈹? 鈹? 鈹溾攢鈹€ src/
鈹? 鈹? 鈹斺攢鈹€ package.json
鈹? 鈹?
鈹? 鈹溾攢鈹€ backend/ # Web鍚庣<EFBFBD>
鈹? 鈹? 鈹溾攢鈹€ src/
鈹? 鈹? 鈹斺攢鈹€ package.json
鈹? 鈹?
鈹? 鈹斺攢鈹€ admin-frontend/ # 杩愯惀绠悊绔<EFBFBD>紙鏈<EFBFBD>潵锛?
鈹? 鈹溾攢鈹€ src/
鈹? 鈹斺攢鈹€ package.json
鈹?
│ ├── frontend/ # Web前端
│ │ ├── src/
│ │ └── package.json
│ │
│ ├── backend/ # Web后端
│ │ ├── src/
│ │ └── package.json
│ │
│ └── admin-frontend/ # 运营管理端(未来)
├── src/
└── package.json
├── products/ # 独立产品打包(未来)
鈹? 鈹溾攢鈹€ review-system/
鈹? 鈹斺攢鈹€ literature-system/
鈹?
鈹溾攢鈹€ package.json # 鏍筽ackage.json锛圵orkspace閰嶇疆锛?
│ ├── review-system/
│ └── literature-system/
├── package.json # 根package.jsonWorkspace配置)
├── pnpm-workspace.yaml # Workspace配置
└── tsconfig.base.json # 共享TS配置
```
---
## 馃挵 鎴愭湰鍒嗘瀽锛氱幇鍦?vs 浠ュ悗
## 💰 成本分析:现在 vs 以后
### 方案A现在转换Monorepo
#### 鎴愭湰锛?-3澶╋級
#### 成本2-3天
**Day 1锛氬<EFBFBD>涔犲拰璁捐<EFBFBD>锛?.5-1澶╋級**
**Day 1学习和设计0.5-1天)**
```
瀛︿範鍐呭<EFBFBD>锛?
- pnpm workspaces 鎴?npm workspaces
- 鍖呬緷璧栫<EFBFBD>鐞嗭紙workspace:*锛?
学习内容:
- pnpm workspaces npm workspaces
- 包依赖管理(workspace:*
- TypeScript path mapping
- 共享配置tsconfig, eslint等
@@ -117,7 +117,7 @@ AIclinicalresearch/
**Day 2重构现有代码1天**
```
浠诲姟娓呭崟锛?
任务清单:
1. 创建packages/和apps/目录结构
2. 移动frontend和backend到apps/
3. 提取共享类型到packages/shared-types/
@@ -127,72 +127,72 @@ AIclinicalresearch/
工作量8小时
难度:⭐⭐⭐ 中等
椋庨櫓锛氣瓙猸?浣庯紙鏈夊洖婊氭柟妗堬級
风险:⭐⭐ 低(有回滚方案)
```
**Day 3锛氭祴璇曞拰浼樺寲锛?.5-1澶╋級**
**Day 3测试和优化0.5-1天)**
```
娴嬭瘯鍐呭<EFBFBD>锛?
- 鍓嶇<EFBFBD><EFBFBD>姩鍜屾瀯寤?
- 鍚庣<EFBFBD><EFBFBD>姩鍜屾瀯寤?
测试内容:
- 前端启动和构建
- 后端启动和构建
- 依赖安装速度
- 寮€鍙戜綋楠?
- 开发体验
工作量4-8小时
```
**鎬绘垚鏈<EFBFBD>細2-3澶?*
**总成本2-3天**
#### 收益
**绔嬪嵆鏀剁泭锛?*
1. 鉁?浠爜鍏变韩鍙樺<E98D99>鏄擄紙绫诲瀷瀹氫箟銆佸伐鍏峰嚱鏁扮瓑锛?
2. 鉁?缁熶竴鐨勪緷璧栫<E792A7>鐞嗭紙鍑忓皯閲嶅<E996B2>瀹夎<E780B9>锛?
3. 鉁?缁熶竴鐨勯厤缃<E58EA4>TypeScript銆丒SLint绛夛級
4. 鉁?涓烘湭鏉ユ墦鍩虹<E98DA9>
**立即收益:**
1. ✅ 代码共享变容易(类型定义、工具函数等)
2. ✅ 统一的依赖管理(减少重复安装)
3. ✅ 统一的配置(TypeScript、ESLint等)
4. ✅ 为未来打基础
**<EFBFBD>潵鏀剁泭锛?*
1. 鉁?鏂板<E98F82>妯″潡鏃讹紝鍙<E7B49D>互澶嶇敤platform-core鍜宑apabilities-core
2. 鉁?鐙<>珛浜у搧鎵撳寘鍙樼畝鍗?
3. 鉁?Electron鍗曟満鐗堝紑鍙戝彉瀹规槗
4. 鉁?閬垮厤鏈<E58EA4>潵澶ц<E6BEB6>妯¢噸鏋?
**未来收益:**
1. ✅ 新增模块时,可以复用platform-core和capabilities-core
2. ✅ 独立产品打包变简单
3. Electron单机版开发变容易
4. ✅ 避免未来大规模重构
---
### 方案B继续当前结构以后再转
#### <EFBFBD>湡鎴愭湰锛?澶╋級
#### 短期成本0天
**浼樼偣锛?*
- 鉁?鏃犻渶瀛︿範鏂版妧鏈?
- 鉁?鏃犻渶閲嶆瀯浠g爜
- 鉁?鍙<>互绔嬪嵆寮€濮婣SL妯″潡寮€鍙?
**优点:**
- ✅ 无需学习新技术
- ✅ 无需重构代码
- ✅ 可以立即开始ASL模块开发
**缂虹偣锛?*
- 鉂?浠爜閲嶅<E996B2>锛堝墠鍚庣<E98D9A>绫诲瀷瀹氫箟銆佸伐鍏峰嚱鏁扮瓑锛?
- 鉂?渚濊禆绠$悊鍒嗘暎
- 鉂?涓烘湭鏉ュ煁涓嬫妧鏈<E5A6A7>€?
**缺点:**
- ❌ 代码重复(前后端类型定义、工具函数等)
- ❌ 依赖管理分散
- ❌ 为未来埋下技术债
#### <EFBFBD>潵鎴愭湰锛?-2鍛<32>
#### 未来成本1-2周
**瑙﹀彂鏉′欢锛?*
**触发条件:**
- 需要开发运营管理端(独立前端)
- 闇€瑕佸紑鍙戠嫭绔嬩骇鍝佸寘锛堝<EFBFBD>绋跨郴缁熴€丄I鏂囩尞锛?
- 闇€瑕佸紑鍙慐lectron鍗曟満鐗?
- 爜閲嶅<EFBFBD>涓ラ噸锛岀淮鎶ゅ洶闅?
- 需要开发独立产品包审稿系统、AI文献
- 需要开发Electron单机版
- 代码重复严重,维护困难
**閲嶆瀯鎴愭湰锛堜及绠楋級锛?*
**重构成本(估算):**
```
<EFBFBD>潵閲嶆瀯鎴愭湰锛?
未来重构成本:
- 学习和设计1天同现在
- 閲嶆瀯浠g爜锛?-5澶╋紙浠爜閲忔洿澶э級
* 澶氫釜鍓嶇<EFBFBD>搴旂敤锛圵eb銆丄dmin銆丒lectron锛?
- 重构代码3-5天代码量更大
* 多个前端应用Web、Admin、Electron
* 多个后端模块
* 澶ч噺鍏变韩浠g爜闇€瑕佹彁鍙?
- 娴嬭瘯楠岃瘉锛?-3澶?
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>锛?-2澶?
* 大量共享代码需要提取
- 测试验证2-3天
- 修复问题1-2天
鎬绘垚鏈<EFBFBD>7-11澶?
总成本:7-11
是现在的3-5倍
```
@@ -203,75 +203,75 @@ AIclinicalresearch/
| 维度 | 方案A现在转 | 方案B以后转 |
|------|-------------|-------------|
| **绔嬪嵆鎴愭湰** | 猸愨瓙猸?涓<>紙2-3澶╋級 | 猸愨瓙猸愨瓙猸?闆?|
| **<EFBFBD>潵鎴愭湰** | 猸愨瓙猸愨瓙猸?闆?| 猸愨瓙 楂橈紙7-11澶╋級 |
| **瀛︿範闅惧害** | 猸愨瓙猸?涓<>瓑 | 猸愨瓙猸?涓<>瓑锛堝欢鍚庯級 |
| **椋庨櫓** | 猸愨瓙 浣?| 猸愨瓙猸?涓<>紙鎶€鏈<E282AC>€猴級 |
| **浠g爜澶嶇敤** | 猸愨瓙猸愨瓙猸?浼樼<E6B5BC> | 猸愨瓙 鍥伴毦 |
| **妯″潡鐙<EFBFBD>珛鎵撳寘** | 猸愨瓙猸愨瓙猸?瀹规槗 | 猸愨瓙 鍥伴毦 |
| **鍥㈤槦鍗忎綔** | 猸愨瓙猸愨瓙 濂?| 猸愨瓙猸?涓€鑸?|
| **寮€鍙戜綋楠?* | 猸愨瓙猸愨瓙 濂?| 猸愨瓙猸?涓€鑸?|
| **立即成本** | ⭐⭐⭐ 中2-3天 | ⭐⭐⭐⭐⭐ 零 |
| **未来成本** | ⭐⭐⭐⭐⭐ 零 | ⭐⭐ 高(7-11天) |
| **学习难度** | ⭐⭐⭐ 中等 | ⭐⭐⭐ 中等(延后) |
| **风险** | ⭐⭐ 低 | ⭐⭐⭐ 中(技术债) |
| **代码复用** | ⭐⭐⭐⭐⭐ 优秀 | ⭐⭐ 困难 |
| **模块独立打包** | ⭐⭐⭐⭐⭐ 容易 | ⭐⭐ 困难 |
| **团队协作** | ⭐⭐⭐⭐ 好 | ⭐⭐⭐ 一般 |
| **开发体验** | ⭐⭐⭐⭐ 好 | ⭐⭐⭐ 一般 |
---
## 🎯 当前阶段评估
### 褰撳墠椤圭洰鐘舵€?
### 当前项目状态
**已完成:**
- 鉁?鍓嶇<E98D93>锛圧eact + Vite锛?
- 鉁?鍚庣<E98D9A>锛圢ode.js + Fastify锛?
- 鉁?Python鏂囨。鎻愬彇鏈嶅姟
- 鉁?鍩虹<E98DA9>鍔熻兘锛圓IA銆丳KB锛?
- ✅ 前端React + Vite
- ✅ 后端Node.js + Fastify
- Python文档提取服务
- ✅ 基础功能AIA、PKB
**即将开发:**
- 鈴?ASL妯″潡锛圓I鏅鸿兘鏂囩尞锛?
- 鈴?ADMIN锛堣繍钀ョ<EFBFBD>鐞嗙<EFBFBD>锛? 鐙<>珛鍓嶇<E98D93>搴旂敤
- ASL模块AI智能文献
- ADMIN(运营管理端)- 独立前端应用
**<EFBFBD>潵瑙勫垝锛?*
- 鈴?DC銆丼SA銆丼T銆丷VW妯″潡
- 鈴?鐙<>珛浜у搧鍖咃紙瀹ǹ绯荤粺銆丄I鏂囩尞锛?
- 鈴?Electron鍗曟満鐗?
**未来规划:**
- ⏳ DC、SSA、ST、RVW模块
- ⏳ 独立产品包审稿系统、AI文献
- Electron单机版
---
### <EFBFBD>惁闇€瑕丮onorepo锛?
### 是否需要Monorepo
**璇勪及鏍囧噯锛?*
**评估标准:**
#### 鉁?闇€瑕?- 濡傛灉婊¤冻浠ヤ笅鏉′欢锛?
#### ✅ 需要 - 如果满足以下条件:
1. **杩戞湡锛?-3涓<33>湀锛変細寮€鍙戝<E98D99><EFBFBD>嫭绔嬪簲鐢?*
- 鉁?杩愯惀绠悊绔<E6828A>紙鐙<E7B499>珛鍓嶇<E98D93>锛?
- 鉁?ASL銆丏C绛夋柊妯″潡
1. **近期1-3个月会开发多个独立应用**
- ✅ 运营管理端(独立前端)
- ASL、DC等新模块
2. **鏈変唬鐮佸叡浜<EFBFBD>渶姹?*
- 鉁?绫诲瀷瀹氫箟锛圲ser銆丳roject绛夛級
- 鉁?API瀹㈡埛绔<EFBFBD>apiClient锛?
- 鉁?宸ュ叿鍑芥暟锛堟棩鏈熸牸寮忓寲銆侀獙璇佺瓑锛?
2. **有代码共享需求**
- ✅ 类型定义User、Project等)
- API客户端(apiClient
- ✅ 工具函数(日期格式化、验证等)
3. **<EFBFBD>潵鏈夋ā鍧楃嫭绔嬮儴缃查渶姹?*
- 鉁?瀹ǹ绯荤粺鐙<E7B2BA>珛浜у
- 鉁?AI鏂囩尞鐙<E5B09E>珛浜у
- 鉁?Electron鍗曟満鐗?
3. **未来有模块独立部署需求**
- ✅ 审稿系统独立产品
- ✅ AI文献独立产品
- Electron单机版
4. **鍥㈤槦鑳藉<EFBFBD>鎺ュ彈2-3澶╃殑瀛︿範鍜岄噸鏋?*
- 鉁?瀛︿範鏇茬嚎涓嶉櫋宄?
- 鉁?鏂囨。鍜屾渶浣冲疄璺典赴瀵?
4. **团队能够接受2-3天的学习和重构**
- ✅ 学习曲线不陡峭
- ✅ 文档和最佳实践丰富
#### 鉂?涓嶉渶瑕?- 濡傛灉婊¤冻浠ヤ笅鏉′欢锛?
#### ❌ 不需要 - 如果满足以下条件:
1. **<EFBFBD>湁涓€涓<EFBFBD>墠绔?+ 涓€涓<E282AC>悗绔?*
- 鉂?褰撳墠宸叉湁杩愯惀绠悊绔<E6828A>渶姹?
1. **只有一个前端 + 一个后端**
- ❌ 当前已有运营管理端需求
2. **娌℃湁浠g爜鍏变韩闇€姹?*
- 鉂?宸叉湁澶ч噺閲嶅<E996B2>爜锛堢被鍨嬪畾涔夌瓑锛?
2. **没有代码共享需求**
- ❌ 已有大量重复代码(类型定义等)
3. **涓嶆墦绠楁ā鍧楀寲鍜岀嫭绔嬮儴缃?*
- 鉂?宸茶<E5AEB8>鍒掓ā鍧楃嫭绔嬮攢鍞?
3. **不打算模块化和独立部署**
- ❌ 已规划模块独立销售
4. **鍥㈤槦瀹屽叏娌℃湁鏃堕棿瀛︿範鏂版妧鏈?*
- 鈿狅笍 鍙<>2-3澶?
4. **团队完全没有时间学习新技术**
- ⚠️ 只需2-3
---
@@ -279,52 +279,52 @@ AIclinicalresearch/
### 建议现在转换Monorepo ⭐⭐⭐⭐ **推荐**
**鐞嗙敱锛?*
**理由:**
**1. 鎶曞叆浜у嚭姣旀瀬楂?*
**1. 投入产出比极高**
```
鎶曞叆锛?-3澶?
鑺傜渷锛氭湭鏉?-11澶╋紙鑺傜渷5-8澶╋級
ROI锛?00%+
投入2-3天
节省未来7-11天节省5-8天
ROI300%+
```
**2. <EFBFBD>浜庢渶浣虫椂鏈?*
**2. 正处于最佳时机**
```
褰撳墠锛?
当前:
- 代码量适中(不多不少)
- 即将开发多个新模块
- 团队小,沟通成本低
<EFBFBD>潵锛?
未来:
- 代码量大(重构困难)
- 多个应用同时运行
- 閲嶆瀯褰卞搷鑼冨洿澶?
- 重构影响范围大
```
**3. 绗﹀悎鏈<EFBFBD>潵闇€姹?*
**3. 符合未来需求**
```
杩戞湡闇€姹傦紙3涓<EFBFBD>湀鍐咃級锛?
- 鉁?杩愯惀绠悊绔<E6828A>紙鐙<E7B499>珛鍓嶇<E98D93>锛?
- 鉁?澶氫釜涓氬姟妯″潡锛圓SL銆丏C绛夛級
- 鉁?浠g爜鍏变韩锛堢被鍨嬨€佸伐鍏峰嚱鏁帮級
近期需求3个月内
- ✅ 运营管理端(独立前端)
- ✅ 多个业务模块ASL、DC等
- ✅ 代码共享(类型、工具函数)
未来需求6-12个月
- 鉁?鐙<>珛浜у搧鎵撳寘
- 鉁?Electron鍗曟満鐗?
- 鉁?寰<>湇鍔℃媶鍒?
- ✅ 独立产品打包
- Electron单机版
- ✅ 微服务拆分
```
**4. 学习成本不高**
```
Monorepo宸ュ叿锛?
Monorepo工具:
- pnpm workspaces推荐最简单
- npm workspaces锛堝唴缃<EFBFBD>紝鏃犻渶瀹夎<EFBFBD>锛?
- npm workspaces(内置,无需安装)
- yarn workspaces成熟
瀛︿範璧勬簮锛?
- 鉁?瀹樻柟鏂囨。瀹屽杽
- 鉁?绀惧尯鏈€浣冲疄璺典赴瀵?
- 鉁?AI鍔╂墜锛堟垜锛夊彲浠ュ叏绋嬫寚瀵?
学习资源:
- ✅ 官方文档完善
- ✅ 社区最佳实践丰富
- ✅ AI助手可以全程指导
```
---
@@ -338,16 +338,16 @@ Monorepo工具
// 创建共享目录
shared/
types/ #
? user.ts
? project.ts
? index.ts
?
user.ts
project.ts
index.ts
utils/ #
date.ts
validation.ts
index.ts
// 鍓嶅悗绔<EFBFBD>紩鐢?
// 前后端引用
import { User } from '../../shared/types';
```
@@ -357,7 +357,7 @@ tsconfig.base.json # 共享TS配置
.eslintrc.shared.js # 共享ESLint配置
```
**3. 涓ユ牸鐨勪唬鐮佽<EFBFBD>鑼?*
**3. 严格的代码规范**
```
- 禁止复制粘贴代码
- 强制使用共享类型
@@ -366,37 +366,37 @@ tsconfig.base.json # 共享TS配置
**触发Monorepo转换的信号**
- 开始开发运营管理端
- 爜閲嶅<EFBFBD>瓒呰繃3澶?
- 鏂板<EFBFBD>绗?涓<>簲鐢?
- 代码重复超过3处
- 新增第3个应用
---
## 馃殌 瀹炴柦鏂规<E98F82>锛堝<E9949B>鏋滈€夋嫨杞<E5ABA8>崲锛?
## 🚀 实施方案(如果选择转换)
### 闃舵<EFBFBD>涓€锛氬噯澶囷紙鍗婂ぉ锛?
### 阶段一:准备(半天)
**瀛︿範pnpm workspaces锛?*
**学习pnpm workspaces**
```bash
# 1. 安装pnpm如果没有
npm install -g pnpm
# 2. 闃呰<EFBFBD>鏂囨。锛?0鍒嗛挓锛?
# 2. 阅读文档30分钟
https://pnpm.io/workspaces
# 3. 鐪嬬ず渚嬮」鐩<EFBFBD>紙30鍒嗛挓锛?
# 3. 看示例项目30分钟
```
**璁捐<EFBFBD><EFBFBD>綍缁撴瀯锛?*
**设计目录结构:**
```
鍐冲畾锛?
决定:
- packages/ 放什么shared-types、platform-core等
- apps/ 鏀句粈涔堬紵锛坒rontend銆乥ackend銆乤dmin-frontend锛?
- apps/ 放什么frontend、backend、admin-frontend
- 是否需要products/?(暂时不需要)
```
---
### 闃舵<EFBFBD>浜岋細閲嶆瀯锛?-1.5澶╋級
### 阶段二重构1-1.5天)
**Step 1创建基础结构**
```bash
@@ -415,7 +415,7 @@ mkdir -p packages/shared-types
mkdir -p apps
```
**Step 2锛氱Щ鍔ㄧ幇鏈変唬鐮?*
**Step 2:移动现有代码**
```bash
# 移动frontend
mv frontend apps/frontend
@@ -423,18 +423,18 @@ mv frontend apps/frontend
# 移动backend
mv backend apps/backend
# extraction_service淇濇寔鍘熶綅锛圥ython涓嶉渶瑕丮onorepo锛?
# extraction_service保持原位Python不需要Monorepo
```
**Step 3锛氭彁鍙栧叡浜<EFBFBD>唬鐮?*
**Step 3:提取共享代码**
```bash
# 鍒涘缓shared-types鍖?
# 创建shared-types
cd packages/shared-types
pnpm init
# 移动类型定义
```
**Step 4锛氶厤缃<EFBFBD>緷璧?*
**Step 4:配置依赖**
```json
// apps/frontend/package.json
{
@@ -453,14 +453,14 @@ pnpm init
**Step 5更新import**
```typescript
// <EFBFBD>敼鍓?
// 修改前
import { User } from '../types/user';
// <EFBFBD>敼鍚?
// 修改后
import { User } from '@yizhengxun/shared-types';
```
**Step 6锛氬畨瑁呬緷璧?*
**Step 6:安装依赖**
```bash
# 根目录执行(会安装所有包的依赖)
pnpm install
@@ -470,16 +470,16 @@ pnpm install
### 阶段三:测试验证(半天)
**娴嬭瘯娓呭崟锛?*
- [ ] 鍓嶇<EFBFBD><EFBFBD>姩姝父锛坄cd apps/frontend && pnpm dev`锛?
- [ ] 鍚庣<EFBFBD><EFBFBD>姩姝父锛坄cd apps/backend && pnpm dev`锛?
- [ ] 绫诲瀷鎻愮ず姝父锛圴SCode鏅鸿兘鎻愮ず锛?
- [ ] 鏋勫缓鎴愬姛锛坄pnpm build`锛?
- [ ] 鎵€鏈夊姛鑳芥<EFBFBD>甯?
**测试清单:**
- [ ] 前端启动正常(`cd apps/frontend && pnpm dev`
- [ ] 后端启动正常(`cd apps/backend && pnpm dev`
- [ ] 类型提示正常VSCode智能提示
- [ ] 构建成功(`pnpm build`
- [ ] 所有功能正常
**鍥炴粴鏂规<EFBFBD>锛?*
**回滚方案:**
```bash
# 濡傛灉鍑虹幇闂<EFBFBD><EFBFBD>锛屽彲浠ョ珛鍗冲洖婊?
# 如果出现问题,可以立即回滚
git reset --hard HEAD
```
@@ -491,66 +491,66 @@ git reset --hard HEAD
| 项目 | 立即转换 | 延后转换 |
|------|---------|---------|
| **鏃堕棿鎴愭湰** | 2-3澶?| 鏈<>7-11澶?|
| **时间成本** | 2-3天 | 未来7-11|
| **学习成本** | 中等 | 中等(延后) |
| **椋庨櫓** | 浣?| 涓<>紙鎶€鏈<E282AC>€猴級 |
| **浠g爜璐ㄩ噺** | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸?|
| **寮€鍙戞晥鐜?* | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸?|
| **<EFBFBD>潵鎵╁睍** | 猸愨瓙猸愨瓙猸?| 猸愨瓙 |
| **鎶曞叆浜у嚭姣?* | 猸愨瓙猸愨瓙猸?| 猸愨瓙 |
| **风险** | 低 | 中(技术债) |
| **代码质量** | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| **开发效率** | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| **未来扩展** | ⭐⭐⭐⭐⭐ | ⭐⭐ |
| **投入产出比** | ⭐⭐⭐⭐⭐ | ⭐⭐ |
---
## 馃幆 鏈€缁堝缓璁?
## 🎯 最终建议
### 鎺ㄨ崘鏂规<EFBFBD>锛氱珛鍗宠浆鎹<EFBFBD>onorepo 猸愨瓙猸愨瓙猸?
### 推荐方案立即转换Monorepo ⭐⭐⭐⭐⭐
**鏍稿績鐞嗙敱锛?*
1. 鉁?**鎶曞叆灏忥紝鏀剁泭澶?*锛?-3澶╂崲鏉ユ湭鏉?-8澶╃殑鑺傜渷
2. 鉁?**姝<E5A79D>浜庢渶浣虫椂鏈?*锛氫唬鐮侀噺閫備腑锛屽嵆灏嗗紑鍙戝<E98D99>妯″潡
3. 鉁?**绗﹀悎鏈<E6828E>潵瑙勫垝**锛氳繍钀ョ<E99280>鐞嗙<E9909E>銆佺嫭绔嬩骇鍝佸寘銆丒lectron鍗曟満鐗?
4. 鉁?**瀛︿範鎴愭湰鍙<E6B9B0>帶**锛氭湁AI鍏ㄧ▼鎸囧<E98EB8>锛屾湁璇︾粏鏂囨。
**核心理由:**
1. **投入小,收益大**2-3天换来未来5-8天的节省
2. **正处于最佳时机**:代码量适中,即将开发多模块
3. **符合未来规划**运营管理端、独立产品包、Electron单机版
4. **学习成本可控**有AI全程指导有详细文档
**瀹炴柦璁″垝锛?*
**实施计划:**
```
<EFBFBD>懆锛歁onorepo閲嶆瀯锛?-3澶╋級
Day 1锛氬<EFBFBD>涔?+ 璁捐<E79281>锛堝崐澶╋級
本周Monorepo重构2-3天
Day 1:学习 + 设计(半天)
Day 2重构实施1天
Day 3锛氭祴璇曢獙璇侊紙鍗婂ぉ锛?
Day 3:测试验证(半天)
涓嬪懆锛氱户缁瑼SL妯″潡寮€鍙?
- <EFBFBD>Monorepo甯︽潵鐨勪究鍒?
- 浠g爜澶嶇敤鍙樼畝鍗?
- 绫诲瀷鍏变韩寮€绠卞嵆鐢?
下周继续ASL模块开发
- 享受Monorepo带来的便利
- 代码复用变简单
- 类型共享开箱即用
```
**如果您决定采纳,我可以:**
1. 鉁?鎻愪緵璇︾粏鐨剆tep-by-step鎸囧<EFBFBD>
2. 鉁?甯<>偍璁捐<E79281><EFBFBD>綍缁撴瀯
3. 鉁?缂栧啓閰嶇疆鏂囦欢
4. 鉁?鍗忓姪閲嶆瀯鍜屾祴璇?
1. ✅ 提供详细的step-by-step指导
2. ✅ 帮您设计目录结构
3. ✅ 编写配置文件
4. ✅ 协助重构和测试
---
### 替代方案:延后转换(不推荐)
**濡傛灉鏃堕棿纭<EFBFBD>疄绱ц揩锛?*
**如果时间确实紧迫:**
**最低要求:**
1. 鉁?鍒涘缓`shared/`<EFBFBD>綍瀛樻斁鍏变韩浠
2. 鉁?鍒跺畾浠g爜澶嶇敤瑙勮寖
3. 鉁?鍦ㄥ紑鍙戣繍钀ョ<E99280>鐞嗙<E9909E>鍓嶅繀椤昏浆鎹?
1. ✅ 创建`shared/`目录存放共享代码
2. ✅ 制定代码复用规范
3. ✅ 在开发运营管理端前必须转换
**瑙﹀彂鏉′欢锛?*
**触发条件:**
- 开始开发运营管理端
- 代码重复严重
- 鍥㈤槦鎴愬憳鎶辨€?
- 团队成员抱怨
---
**鎮ㄨ<EFBFBD>寰楀憿锛?* 馃槉
**您觉得呢?** 😊
<EFBFBD>惁鎰挎剰鎶曞叆2-3澶╋紝涓烘湭鏉ヨ妭鐪?-8澶╋紵
是否愿意投入2-3天为未来节省5-8天

File diff suppressed because it is too large Load Diff

View File

@@ -1,88 +1,88 @@
# **憯寡<EFBFBD>敺芰<EFBFBD><EFBFBD><EFBFBD> \- AI蝘𤑳<E89D98>鈭批<E988AD><E689B9><EFBFBD><EFBFBD><E79899>獢?(PRD)**
# **壹证循科技 \- AI科研产品需求文档 (PRD)**
文档版本: 1.0
<EFBFBD><EFBFBD>: 2025撟?1<>?<3F>?
<EFBFBD><EFBFBD> 鈭批<E988AD><E689B9><EFBFBD><E585B7><EFBFBD><EFBFBD><EFBFBD><E7B2B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A185><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E888AB>𠰴<EFBFBD>雿枏<E99BBF>隞?
日期: 2025年11月5日
致: 产品部、市场部、销售部、技术部及全体同仁
## **1\. 文档目的**
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>獢?(Product Requirements Document, PRD) <EFBFBD>典銁皜<EFBFBD>苊摰帋<EFBFBD>"憯寡<E686AF>敺芰<E695BA><E88AB0><EFBFBD>AI蝘𤑳<E89D98>鈭批<E988AD>"<22><>瓲敹<E793B2><E695B9><EFBFBD><EFBFBD><E8B3AC>𤌍<EFBFBD><F0A48C8D><EFBFBD><EFBFBD><E79195>喲睸<E596B2><E79DB8><EFBFBD><EFBFBD><EFBFBD><E8A098><EFBFBD><EFBFBD><E79899>?
本需求文档 (Product Requirements Document, PRD) 旨在清晰定义"壹证循科技AI科研产品"的核心功能、目标用户及关键的非功能性需求。
<EFBFBD><EFBFBD><EFBFBD>糓頝券<EFBFBD><EFBFBD><EFBFBD>雿𦦵<EFBFBD><EFBFBD>箇𨺗嚗𣬚鍂鈭𡒊靽脲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>挽霈∩<EFBFBD><EFBFBD>㦤蝑𣇉裦靽脲<EFBFBD>擃睃漲銝<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>撖寞<EFBFBD>隞砍<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>函蔡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
本文档是跨部门协作的基石,用于确保技术实现、产品设计与市场策略保持高度一致,特别是应对我们复杂的商业模式和多样的客户部署需求。
## **2\. 鈭批<EFBFBD><EFBFBD>踵艶銝𡒊𤌍<EFBFBD>?*
## **2\. 产品愿景与目标**
鈭批<EFBFBD><EFBFBD>踵艶嚗?
<EFBFBD><EFBFBD><EFBFBD>銝芾<EFBFBD><EFBFBD>碶葩摨羓<EFBFBD><EFBFBD>𥪜<EFBFBD><EFBFBD>笔𦶢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>I撽勗𢆡<EFBFBD><EFBFBD><EFBFBD>蝡坔<EFBFBD><EFBFBD><EFBFBD>蝘𤑳<EFBFBD>撟喳蝱<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
韏贝<EFBFBD>銝游<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𣬚<EFBFBD><EFBFBD>𥪯犖<EFBFBD><EFBFBD><EFBFBD><EFBFBD>AI銝舘䌊<EFBFBD><EFBFBD>撌亙<EFBFBD>嚗峕<EFBFBD>憭批𧑐<EFBFBD>𣂼<EFBFBD>蝘𤑳<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>瘛勗漲嚗𣬚憬<EFBFBD><EFBFBD><EFBFBD>唳旿<EFBFBD><EFBFBD>撖毺<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
产品愿景:
打造一个覆盖临床科研全生命周期、AI驱动的一站式智能科研平台。
核心目标:
赋能临床医生和科研人员通过AI与自动化工具极大地提升科研效率、数据处理质量和文献分析深度缩短从数据到洞察的周期。
## **3\. 目标用户画像 (User Personas)**
1. **銝游<EFBFBD><EFBFBD><EFBFBD>/<2F>𠉛弦<F0A0899B>?*嚗?
* **<EFBFBD><EFBFBD>**嚗帋<E59A97><E5B88B>脣龫<E884A3><EFBFBD>蝘穃恕銝颱遙<E9A2B1><E98199>蜓瘝餃龫撣<E9BEAB><E692A3><EFBFBD><EFBFBD>蝛嗥<E89D9B><E597A5>?
* **<EFBFBD>𤤿<EFBFBD>**嚗𡁏<E59A97>蝘𤑳<E89D98>憿寧𤌍嚗<F0A48C8D><E59A97><EFBFBD>質䌊<E8B3AA><EFBFBD><E5979A>CP<43><50><EFBFBD>憿暹<E686BF><EFBFBD>蝛塚<E89D9B><E5A19A><EFBFBD>嚗䔶<E59A97>銝游<E98A9D>撌乩<E6928C><EFBFBD><E89D9C>嚗𣬚撩銋譍<E98A8B>銝𡁶<E98A9D><E99C88><E288AA>唳旿憭<E697BF><E686AD><EFBFBD>園𡢿<E59C92>?
* **<EFBFBD><EFBFBD>瘙?*嚗𡁻<E59A97>閬?撘<>蝞勗朖<E58B97>?<3F><><EFBFBD><EFBFBD>敹恍<E695B9><EFBFBD><E7AC94><EFBFBD><EFBFBD><E5A0BA><EFBFBD><EFBFBD><E69FB4><EFBFBD><EFBFBD><EFBFBD><E99E89><EFBFBD><E69FB4><EFBFBD><EFBFBD><EFBFBD><E99C88><EFBD9E><EFBFBD>躰捏<E8BAB0><E68D8F><EFBFBD>?*<2A><><EFBFBD><EFBFBD>單釣<E596AE><E987A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E89D98>摰匧<E691B0>**<2A>?
2. **<EFBFBD>駁堺蝘穃恕/IT<49>券秄**嚗?
* **<EFBFBD><EFBFBD>**嚗𡁜龫<F0A1819C><EFBFBD>蝘𤑳<E89D98>蝞∠<E89D9E>蝘穃恕<E7A983><E68195><EFBFBD>臭葉敹<E89189><E695B9>?
* **<EFBFBD>𤤿<EFBFBD>**嚗𡁻<E59A97><EFBFBD><EFBFBD>券堺<E588B8>𣂷<EFBFBD><F0A382B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝘𤑳<E89D98>撌亙<E6928C>嚗𥕦<E59A97><F0A595A6>𤤿<EFBFBD><F0A4A4BF>娍㺭<E5A88D><EFBFBD>撠文<E692A0><E69687>浹IS<49><53>IS<49>唳旿嚗劐<E59A97><E58A90>坔銁<E59D94><EFBFBD><EFBCB7>?
* **<EFBFBD><EFBFBD>瘙?*嚗𡁻<E59A97>韐剔<E99F90>撌亙<E6928C><EFBFBD><EFBFBD><EFBFBD>**蝘<><E89D98><EFBFBD><EFBFBD>蝵?*嚗䔶<E59A97>摰匧<E691B0><E58CA7><EFBFBD>迅摰𠾼<E691B0><F0A0BEBC><EFBFBD>鈭𡒊恣<F0A1928A><E681A3><EFBFBD>?
1. **临床医生/研究者**
* **画像**:三甲医院的科室主任、主治医师、研究生。
* **痛点**有科研项目如国自然、GCP、回顾性研究压力但临床工作繁忙缺乏专业统计和数据处理时间。
* **需求**:需要"开箱即用"的工具,快速处理院内数据、分析文献、完成统计、撰写论文。**极其关注患者数据隐私与安全**。
2. **医院科室/IT部门**
* **画像**:医院的科研管理科室、信息中心。
* **痛点**需要为全院提供合规、可控的科研工具希望科研数据尤其是HIS、LIS数据保留在院内。
* **需求**:采购的工具必须支持**私有化部署**,且安全、稳定、易于管理。
## **4\. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>瘙?(Functional Requirements)**
## **4\. 核心功能需求 (Functional Requirements)**
鈭批<EFBFBD><EFBFBD><EFBFBD><EFBFBD>拚猐<EFBFBD><EFBFBD>銝?憭扳瓲敹<E793B2><EFBFBD><EFBFBD><E6A2B9><EFBFBD><E58B97><EFBFBD><EFBFBD>蝘𤑳<E89D98><F0A491B3><EFBFBD>蝔钅𡡒<E99285><EFBFBD>?
产品功能矩阵共分为7大核心模块共同构成科研全流程闭环。
| 模块ID | 模块名称 | 核心功能描述 |
| :---- | :---- | :---- |
| **F1** | **<EFBFBD><EFBFBD>蝏蠘恣<EFBFBD><EFBFBD><EFBFBD> (SSA)** | <EFBFBD>𣂷<EFBFBD>3<EFBFBD>⊥瓲敹<EFBFBD><EFBFBD><EFBFBD>鞱楝敺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𠉛弦<EFBFBD><EFBFBD><EFBFBD>瘚𧢲芋<EFBFBD><EFBFBD><EFBFBD>CT<EFBFBD>𠉛弦<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>唳旿銝𠹺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD><EFBFBD>撖澆枂<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝔卝<EFBFBD>?|
| **F2** | **蝏蠘恣<EFBFBD><EFBFBD><EFBFBD>撌亙<EFBFBD> (ST)** | <EFBFBD>𣂷<EFBFBD><EFBFBD>銝芸<EFBFBD><EFBFBD>?00+蝘滩蝠<E6BBA9><EFBFBD>蝏蠘恣撌亙<E6928C><E4BA99><EFBFBD><EFBFBD>瑞拳嚗峕說頞喳朖<E596B3><EFBFBD><E5979A><EFBFBD><EFBFBD><EFBFBD><E8AEA0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E79899>?|
| **F3** | **AI<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (AIA)** | <EFBFBD>𣂷<EFBFBD>10+銝芯<E98A9D>銝鋫I<E98BAB><EFBFBD>雿橒<E99BBF><EFBFBD><E996AC>蝘𤑳<E89D98><F0A491B3>喲睸<E596B2><E79DB8><EFBFBD>嚗𡁻<E59A97><EFBFBD><EFBFBD><EFBFBD><E981A0>ICO璇喟<E79287><E5969F><EFBFBD><EFBFBD><EFBFBD>霈∠<E99C88><E288A0><EFBFBD><EFBFBD>蝛嗆䲮獢<E4B2AE><E78DA2>摰𠾼<E691B0><F0A0BEBC><EFBFBD>蝡䭾隋<E4ADBE><EFBFBD>蝧餉<E89DA7>蝑剹<E89D91>?|
| **F4** | **AI<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (ASL)** | <EFBFBD>𣂷<EFBFBD>AI撽勗𢆡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>桀極雿𨀣<EFBFBD>嚗𡁏惣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>憸䀹<EFBFBD><EFBFBD><EFBFBD>蝑䜘<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝑䜘<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>撟嗆𣈲<EFBFBD><EFBFBD>eta<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>桀㦛靚梁<EFBFBD>摨𠉛鍂<EFBFBD>?|
| **F5** | **銝芯犖<EFBFBD><EFBFBD>摨?(PKB)** | <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𥕦遣蝘<EFBFBD><EFBFBD><EFBFBD>讃摨橒<EFBFBD><EFBFBD><EFBFBD>銝芸<EFBFBD>50蝭<EFBFBD><EFBFBD><EFBFBD><EFBFBD>賢抅鈭𤾸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銵淾I<EFBFBD><EFBFBD>嚗㇌AG嚗剹<EFBFBD>?|
| **F6** | **<EFBFBD>唳旿皜<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (DC)** | **(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)** <20>𣂷<EFBFBD>銝㮖<E98A9D>撌亙<E6928C><EFBFBD><E59A97><EFBFBD><EFBFBD><EFBFBD><EFBCB7><EFBFBD>瘚琿<E7989A><EFBFBD>蓡銝<E893A1><E98A9D>蝥改<E89DA5><E694B9><EFBFBD><EFBFBD>銵冽聢嚗?0+撘𩤃<E69298><F0A9A483><EFBFBD>xcel<65>唳旿嚗<E697BF><E59A97><EFBFBD>唬舅憭批<E686AD><E689B9><EFBFBD> 1\. **銵冽聢ETL**嚗𡁜<E59A97>憭𡁜<E686AD><F0A1819C><EFBFBD><EFBFBD><E5839A><EFBFBD>瘞渲”嚗峕<E59A97>"<22><><EFBFBD><EFBFBD>D"<22>?<3F>園𡢿"<22><EFBFBD>銝箔<E98A9D>撘惩僕<E683A9><E58395><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𣂼捐銵具<E98AB5>?2\. **<EFBFBD><EFBFBD>𧋦<EFBFBD>𣂼<EFBFBD>(NER)**嚗帋<E59A97><E5B88B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4BA99><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝏梶<E89D8F>憭扳挾<E689B3><E68CBE>𧋦銝哨<E98A9D><E593A8>芸𢆡<E88AB8>𣂼<EFBFBD>蝏𤘪<E89D8F><F0A498AA>𣇉<EFBFBD><F0A38789>喲睸摮埈挾嚗<E68CBE><E59A97>TNM<4E><4D><EFBFBD>嚗剹<E59A97>?|
| **F7** | **銝芯犖銝剖<EFBFBD> (UAM)** | <EFBFBD>𣂷<EFBFBD>韐行<EFBFBD>蝞∠<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砌縑<EFBFBD><EFBFBD><EFBFBD><EFBFBD>拐葉敹<EFBFBD><EFBFBD><EFBFBD><EFBFBD>閧恣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?|
| **F1** | **智能统计分析 (SSA)** | 提供3条核心分析路径队列研究、预测模型、RCT研究。实现从数据上传、质控、分析到报告导出的完整流程。 |
| **F2** | **统计分析工具 (ST)** | 提供一个包含100+种轻量化统计工具的工具箱,满足即时、小型的分析需求。 |
| **F3** | **AI智能回答 (AIA)** | 提供10+个专业AI智能体覆盖科研关键节点选题评价、PICO梳理、样本量计算、研究方案制定、文章润色与翻译等。 |
| **F4** | **AI智能文献 (ASL)** | 提供AI驱动的文献工作流智能检索、标题摘要初筛、全文复筛、信息提取并支持Meta分析、证据图谱等应用。 |
| **F5** | **个人知识库 (PKB)** | 允许用户创建私人文献库如每个库50篇并能基于库内文献进行AI问答RAG|
| **F6** | **数据清洗整理 (DC)** | **(核心难点)** 提供专业工具处理医院导出的海量百万行级、多表格10+张的Excel数据实现两大功能 1\. **表格ETL**:将多张散乱的流水表,按"患者ID"和"时间"重组为一张干净的分析宽表。 2\. **文本提取(NER)**从病理报告、住院小结等大段文本中自动提取结构化的关键字段如TNM分期|
| **F7** | **个人中心 (UAM)** | 提供账户管理、版本信息、帮助中心、订单管理等基础支撑功能。 |
## **5\. <EFBFBD>喲睸<EFBFBD>𧼮<EFBFBD><EFBFBD><EFBFBD><EFBFBD>瘙?(Non-Functional Requirements)**
## **5\. 关键非功能性需求 (Non-Functional Requirements)**
餈蹱糓<EFBFBD>砌漣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>典嘀銝?*<2A><>憭齿<E686AD><E9BDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**<2A><><EFBFBD><EFBFBD><E79899><EFBFBD><EFBFBD><E88880>舀沲<E88880><E6B2B2><EFBFBD>憿餉圾<E9A489><EFBFBD><E5969F>喲睸<E596B2><EFBFBD><E78390>?
这是本产品在商业推广中**最复杂、最核心**的需求,是技术架构必须解决的关键挑战。
### **NFR-1: <EFBFBD>函蔡璅<EFBFBD><EFBFBD>菜暑<EFBFBD>?(Deployment Flexibility)**
### **NFR-1: 部署模式灵活性 (Deployment Flexibility)**
鈭批<EFBFBD><EFBFBD><EFBFBD><EFBFBD>隞乩<EFBFBD><EFBFBD>𤤿<EFBFBD><EFBFBD>函蔡敶<EFBFBD><EFBFBD><EFBFBD>隞交說頞喃<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>撠文<EFBFBD><EFBFBD>臬龫<EFBFBD><EFBFBD>撖寞㺭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝亥<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
产品必须支持以下四种部署形态,以满足不同客户(尤其是医院)对数据安全和合规性的严苛要求。
| <EFBFBD>函蔡敶<EFBFBD>?| <20>讛膩 | <20>喲睸閬<E79DB8><E996AC> |
| 部署形态 | 描述 | 关键要求 |
| :---- | :---- | :---- |
| **鈭𤑳垢SaaS<EFBFBD>?* | (暺䁅恕) 鈭批<E988AD><E689B9>函蔡<E587BD><EFBFBD><E585B8><EFBFBD>嚗𣬚鍂<F0A3AC9A><EFBFBD><EFBFBD>瘚讛<E7989A><E8AE9B><EFBFBD><E586BD><EFBFBD><E99C88>雿輻鍂<E8BCBB>?| 敹<><EFBFBD><EFBFBD>憭𡁶<E686AD><F0A181B6><EFBFBD><E791AF><EFBFBD><EFBFBD>舐鍂<E88890>?|
| **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵?* | (<28>駁堺/<2F><EFBFBD>) 撠?*<2A>港葵撟喳蝱**<EFBFBD>?*<2A><><EFBFBD><E79285>**嚗<><E59A97>DC, SSA嚗厰<E59A97>蝵脣銁摰<E691B0><EFBCB8><EFBFBD><EFBFBD>蝵烐<E89DB5><E78390>膥銝𨳍<E98A9D>?| 敹<><EFBFBD>𣂷<EFBFBD>摰孵膥<E5ADB5><EFBFBD>Docker/K8s嚗厩<E59A97><EFBFBD><E98A9D><EFBFBD>蝵脫䲮獢<E4B2AE><E78DA2><EFBFBD><EFBFBD>?00%銝滚枂<E6BB9A><E69E82><EFBFBD><EFBFBD>?|
| **<EFBFBD>閙㦤<EFBFBD>?* | (銝芯犖<E88AAF><EFBFBD>) <20>𣂷<EFBFBD>**<2A><EFBFBD><EFBFBD><E98B86>獢屸𢒰摨𠉛鍂(Windows/Mac)**嚗屸<E59A97>撖道C<E98193><43>SA<53><41>SL蝑㗇瓲敹<E793B2><EFBFBD>𨰜<EFBFBD>?| **<EFBFBD>唳旿100%<25>砍𧑐<E7A08D>?*<2A><><EFBFBD><EFBFBD><EFBFBD><E69FB4><EFBFBD>靘见<E99D98>憪𧢲<E686AA>隞嗡艇蝳<E88987><E89DB3>隡𨬭<E99AA1><F0A8ACAD><EFBFBD>憿餅𣈲<E9A485><F0A388B2>氖蝥輯<E89DA5>銵䕘<E98AB5><EFBFBD>C, SSA嚗剹<E59A97>?*(靘见<E99D98>嚗鋫SL璅<E79285><E288AA><EFBFBD><E887AC><EFBFBD><E689AF><EFBFBD>蝡烊LM嚗䔶<E59A97><EFBFBD><E99A9E><EFBFBD><EFBFBD>?<3F><EFBFBD>"<22><EFBFBD>"<22><><EFBFBD>")* |
| **云端SaaS** | (默认) 产品部署在公有云,用户通过浏览器按需订阅使用。 | 必须支持多租户、高可用。 |
| **私有化部署** | (医院/机构) 将**整个平台**或**指定模块**如DC, SSA部署在客户的内网服务器上。 | 必须提供容器化Docker/K8s的一键部署方案。数据100%不出内网。 |
| **单机版** | (个人医生) 提供**可安装的桌面应用(Windows/Mac)**针对DC、SSA、ASL等核心模块。 | **数据100%本地化**。文献、病例原始文件严禁上传。必须支持离线运行如DC, SSA*(例外ASL模块可受控调用云端LLM但仅限发送"摘要"而非"原文")* |
### **NFR-2: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵?(Commercial Flexibility)**
### **NFR-2: 商业模式可配置 (Commercial Flexibility)**
鈭批<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㦤蝑𣇉裦<EFBFBD><EFBFBD><EFBFBD>瘣餅<EFBFBD><EFBFBD>?
产品架构必须支持销售和市场策略的灵活性。
1. **SaaS憭𡁶<EFBFBD><EFBFBD>?(Tiered SaaS)**
* **<EFBFBD><EFBFBD>瘙?*嚗帋<E59A97>蝡特aaS<61><53><EFBFBD>憿餅𣈲<E9A485><F0A388B2>秐撠睲<E692A0>銝芰<E98A9D>蝥改<E89DA5>**銝㮖<E98A9D><E3AE96><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝥抒<E89DA5><E68A92><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**<2A>?
* **摰䂿緵**嚗𡁜<E59A97>蝡舫<E89DA1><E888AB><EFBFBD><EFBFBD><E691B0><EFBFBD><EFBFBD>*\*<2A><EFBFBD><EFBFBD><E69298>?Feature Flag)\*\*蝟餌<E89D9F>嚗諹<E59A97><E8ABB9><EFBFBD><E58EA9><EFBFBD><E7A587>嗥鍂<E597A5>瑕虾<E79195><EFBFBD><E587BD><EFBFBD><E79285><E288AA><EFBFBD><EFBFBD>冽活<E586BD><EFBFBD><E5959C>I璅<E79285>蝑剹<E89D91>?
2. **<EFBFBD><EFBFBD>硋睸<EFBFBD>?(Modular Sales)**
* **<EFBFBD><EFBFBD>瘙?*嚗帋遙雿蓥<E99BBF>銝芸<E98A9D><E88AB8>賣芋<E8B3A3><EFBFBD><EFBFBD>4: AI<41><EFBFBD><E7AE84><EFBFBD>讃嚗厰<E59A97>**敹<><EFBFBD>?*鋡怎𡠺蝡𧢲<E89DA1><F0A7A2B2><EFBFBD><EFBFBD>雿靝蛹<E99D9D>閧𡠺<E996A7><F0A1A0BA><EFBFBD><E6BCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
* **摰䂿緵**嚗𡁏<E59A97><F0A1818F>舀沲<E88880><E6B2B2><EFBFBD>憿餅糓"<22><EFBFBD><EFBFBD>"<22><><EFBFBD>蝖桐<E89D96><E79285><E288AA>湔瓷<E6B994>靘肽<E99D98><E882BD>?
1. **SaaS多版本 (Tiered SaaS)**
* **需求**云端SaaS版必须支持至少三个等级**专业版、高级版、旗舰版**。
* **实现**:后端需具备完善的\*\*功能开关(Feature Flag)\*\*系统能按版本限制用户可用的功能模块、使用次数、AI模型等。
2. **模块化售卖 (Modular Sales)**
* **需求**任何一个功能模块如F4: AI智能文献都**必须能**被独立打包,作为单独的产品进行售卖。
* **实现**:技术架构必须是"松耦合"的,确保模块间没有硬依赖。
3. **AI成本可控 (Configurable AI)**
* **<EFBFBD><EFBFBD>瘙?*嚗帋蛹摨𥪜笆銝滚<E98A9D><E691B0><EFBCB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7A586>笔漲嚗<E6BCB2><EFBFBD><EFBFBD>憿餅𣈲<E9A485>?*<2A><EFBFBD><E586BD><EFBFBD><EFBFBD>?*<2A>𡒊垢<F0A1928A><E59EA2>之霂剛<E99C82><E79285><E288AA>?
* **摰䂿緵**嚗帋<E59A97><EFBFBD><E68692>銝㮖<E98A9D><E3AE96><EFBFBD><EFBFBD><EFBFBD>霈方<E99C88><E696B9><EFBFBD><E586BD><EFBFBD>雿𡒊<E99BBF>DeepSeek嚗峕<E59A97><E5B395><EFBFBD><E59581><EFBFBD><E586BD><EFBFBD><E888AA>冽凒擃䁅捶<E48185><EFBFBD>Claude<64>𨰦PT<50>?
* **需求**:为应对不同客户的成本敏感度,平台必须支持**动态切换**后端的大语言模型。
* **实现**例如专业版用户默认调用成本较低的DeepSeek旗舰版用户可调用更高质量的Claude或GPT。
### **NFR-3: 平台与性能 (Platform & Performance)**
1. **撟喳蝱<EFBFBD>澆捆<EFBFBD>?*嚗?
* Web<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>厩緵隞<EFBFBD><EFBFBD><EFBFBD>膥嚗㇃hrome, Edge, Firefox, Safari嚗剹<EFBFBD>?
* <EFBFBD>閙㦤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> **Windows 10 (64雿?<3F>𠹺誑銝?* <20>?**macOS (Intel & Apple Silicon)**<EFBFBD>?
* **<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝖桐<EFBFBD><EFBFBD><EFBFBD>**嚗帋蛹靽肽<E99DBD>鈭批<E988AD>蝔喳<E89D94><E596B3><EFBFBD><E689B9>唳旿摰匧<E691B0><EFBFBD><E59A97><EFBFBD><EFBFBD>**銝齿𣈲<E9BDBF>?*隞颱<E99A9E>32雿齿<E99BBF>雿𦦵頂蝏笔<E89D8F>Windows 7蝑匧歇<E58CA7>𨀣迫<F0A880A3>滚𦛚<E6BB9A><F0A69B9A>頂蝏麄<E89D8F>?
2. **<EFBFBD>唳旿憭<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (DC璅<E79285>)**嚗?
* 鈭批<EFBFBD><EFBFBD><EFBFBD>嗆糓<EFBFBD>閙㦤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>賜迅摰𡁜<EFBFBD><EFBFBD><EFBFBD>蓡銝<EFBFBD><EFBFBD>蝥批<EFBFBD><EFBFBD><EFBFBD><EFBFBD>銵汞xcel<EFBFBD>唳旿嚗?*銝亦<E98A9D>**<2A><EFBFBD>摮䀹滯<E480B9><EFBFBD><E7AE84><EFBFBD><EFBFBD>摨誩援皞<E68FB4><E79A9E>?
* 鈭批<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>峕㺭<EFBFBD>格𧒄嚗<EFBFBD><EFBFBD>餈賣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>摰峕<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
3. **<EFBFBD><EFBFBD>𧋦<EFBFBD>𣂼<EFBFBD>韐券<EFBFBD> (DC璅<E79285>)**嚗?
* 鈭批<EFBFBD><EFBFBD><EFBFBD><EFBFBD>靘偦<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>餃郎<EFBFBD><EFBFBD>𧋦<EFBFBD>𣂼<EFBFBD><EFBFBD>?
* **<EFBFBD>滚𦛚<EFBFBD><EFBFBD><EFBFBD><EFBFBD>隡䁅圾嚗?*嚗𡁜<E59A97>雿輻鍂SOTA嚗<41><E59A97><EFBFBD>屸▲撠吔<E692A0><E59094><EFBFBD>LM嚗<4D><E59A97>Claude 3嚗劐誑靽肽<E99DBD><E882BD><EFBFBD>擃䁅捶<E48185><EFBFBD>?
* **<EFBFBD>閙㦤<EFBFBD><EFBFBD><EFBFBD>憒亙<EFBFBD><EFBFBD><EFBFBD>**嚗帋蛹靽肽<E99DBD><E882BD>唳旿<E594B3><EFBFBD><EFBFBD><E59A97>憿颱蝙<E9A2B1>?00%<25>砍𧑐餈鞱<E9A488><E99EB1><EFBFBD>LP璅<E79285><EFBFBD><E59A97>spaCy嚗㚁<E59A97><E39A81><EFBFBD><E585B6><EFBFBD><EFBFBD><E89D98><EFBFBD>齿<EFBFBD>銝见偷<E8A781>𥟇<EFBFBD>擃睃<E69383>蝖桃<E89D96><E6A183>?
1. **平台兼容性**
* Web必须支持所有现代浏览器Chrome, Edge, Firefox, Safari)。
* 单机版:必须支持 **Windows 10 (64位)及以上****macOS (Intel & Apple Silicon)**
* **【重点】明确不支持**:为保证产品稳定性和数据安全,单机版**不支持**任何32位操作系统及Windows 7等已停止服务的系统。
2. **数据处理性能 (DC模块)**
* 产品尤其是单机版必须能稳定处理百万行级别的多表Excel数据**严禁**因内存溢出而导致程序崩溃。
* 产品(服务器版)在处理相同数据时,应追求极致效率,在数分钟内完成处理。
3. **文本提取质量 (DC模块)**
* 产品必须能提供高准确率的医学文本提取。
* **服务器版(最优解)**应使用SOTA业界顶尖的LLM如Claude 3以保证最高质量。
* **单机版(妥协解)**为保证数据隐私必须使用100%本地运行的NLP模型如spaCy在保护隐私的前提下尽力提高准确率。

View File

@@ -1,8 +1,8 @@
# 核心业务规则总览
> **鐗堟湰锛?* v1.0
> **鍒涘缓鏃ユ湡锛?* 2025-10-10
> **閫傜敤鑼冨洿锛?* 鏁翠釜绯荤粺
> **版本:** v1.0
> **创建日期:** 2025-10-10
> **适用范围:** 整个系统
---
@@ -10,9 +10,9 @@
1. [用户管理规则](#用户管理规则)
2. [项目管理规则](#项目管理规则)
3. [鏅鸿兘浣撶<EFBFBD>鐞嗚<EFBFBD>鍒橾(#鏅鸿兘浣撶<EFBFBD>鐞嗚<EFBFBD>鍒?
3. [智能体管理规则](#智能体管理规则)
4. [对话管理规则](#对话管理规则)
5. [鐭ヨ瘑搴撶<EFBFBD>鐞嗚<EFBFBD>鍒橾(#鐭ヨ瘑搴撶<EFBFBD>鐞嗚<EFBFBD>鍒?
5. [知识库管理规则](#知识库管理规则)
6. [权限控制规则](#权限控制规则)
7. [配额限制规则](#配额限制规则)
@@ -22,43 +22,43 @@
### 注册规则
**BR-U001: <EFBFBD><EFBFBD><EFBFBD>竴鎬?*
- 瑙勫垯锛氭瘡涓<EFBFBD>偖绠卞彧鑳芥敞鍐屼竴涓<EFBFBD>处鍙?
**BR-U001: 邮箱唯一性**
- 规则:每个邮箱只能注册一个账号
- 验证时机:注册时
- 閿欒<EFBFBD>鎻愮ず锛?璇ラ偖绠卞凡琚<E587A1>敞鍐?
- 错误提示:"该邮箱已被注册"
**BR-U002: 邮箱格式验证**
- 瑙勫垯锛氬繀椤绘槸鏈夋晥鐨勯偖绠辨牸寮?
- 规则:必须是有效的邮箱格式
- 正则:`^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}$`
- 閿欒<EFBFBD>鎻愮ず锛?閭<><E996AD>鏍煎紡涓嶆<E6B693>纭?
- 错误提示:"邮箱格式不正确"
**BR-U003: 密码强度**
- 瑙勫垯锛氬瘑鐮佽嚦灏?浣嶏紝鍖呭惈瀛楁瘝鍜屾暟瀛?
- 规则密码至少8位包含字母和数字
- 正则:`^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d@$!%*#?&]{8,}$`
- 閿欒<EFBFBD>鎻愮ず锛?瀵嗙爜鑷冲皯8浣嶏紝闇€鍖呭惈瀛楁瘝鍜屾暟瀛?
- 错误提示:"密码至少8位需包含字母和数字"
**BR-U004: 榛樿<EFBFBD>璇曠敤鏈?*
**BR-U004: 默认试用期**
- 规则新用户默认获得30天试用期
- 实现:`trial_ends_at = now() + 30天`
### 登录规则
**BR-U005: 璐︽埛鐘舵€佹<EFBFBD>鏌?*
- 瑙勫垯锛氬彧鏈塻tatus=active鐨勭敤鎴峰彲浠ョ櫥褰?
**BR-U005: 账户状态检查**
- 规则只有status=active的用户可以登录
- 状态:
- `active` - <EFBFBD>櫥褰?
- `active` - 可登录
- `inactive` - 未激活,不可登录
- `suspended` - 已暂停,不可登录
**BR-U006: 密码错误次数限制**
- 瑙勫垯锛?鍒嗛挓鍐呮渶澶?娆¢敊璇<E6958A>皾璇?
- 瓒呰繃娆℃暟锛氫复鏃堕攣瀹氳处鎴?5鍒嗛挓
- 规则5分钟内最多5次错误尝试
- 超过次数临时锁定账户15分钟
- 实现使用Redis记录失败次数
**BR-U007: JWT Token鏈夋晥鏈?*
- Access Token锛?澶?
- Refresh Token锛?0澶?
- 杩囨湡鍚庨渶瑕侀噸鏂扮櫥褰?
**BR-U007: JWT Token有效期**
- Access Token7天
- Refresh Token30天
- 过期后需要重新登录
---
@@ -66,92 +66,92 @@
### 创建规则
**BR-P001: 椤圭洰鏁伴噺鏃犻檺鍒?*
**BR-P001: 项目数量无限制**
- 规则:用户可以创建任意数量的项目
- 鐞嗙敱锛氶」鐩<EFBFBD>槸鏍稿績鍔熻兘锛屼笉搴旈檺鍒?
- 理由:项目是核心功能,不应限制
**BR-P002: 项目名称必填**
- 瑙勫垯锛氶」鐩<EFBFBD>悕绉颁笉鑳戒负绌?
- 闀垮害锛?-200瀛楃<EFBFBD>
- 閿欒<EFBFBD>鎻愮ず锛?椤圭洰鍚嶇О涓嶈兘涓虹┖"
- 规则:项目名称不能为空
- 长度1-200字符
- 错误提示:"项目名称不能为空"
**BR-P003: 项目描述必填**
- 规则:项目描述不能为空(用于上下文注入)
- 最小长度10字符
- 閿欒<EFBFBD>鎻愮ず锛?璇疯緭鍏ラ」鐩<E3808D>儗鏅<E58497>俊鎭<E4BF8A>紝鑷冲皯10涓<30>瓧绗?
- 错误提示:"请输入项目背景信息至少10个字符"
### 更新规则
**BR-P004: 椤圭洰鑳屾櫙鍔ㄦ€佹洿鏂?*
- 瑙勫垯锛氱敤鎴峰彲浠ラ殢鏃剁紪杈戦」鐩<EFBFBD>弿杩?
- 瑙勫垯锛氬彲浠?鍥哄畾"AI鍥炲<E98DA5>鍒伴」鐩<E3808D>弿杩颁腑
**BR-P004: 项目背景动态更新**
- 规则:用户可以随时编辑项目描述
- 规则:可以"固定"AI回复到项目描述中
- 实现追加到description字段末尾
**BR-P005: 项目所有权验证**
- 瑙勫垯锛氬彧鑳戒慨鏀?鍒犻櫎鑷<E6AB8E>繁鐨勯」鐩?
- 规则:只能修改/删除自己的项目
- 验证:`project.userId === currentUser.id`
- 閿欒<EFBFBD>鎻愮ず锛?鏃犳潈闄愭搷浣滆<E6B5A3>椤圭洰"
- 错误提示:"无权限操作该项目"
### 删除规则
**BR-P006: 级联删除**
- 规则:删除项目时,级联删除其所有对话和消息
- 实现数据库ON DELETE CASCADE
- <EFBFBD><EFBFBD>锛氬墠绔<EFBFBD>渶瑕佷簩娆璁?
- 确认:前端需要二次确认
**BR-P007: 软删除(可选)**
- 瑙勫垯锛氶噸瑕侀」鐩<EFBFBD>彲浠ュ厛杞<EFBFBD>垹闄わ紝淇濈暀30澶?
- 规则重要项目可以先软删除保留30天
- 实现添加deleted_at字段
- 澶囨敞锛氬綋鍓嶇増鏈<EFBFBD>殏涓嶅疄鐜?
- 备注:当前版本暂不实现
---
## 鏅鸿兘浣撶<EFBFBD>鐞嗚<EFBFBD>鍒?
## 智能体管理规则
### 鏅鸿兘浣撻厤缃?
### 智能体配置
**BR-A001: 智能体配置化管理**
- 规则:智能体配置存储在`config/agents.yaml`
- 瑙勫垯锛氫笉閫氳繃鏁版嵁搴撶<EFBFBD>鐞?
- 瑙勫垯锛氫慨鏀归厤缃<EFBFBD>悗闇€瑕侀噸鍚<EFBFBD>湇鍔?
- 规则:不通过数据库管理
- 规则:修改配置后需要重启服务
**BR-A002: 鏅鸿兘浣撶姸鎬?*
**BR-A002: 智能体状态**
- `active` - 可用,用户可以选择
- `inactive` - 不可用,隐藏
- `testing` - 测试中,仅管理员可见
**BR-A003: 鏅鸿兘浣撳垎绫?*
- 閫夐<EFBFBD>闃舵<EFBFBD>锛氶€夐<EFBFBD>璇勪环銆佺<EFBFBD>瀛﹂棶棰樻⒊鐞?
- 鐮旂┒璁捐<EFBFBD>锛歅ICOS鏋勫缓銆佽<EFBFBD>瀵熸寚鏍囪<EFBFBD>璁°€丆RF鍒跺畾銆佹牱鏈<EFBFBD>噺璁畻銆佷复搴婄爺绌舵柟妗堟挵鍐?
- 璁烘枃闃舵<EFBFBD>锛氳<EFBFBD>鏂囨鼎鑹层€佽<EFBFBD>鏂囩炕璇戙€佹柟娉曞<EFBFBD>璇勫<EFBFBD>銆佹湡鍒婃柟娉曞<EFBFBD>璇勫<EFBFBD>銆佹湡鍒婄ǹ绾﹁瘎瀹?
**BR-A003: 智能体分类**
- 选题阶段:选题评价、科学问题梳理
- 研究设计PICOS构建、观察指标设计、CRF制定、样本量计算、临床研究方案撰写
- 论文阶段:论文润色、论文翻译、方法学评审、期刊方法学评审、期刊稿约评审
### Prompt管理
**BR-A004: Prompt文件管理**
- 规则Prompt存储在`backend/prompts/`目录
- 鍛藉悕锛歚{agent_id}_system.txt` 鍜?`{agent_id}_user.txt`
- 命名:`{agent_id}_system.txt``{agent_id}_user.txt`
- 版本通过Git管理版本
**BR-A005: Prompt变量注入**
- 瑙勫垯锛歅rompt涓<EFBFBD>彲浠ヤ娇鐢ㄥ彉閲?
- 规则Prompt中可以使用变量
- 格式:`{variable_name}`
- 示例:`{project_description}`, `{user_question}`
### 模型配置
**BR-A006: 模型参数配置**
- 瑙勫垯锛氭瘡涓<EFBFBD>櫤鑳戒綋鍙<EFBFBD>互閰嶇疆涓嶅悓妯″瀷鐨勫弬鏁?
- 鍙傛暟锛?
- 规则:每个智能体可以配置不同模型的参数
- 参数:
- `temperature`: 0.0-1.0
- `max_tokens`: 鏈€澶ц緭鍑簍oken鏁?
- `max_tokens`: 最大输出token
- `top_p`: 0.0-1.0
**BR-A007: 模型切换**
- 瑙勫垯锛氱敤鎴峰彲浠ュ湪瀵硅瘽涓<EFBFBD>垏鎹㈡ā鍨?
- 规则:用户可以在对话中切换模型
- 可选模型:
- `deepseek-v3` (默认)
- `qwen3-72b`
- `gemini-2.0-flash` (<EFBFBD>€?
- `gemini-2.0-flash` (可选)
---
@@ -160,40 +160,40 @@
### 创建对话
**BR-C001: 对话归属**
- 瑙勫垯锛氬<EFBFBD>璇濆彲浠ュ睘浜庨」鐩<EFBFBD>紝涔熷彲浠ユ槸鍏ㄥ眬蹇<EFBFBD>€熼棶绛?
- 规则:对话可以属于项目,也可以是全局快速问答
- 项目对话:`projectId` 不为null
- 全局快速问答:`projectId` 为null
**BR-C002: 对话标题自动生成**
- 瑙勫垯锛氶<EFBFBD>娆″垱寤哄<EFBFBD>璇濇椂锛屾爣棰樹负"涓巤鏅鸿兘浣撳悕绉皚鐨勫<E990A8>璇?
- 瑙勫垯锛氬彲浠ユ墜鍔ㄤ慨鏀规爣棰?
- 规则:首次创建对话时,标题为"与{智能体名称}的对话"
- 规则:可以手动修改标题
### 涓婁笅鏂囩<EFBFBD>鐞?
### 上下文管理
**BR-C003: 项目背景自动注入**
- 瑙勫垯锛氬<EFBFBD>鏋滃<EFBFBD>璇濆睘浜庨」鐩<EFBFBD>紝鑷<EFBFBD>姩灏嗛」鐩甦escription娉ㄥ叆涓婁笅鏂?
- 规则如果对话属于项目自动将项目description注入上下文
- 注入位置System prompt之后
- 格式:`# 项目背景\n{project.description}`
**BR-C004: 历史对话管理**
- 瑙勫垯锛氫繚鐣欐渶杩?0杞<30><E69D9E>璇濅綔涓轰笂涓嬫枃
- 瑙勫垯锛氳秴杩?0杞<30>殑瀵硅瘽锛岃繘琛屾憳瑕佸帇缂?
- 规则保留最近10轮对话作为上下文
- 规则超过10轮的对话进行摘要压缩
- Token限制上下文总token数不超过6000
**BR-C005: 鐭ヨ瘑搴撳紩鐢?*
- 瑙勫垯锛氱敤鎴峰彲浠ラ€氳繃`@鐭ヨ瘑搴撳悕绉癭寮曠敤鐭ヨ瘑搴?
- 瑙勫垯锛氭渶澶氬悓鏃跺紩鐢?涓<>煡璇嗗簱
**BR-C005: 知识库引用**
- 规则:用户可以通过`@知识库名称`引用知识库
- 规则最多同时引用3个知识库
- 检索数量每个知识库检索Top 5结果
### 消息固定
**BR-C006: 鍥哄畾娑堟伅鍒伴」鐩<EFBFBD>儗鏅?*
- 瑙勫垯锛氬彧鏈堿I鍥炲<EFBFBD><EFBFBD>互琚<EFBFBD>浐瀹?
- 瑙勫垯锛氬彧鏈夐」鐩<EFBFBD>唴瀵硅瘽鍙<EFBFBD>互鍥哄畾锛堝叏灞€瀵硅瘽涓嶅彲锛?
**BR-C006: 固定消息到项目背景**
- 规则只有AI回复可以被固定
- 规则:只有项目内对话可以固定(全局对话不可)
- 实现追加到project.description末尾
- 鏍煎紡锛?
- 格式:
```
--- 鏉ヨ嚜瀵硅瘽鐨勮ˉ鍏?---
--- 来自对话的补充 ---
{message.content}
```
@@ -205,83 +205,83 @@
**BR-C008: Server-Sent Events**
- 规则使用SSE实现流式输出
- 浜嬩欢绫诲瀷锛?
- `start`: 寮€濮嬬敓鎴?
- 事件类型:
- `start`: 开始生成
- `token`: 每个token
- `done`: 完成
- `error`: 错误
**BR-C009: 流式输出超时**
- 瑙勫垯锛氬崟涓<EFBFBD><EFBFBD>姹傛渶闀?0绉?
- 规则单个请求最长60秒
- 超时后:返回已生成的内容
- 閿欒<EFBFBD>鎻愮ず锛?鐢熸垚瓒呮椂锛岃<E9949B>閲嶈瘯"
- 错误提示:"生成超时,请重试"
---
## 鐭ヨ瘑搴撶<EFBFBD>鐞嗚<EFBFBD>鍒?
## 知识库管理规则
### 数量限制
**BR-K001: 鐭ヨ瘑搴撴暟閲忛檺鍒?*
- 瑙勫垯锛氭瘡涓<EFBFBD>敤鎴锋渶澶氬垱寤?涓<>煡璇嗗簱
- 楠岃瘉鏃舵満锛氬垱寤虹煡璇嗗簱鏃?
- 閿欒<EFBFBD>鎻愮ず锛?宸茶揪鍒扮煡璇嗗簱鏁伴噺涓婇檺锛?涓<>"
**BR-K001: 知识库数量限制**
- 规则每个用户最多创建3个知识库
- 验证时机:创建知识库时
- 错误提示:"已达到知识库数量上限3个"
**BR-K002: 文档数量限制**
- 瑙勫垯锛氭瘡涓<EFBFBD>煡璇嗗簱鏈€澶氫笂浼?0涓<30>枃妗?
- 规则每个知识库最多上传50个文档
- 验证时机:上传文档时
- 閿欒<EFBFBD>鎻愮ず锛?璇ョ煡璇嗗簱鏂囨。鏁伴噺宸茶揪涓婇檺锛?0涓<30>"
- 错误提示:"该知识库文档数量已达上限50个"
### 文档上传
**BR-K003: 文件格式限制**
- 规则只支持PDF和DOCX格式
- MIME绫诲瀷锛?
- MIME类型:
- `application/pdf`
- `application/vnd.openxmlformats-officedocument.wordprocessingml.document`
- 閿欒<EFBFBD>鎻愮ず锛?浠呮敮鎸丳DF鍜孌OCX鏍煎紡"
- 错误提示:"仅支持PDF和DOCX格式"
**BR-K004: 文件大小限制**
- 瑙勫垯锛氬崟涓<EFBFBD>枃浠舵渶澶?0MB
- 规则单个文件最大50MB
- 验证时机:上传前(前端)和上传后(后端)
- 閿欒<EFBFBD>鎻愮ず锛?鏂囦欢澶у皬瓒呰繃闄愬埗锛堟渶澶?0MB锛?
- 错误提示:"文件大小超过限制最大50MB"
**BR-K005: 鏂囦欢鍚嶅敮涓€鎬?*
**BR-K005: 文件名唯一性**
- 规则:同一知识库内,文件名不能重复
- 验证:检查是否已存在同名文件
- 澶勭悊锛氳嚜鍔ㄩ噸鍛藉悕锛堟坊鍔犳椂闂存埑锛?
- 处理:自动重命名(添加时间戳)
### 文档处理
**BR-K006: 鏂囨。澶勭悊鐘舵€?*
**BR-K006: 文档处理状态**
- 状态流转:
1. `uploading` - 涓婁紶涓?
2. `processing` - Dify澶勭悊涓?
1. `uploading` - 上传中
2. `processing` - Dify处理中
3. `completed` - 处理完成
4. `failed` - 处理失败
**BR-K007: 处理失败重试**
- 瑙勫垯锛氬<EFBFBD>鐞嗗け璐ョ殑鏂囨。涓嶈嚜鍔ㄩ噸璇?
- 规则:处理失败的文档不自动重试
- 规则:用户可以删除后重新上传
- 错误信息记录在error_message字段
**BR-K008: 异步处理**
- 规则:文档上传后立即返回
- 规则后台异步提交到Dify处理
- 瑙勫垯锛氬墠绔<EFBFBD>疆璇㈣幏鍙栧<EFBFBD>鐞嗙姸鎬?
- 规则:前端轮询获取处理状态
### 鐭ヨ瘑搴撴<EFBFBD>绱?
### 知识库检索
**BR-K009: 娣峰悎妫€绱?*
- 瑙勫垯锛氫娇鐢ㄥ叧閿<EFBFBD>瘝妫€绱?+ 璇<>箟妫€绱?
- 瑙勫垯锛氬惎鐢≧eranking閲嶆帓搴?
- Top K锛?涓<>粨鏋?
**BR-K009: 混合检索**
- 规则:使用关键词检索 + 语义检索
- 规则启用Reranking重排序
- Top K5个结果
- 相似度阈值0.5
**BR-K010: 妫€绱㈢粨鏋滃紩鐢?*
**BR-K010: 检索结果引用**
- 规则AI回答必须注明引用来源
- 格式:`[文档名] 内容...`
- 瑙勫垯锛氬墠绔<E5A2A0>樉绀哄彲鐐瑰嚮鐨勫紩鐢ㄦ爣璁?
- 规则:前端显示可点击的引用标记
---
@@ -290,27 +290,27 @@
### 用户权限
**BR-P001: 角色定义**
- `user` - <EFBFBD>€氱敤鎴?
-<>互浣跨敤鎵€鏈夊姛鑳?
- 鍙楅厤棰濋檺鍒?
- `admin` - 绠$悊鍛?
- `user` - 普通用户
- 可以使用所有功能
- 受配额限制
- `admin` - 管理员
- 所有user权限
- 可以访问运营后台
-<>互鏌ョ湅鎵€鏈夌敤鎴锋暟鎹?
- 可以查看所有用户数据
### 数据隔离
**BR-P002: 用户数据隔离**
- 规则:用户只能访问自己创建的数据
- 验证所有查询必须包含userId过滤
- 瀹炵幇锛?
- 实现:
```sql
WHERE user_id = currentUser.id
```
**BR-P003: 项目权限验证**
- 瑙勫垯锛氫慨鏀?鍒犻櫎椤圭洰鍓嶏紝楠岃瘉鎵€鏈夋潈
- 瀹炵幇锛?
- 规则:修改/删除项目前,验证所有权
- 实现:
```typescript
const project = await prisma.project.findFirst({
where: { id: projectId, userId: currentUser.id }
@@ -318,33 +318,33 @@
if (!project) throw new UnauthorizedError()
```
### 绠$悊鍛樻潈闄?
### 管理员权限
**BR-P004: 用户管理权限**
- 规则只有admin可以查看用户列表
- 瑙勫垯锛氬彧鏈塧dmin鍙<EFBFBD>互淇<EFBFBD>敼鐢ㄦ埛鐘舵€?
- 规则只有admin可以修改用户状态
- 规则admin不能删除用户只能暂停
**BR-P005: 对话查看权限**
- 规则只有admin可以查看用户对话
- 瑙勫垯锛氬繀椤昏<EFBFBD>褰曞<EFBFBD>璁℃棩蹇?
- 瑙勫垯锛氭晱鎰熶俊鎭<EFBFBD>渶瑕佽劚鏁忥紙濡傞偖绠便€佹墜鏈哄彿锛?
- 规则:必须记录审计日志
- 规则:敏感信息需要脱敏(如邮箱、手机号)
---
## 配额限制规则
### 鐭ヨ瘑搴撻厤棰?
### 知识库配额
**BR-Q001: 鐭ヨ瘑搴撴暟閲忛厤棰?*
- 榛樿<EFBFBD>閰嶉<EFBFBD>锛?涓<>煡璇嗗簱
**BR-Q001: 知识库数量配额**
- 默认配额3个知识库
- 记录字段:`users.kb_quota`, `users.kb_used`
- 鏇存柊鏃舵満锛氬垱寤?鍒犻櫎鐭ヨ瘑搴撴椂
- 更新时机:创建/删除知识库时
**BR-Q002: 文档数量配额**
- 榛樿<E6A69B>閰嶉<E996B0>锛?0涓<30>枃妗?鐭ヨ瘑搴?
- 妫€鏌ユ椂鏈猴細涓婁紶鏂囨。鍓?
- 瀹炵幇锛?
- 默认配额50个文档/知识库
- 检查时机:上传文档前
- 实现:
```sql
SELECT COUNT(*) FROM documents
WHERE kb_id = ? AND status != 'failed'
@@ -353,72 +353,72 @@
### 存储配额(预留)
**BR-Q003: 存储空间配额**
- 榛樿<EFBFBD>閰嶉<EFBFBD>锛?GB/鐢ㄦ埛
- 默认配额1GB/用户
- 当前版本:不强制限制
- <EFBFBD>潵锛氬彲浠ユ牴鎹<EFBFBD>疄闄呴渶姹傚惎鐢?
- 未来:可以根据实际需求启用
### API限流
**BR-Q004: API请求频率限制**
- <EFBFBD>€氱敤鎴凤細100娆?鍒嗛挓
- 悊鍛橈細500娆?鍒嗛挓
- 普通用户100次/分钟
- 管理员500次/分钟
- 实现使用Redis + 滑动窗口算法
**BR-Q005: 登录接口限流**
- 瑙勫垯锛?娆?鍒嗛挓
- 瑙勫垯锛欼P鍜岃处鎴峰弻閲嶉檺鍒?
- 规则5次/分钟
- 规则IP和账户双重限制
- 超过后临时封禁15分钟
---
## 业务流程
### 瀹屾暣鐨勫<EFBFBD>璇濇祦绋?
### 完整的对话流程
```
1. 鐢ㄦ埛閫夋嫨鏅鸿兘浣?
鈫?
1. 用户选择智能体
2. 创建对话(可选关联项目)
鈫?
3. 鐢ㄦ埛鍙戦€佹秷鎭<EFBFBD>紙鍙<EFBFBD>€夊紩鐢ㄧ煡璇嗗簱锛?
鈫?
3. 用户发送消息(可选引用知识库)
4. 后端组装上下文:
- 项目背景(如有)
- 智能体System Prompt
- 鍘嗗彶瀵硅瘽锛堟渶杩?0杞<30>
- 鐭ヨ瘑搴撴<EFBFBD>绱㈢粨鏋滐紙濡傛湁锛?
- 历史对话最近10轮
- 知识库检索结果(如有)
- 当前用户问题
鈫?
5. 调用LLM流式输出
鈫?
6. 保存消息到数据库
鈫?
7. 鐢ㄦ埛鍙<EFBFBD>€夛細鍥哄畾娑堟伅鍒伴」鐩<EFBFBD>儗鏅?
7. 用户可选:固定消息到项目背景
```
### 鐭ヨ瘑搴撴枃妗<EFBFBD>鐞嗘祦绋?
### 知识库文档处理流程
```
1. 用户上传文档
鈫?
2. 楠岃瘉锛?
2. 验证:
- 文件格式
- 文件大小
- 数量限制
鈫?
3. 涓婁紶鍒板<EFBFBD>璞″瓨鍌<EFBFBD>OSS锛?
鈫?
4. 鍒涘缓document璁板綍锛坰tatus: uploading锛?
鈫?
5. 寮傛<EFBFBD>鎻愪氦鍒癉ify锛?
3. 上传到对象存储(OSS
4. 创建document记录status: uploading
5. 异步提交到Dify
- 调用Dify上传API
- 获取dify_document_id
鈫?
6. <EFBFBD><EFBFBD>澶勭悊鐘舵€侊紙姣?绉掞級锛?
- processing 鈫?鏇存柊progress
- completed 鈫?鏇存柊status, segments_count, tokens_count
- failed 鈫?鏇存柊status, error_message
鈫?
6. 轮询处理状态每2秒
- processing → 更新progress
- completed → 更新status, segments_count, tokens_count
- failed → 更新status, error_message
7. 更新知识库统计:
- file_count
- total_size_bytes
@@ -426,29 +426,29 @@
---
## 鏁版嵁涓€鑷存€ц<EFBFBD>鍒?
## 数据一致性规则
### 统计字段更新
**BR-D001: 椤圭洰瀵硅瘽鏁扮粺璁?*
**BR-D001: 项目对话数统计**
- 字段:`projects.conversation_count`
- 鏇存柊鏃舵満锛氬垱寤?鍒犻櫎瀵硅瘽鏃?
- 瀹炵幇锛氫娇鐢ㄤ簨鍔′繚璇佷竴鑷存€?
- 更新时机:创建/删除对话时
- 实现:使用事务保证一致性
**BR-D002: 知识库文档数统计**
- 字段:`knowledge_bases.file_count`
- 更新时机文档状态变为completed或删除时
-畻锛氬彧缁熻<E7BC81>status='completed'鐨勬枃妗?
- 计算:只统计status='completed'的文档
**BR-D003: 用户知识库数统计**
- 字段:`users.kb_used`
- 鏇存柊鏃舵満锛氬垱寤?鍒犻櫎鐭ヨ瘑搴撴椂
- 更新时机:创建/删除知识库时
- 验证创建前检查是否超过quota
### 级联删除
**BR-D004: 用户删除级联**
- 瑙勫垯锛氬垹闄ょ敤鎴锋椂锛岀骇鑱斿垹闄ゆ墍鏈夊叧鑱旀暟鎹?
- 规则:删除用户时,级联删除所有关联数据
- 包括projects, conversations, messages, knowledge_bases, documents
- 实现数据库ON DELETE CASCADE
@@ -456,7 +456,7 @@
- 规则:删除项目时,级联删除所有对话和消息
- 实现数据库ON DELETE CASCADE
**BR-D006: 鐭ヨ瘑搴撳垹闄ょ骇鑱?*
**BR-D006: 知识库删除级联**
- 规则:删除知识库时:
1. 级联删除数据库中的documents
2. 调用Dify API删除dataset
@@ -487,7 +487,7 @@
"success": false,
"error": {
"code": "QUOTA_EXCEEDED",
"message": "鐭ヨ瘑搴撴暟閲忓凡杈句笂闄?,
"message": "知识库数量已达上限",
"details": {
"resource": "knowledge_base",
"quota": 3,
@@ -506,11 +506,11 @@
**BR-S001: 密码加密**
- 算法bcrypt
- 鎴愭湰鍥犲瓙锛?2
- 瑙勫垯锛氭案涓嶅瓨鍌ㄦ槑鏂囧瘑鐮?
- 成本因子12
- 规则:永不存储明文密码
**BR-S002: Token安全**
- 瑙勫垯锛歍oken鍖呭惈鐢ㄦ埛ID鍜岃<E98D9C>鑹?
- 规则Token包含用户ID和角色
- 规则Token签名使用JWT_SECRET
- 规则过期Token自动失效
@@ -524,7 +524,7 @@
### XSS防护
**BR-S004: 输入转义**
- 瑙勫垯锛氭墍鏈夌敤鎴疯緭鍏ュ湪鏄剧ず鍓嶈浆涔?
- 规则:所有用户输入在显示前转义
- 规则使用React默认转义
- 规则禁止使用dangerouslySetInnerHTML除非必要
@@ -534,22 +534,22 @@
### 缓存规则
**BR-O001: 鏅鸿兘浣撳垪琛ㄧ紦瀛?*
**BR-O001: 智能体列表缓存**
- 规则智能体列表缓存1小时
- 实现Redis缓存
- 失效修改agents.yaml后需清除缓存
**BR-O002: 用户信息缓存**
- 瑙勫垯锛氱敤鎴蜂俊鎭<E4BF8A>紦瀛?鍒嗛挓
- 规则用户信息缓存5分钟
- Key`user:{userId}`
- 失效:用户信息更新时
### 查询优化
**BR-O003: 分页查询**
- 瑙勫垯锛氬垪琛ㄦ煡璇㈠繀椤诲垎椤?
- 榛樿<EFBFBD>锛?0鏉?椤?
- 鏈€澶э細100鏉?椤?
- 规则:列表查询必须分页
- 默认20条/页
- 最大100条/页
**BR-O004: 索引使用**
- 规则:频繁查询的字段必须建立索引
@@ -563,30 +563,30 @@
### 数据归档
**BR-R001: 对话归档(未来)**
- 瑙勫垯锛氳秴杩?涓<>湀鐨勫<E990A8>璇濊嚜鍔ㄥ綊妗?
- 规则超过6个月的对话自动归档
- 归档表conversations_archive
- 查询:默认不查询归档数据
**BR-R002: 日志清理**
- 规则admin_logs保留3个月
- 鎵ц<EFBFBD>锛氬畾鏃朵换鍔℃瘡鏈堟竻鐞?
- 执行:定时任务每月清理
---
## 业务规则变更流程
1. **鎻愬嚭鍙樻洿**锛氬~鍐欏彉鏇寸敵璇?
2. **褰卞搷璇勪及**锛氳瘎浼板<E6B5BC>绯荤粺鐨勫奖鍝?
1. **提出变更**:填写变更申请
2. **影响评估**:评估对系统的影响
3. **Review**技术团队Review
4. **更新文档**:同步更新本文档
5. **瀹炴柦鍙樻洿**锛氫慨鏀逛唬鐮?
5. **实施变更**:修改代码
6. **测试验证**:测试新规则
7. **上线发布**:发布到生产
---
**鏂囨。缁存姢锛?* 涓氬姟瑙勫垯鍙樻洿闇€鍚屾<E98D9A>鏇存柊
**Review棰戠巼锛?* 姣忎釜閲岀▼纰慠eview涓€娆?
**文档维护:** 业务规则变更需同步更新
**Review频率:** 每个里程碑Review一次
**最后更新:** 2025-10-10
**维护者:** 产品经理 + 技术负责人

View File

@@ -1,106 +1,106 @@
# 銝衤<EFBFBD>甇亥<EFBFBD><EFBFBD><EFBFBD>蝑硋遣霈?
# 下一步行动决策建议
> **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𧋦嚗?* v1.0
> **<EFBFBD>𥕦遣<EFBFBD><EFBFBD>嚗?* 2025-11-06
> **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?* 撣桀𨭌<E6A180><EFBFBD><E585B8><EFBFBD>蝖桃<E89D96><E6A183><EFBFBD><EFBFBD><EFBFBD>銝𡁜𦛚<F0A1819C><EFBFBD>
> **文档版本:** v1.0
> **创建日期:** 2025-11-06
> **文档目的:** 帮助您做出明确的技术和业务决策
---
## <EFBFBD>㴓 敶枏<E695B6><E69E8F><EFBFBD>?
## 🎯 当前状态
### <EFBFBD>?隞𦠜𠯫撌脣<E6928C><E884A3>?
### ✅ 今日已完成
**<EFBFBD><EFBFBD>霈曇恣嚗?00%摰峕<E691B0>嚗㚁<E59A97>**
- <EFBFBD>?8銝芣瓲敹<E793B2><E695B9><EFBFBD><E78DA2>6000+銵䕘<EFBFBD>
- <EFBFBD>?銝匧<E98A9D><E58CA7><EFBFBD>霈曇恣
- <EFBFBD>?8銝芯<E98A9D><E88AAF>⊥芋<E28AA5>𡑒<EFBFBD><F0A19192>?
- <EFBFBD>?4蝘漤<E89D98>蝵脫䲮獢?
- <EFBFBD>?摰峕㟲<E5B395><E39FB2><EFBFBD><EFBFBD>航楝蝥踹㦛
**架构设计100%完成):**
- ✅ 8个核心文档6000+行)
- ✅ 三层架构设计
- ✅ 8个业务模块规划
- ✅ 4种部署方案
- ✅ 完整的技术路线图
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?00%摰峕<E691B0>嚗㚁<E59A97>**
- <EFBFBD>?<3F>𡒊<EFBC86><E988AD><EFBFBD>亦恣<E4BAA6><E681A3><EFBFBD><E59EA2><EFBFBD>雿滚<E99BBF><E6BB9A><EFBFBD>
- <EFBFBD>?<3F>𡒊<EFBC86><EFBFBD>㛖𡠺蝡钅<E89DA1>蝵脫䲮獢?
- <EFBFBD>?<3F>𡒊<EFBC86>lectron<6F>閙㦤<E99699><E3A6A4>䲮獢?
- <EFBFBD>?<3F>𡒊<EFBC86>chema<6D>𠉛氖<F0A0899B><E6B096>𧒄<EFBFBD><EFBFBD><E7AE8F>鞉𧋦
- <EFBFBD>?<3F>𡒊<EFBC86>onorepo<70><6F><EFBFBD><EFBFBD><E996AC><EFBFBD><E689B9>嗆㦤
**核心决策100%完成):**
- ✅ 明确了运营管理端的定位和功能
- ✅ 明确了模块独立部署方案
- ✅ 明确了Electron单机版方案
- ✅ 明确了Schema隔离的时机和成本
- ✅ 明确了Monorepo的必要性和时机
---
## <EFBFBD><EFBFBD> <20><><EFBFBD><E996AC><EFBFBD><EFBFBD><E5969F><EFBFBD><EFBFBD><EFBFBD>桅䔮憸?
## 🤔 需要您决策的关键问题
### 问题1是否现在做Schema隔离⭐⭐⭐⭐⭐
**选项A现在做强烈推荐**
```
<EFBFBD><EFBFBD>嚗?<3F><EFBFBD>3憭拙<E686AD><E68B99>?+ 2憭拇<E686AD>霂𤏪<E99C82>
<EFBFBD><EFBFBD>嚗𡁻<EFBFBD><EFBFBD>齿𧊋<EFBFBD>?-5<>冽㺿<E586BD>?
ROI嚗?00-500%
投入1周3天开发 + 2天测试
收益避免未来3-5周改造
ROI300-500%
隡睃飵嚗?
<EFBFBD>?<3F>唳旿<E594B3><EFBFBD>嚗? 1銝<31><E98A9D>嚗㚁<E59A97><EFBFBD>宏敹?
<EFBFBD>?銝?銝芣芋<E88AA3><EFBFBD><E59F88><EFBFBD>
<EFBFBD>?<3F><EFBFBD><E79285><E288AA><EFBFBD><E7A589>函蔡
<EFBFBD>?<3F><EFBFBD>敺格<E695BA><E6A0BC><EFBFBD><E28AA5>?
优势:
✅ 数据量小(< 1万行迁移快
✅ 为7个模块打基础
✅ 支持模块独立部署
✅ 支持微服务拆分
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>𩤃<EFBFBD> ASL<EFBFBD>撱嗉<EFBFBD>1<EFBFBD>?
劣势:
⚠️ ASL模块延迟1周
```
**选项B延后不推荐**
```
<EFBFBD><EFBFBD>嚗?嚗<><E59A97><EFBFBD><EFBFBD>
<EFBFBD>鞉𧋦嚗𡁏𧊋<EFBFBD>?-5<>冽㺿<E586BD>?
投入0当前
成本未来3-5周改造
隡睃飵嚗?
<EFBFBD>?蝡见朖撘<E69C96>憪𧘹SL撘<4C><E69298>?
优势:
✅ 立即开始ASL开发
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>?<3F><><EFBFBD><EFBFBD>箇敞蝘?
<EFBFBD>?<3F>芣䔉<E88AA3>鞉𧋦5<F0A78BA6>?
<EFBFBD>?<3F>唳旿<E594B3>誩之嚗諹<E59A97>蝘駁<E89D98><E9A781><EFBFBD>
劣势:
❌ 技术债累积
❌ 未来成本5倍
❌ 数据量大,迁移风险高
```
**<EFBFBD>𤑳<EFBFBD>撱箄悅嚗𡁻<EFBFBD>㗇𥋘A嚗<EFBFBD><EFBFBD><EFBFBD>嚗?* 潃鐥<E6BD83>潃鐥<E6BD83>潃?
**我的建议选择A现在做** ⭐⭐⭐⭐⭐
---
### 问题2是否现在转换Monorepo⭐⭐⭐⭐⭐
**<EFBFBD>厰★A嚗𡁶緵<EFBFBD>刻蓮<EFBFBD><EFBFBD>撘箇<EFBFBD><EFBFBD><EFBFBD>嚗?*
**选项A现在转换强烈推荐**
```
<EFBFBD><EFBFBD>嚗?-3憭?
<EFBFBD><EFBFBD>嚗朞<EFBFBD><EFBFBD><EFBFBD>𧊋<EFBFBD>?-11憭?
ROI嚗?00-400%
投入2-3天
收益节省未来7-11
ROI300-400%
隡睃飵嚗?
<EFBFBD>?餈烐<E9A488><EFBFBD><E69298>𤏸<EFBFBD><F0A48FB8>亦恣<E4BAA6><E681A3>垢嚗<E59EA2>𡠺蝡见<E89DA1>蝡荔<E89DA1>
<EFBFBD>?隞<><E99A9E>憭滨鍂<E6BBA8>睃捆<E79D83>?
<EFBFBD>?銝慟lectron<EFBFBD>閙㦤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>?銝箇𡠺蝡衤漣<E8A1A4><E6BCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
优势:
✅ 近期开发运营管理端(独立前端)
✅ 代码复用变容易
✅ 为Electron单机版打基础
✅ 为独立产品打包打基础
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>𩤃<EFBFBD> <20><><EFBFBD>郎銋䭾鰵<E4ADBE><E9B0B5><EFBFBD><EFBFBD><EFBFBD><E99BBF>AI<41><EFBFBD><E587BD><EFBFBD>紡嚗?
劣势:
⚠️ 需要学习新技术但有AI全程指导
```
**选项B延后不推荐**
```
<EFBFBD><EFBFBD>嚗?嚗<><E59A97><EFBFBD><EFBFBD>
<EFBFBD>鞉𧋦嚗𡁏𧊋<EFBFBD>?-11憭拇㺿<E68B87>?
投入0当前
成本未来7-11天改造
隡睃飵嚗?
<EFBFBD>?蝡见朖撘<E69C96>憪𧘹SL撘<4C><E69298>?
优势:
✅ 立即开始ASL开发
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>?隞<><E99A9E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銋剹<E98A8B><E589B9><EFBFBD>瑕遆<E79195><EFBFBD>嚗?
<EFBFBD>?餈鞱𨯫蝞∠<E89D9E>蝡臬<E89DA1><E887AC>烐𧒄敹<F0A79284>◆頧祆揢
<EFBFBD>?<3F>芣䔉<E88AA3>鞉𧋦<E99E89><EFBFBD>
劣势:
❌ 代码重复(类型定义、工具函数等)
❌ 运营管理端开发时必须转换
❌ 未来成本更高
```
**<EFBFBD>𤑳<EFBFBD>撱箄悅嚗𡁻<EFBFBD>㗇𥋘A嚗<EFBFBD><EFBFBD>刻蓮<EFBFBD><EFBFBD>** 潃鐥<E6BD83>潃鐥<E6BD83>潃?
**我的建议选择A现在转换** ⭐⭐⭐⭐⭐
**銵亙<EFBFBD>霂湔<EFBFBD>嚗?*
- <EFBFBD><EFBFBD>餈烐<EFBFBD>嚗?-2銝芣<E98A9D>嚗匧<E59A97><E58CA7>𤏸<EFBFBD><F0A48FB8>亦恣<E4BAA6><E681A3>垢嚗愢onorepo<EFBFBD><EFBFBD>憿餌<EFBFBD>
- <EFBFBD><EFBFBD>6銝芣<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𤏸<EFBFBD><EFBFBD>亦恣<EFBFBD><EFBFBD>垢嚗<EFBFBD>虾隞亙辣<EFBFBD>?
**补充说明:**
- 如果近期1-2个月开发运营管理端Monorepo是必须的
- 如果6个月内不开发运营管理端可以延后
---
@@ -108,141 +108,141 @@ ROI
**选项A立即开发ASL模块**
```
<EFBFBD>園𡢿嚗帋<EFBFBD><EFBFBD>𤾸予撘<EFBFBD>憪?
<EFBFBD><EFBFBD>捆嚗𡁏<EFBFBD>憸䀹<EFBFBD><EFBFBD><EFBFBD>蝑?+ <20><EFBFBD>憭滨<E686AD>
时间:从明天开始
内容:标题摘要初筛 + 全文复筛
隡睃飵嚗?
<EFBFBD>?敹恍<E695B9><E6818D>綫餈𥕢<E9A488><F0A595A2>?
<EFBFBD>?皛∟雲撣<E99BB2><EFBFBD><E3A6A4>瘙?
优势:
✅ 快速推进业务
✅ 满足市场需求
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>?<3F><><EFBFBD><EFBFBD>箇敞蝘?
<EFBFBD>?<3F>芣䔉<E88AA3><EFBFBD><EFBFBD><E4ADBE><EFBFBD>
劣势:
❌ 技术债累积
❌ 未来改造成本高
```
**选项B先做架构改造再开发ASL**
```
<EFBFBD>園𡢿嚗?
- Week 1嚗锭chema<EFBFBD>𠉛氖 + Monorepo嚗?憭抬<E686AD>
- Week 2+嚗鋫SL璅<EFBFBD><EFBFBD><EFBFBD>?
时间:
- Week 1Schema隔离 + Monorepo6天
- Week 2+ASL模块开发
隡睃飵嚗?
<EFBFBD>?<3F><EFBFBD><EFBFBD>苊嚗屸鵭<E5B1B8><E9B5AD>𤣰<EFBFBD>?
<EFBFBD>?隞<><E99A9E>憭滨鍂靘踹⏚
<EFBFBD>?<3F><EFBFBD><E8B8B9>芣䔉1銝芣<E98A9D><E88AA3><EFBFBD><EFBFBD><E4ADBE>?
优势:
✅ 架构清晰,长期收益
✅ 代码复用便利
✅ 避免未来1个月改造成本
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>𩤃<EFBFBD> ASL<EFBFBD>撱嗉<EFBFBD>1<EFBFBD>?
劣势:
⚠️ ASL模块延迟1周
```
**选项C只做Monorepo延后Schema隔离**
```
<EFBFBD>園𡢿嚗?
时间:
- Day 1-3Monorepo转换
- Day 4+嚗鋫SL璅<EFBFBD><EFBFBD><EFBFBD>?
- Day 4+ASL模块开发
- 未来Schema隔离数据量增长前
隡睃飵嚗?
<EFBFBD>?閫<><E996AB><EFBFBD><EFBFBD>蝝扯翰<E689AF><E7BFB0>䔮憸矋<E686B8>餈鞱𨯫蝞∠<E89D9E>蝡舫<E89DA1><EFBFBD><E996AC>
<EFBFBD>?敹恍<E695B9><E6818D>綫餈𥕢<E9A488><F0A595A2>?
优势:
✅ 解决最紧迫的问题(运营管理端需要)
✅ 快速推进业务
<EFBFBD><EFBFBD>飵嚗?
<EFBFBD>𩤃<EFBFBD> Schema<EFBFBD>𠉛氖<EFBFBD>鞉𧋦隡𡁜<EFBFBD><EFBFBD>?
劣势:
⚠️ Schema隔离成本会增加
```
**<EFBFBD>𤑳<EFBFBD>撱箄悅嚗𡁻<EFBFBD>㗇𥋘B嚗<EFBFBD><EFBFBD><EFBFBD>𡁏沲<EFBFBD><EFBFBD>㺿<EFBFBD>𩤃<EFBFBD>** 潃鐥<E6BD83>潃鐥<E6BD83>潃?
**我的建议选择B先做架构改造** ⭐⭐⭐⭐⭐
---
## 📊 三个方案对比
| 蝏游漲 | <20><EFBFBD>A嚗𡁶<E59A97><F0A181B6><EFBFBD><E596B3>?| <20><EFBFBD>B嚗𡁜<E59A97><F0A1819C><EFBFBD>?| <20><EFBFBD>C嚗𡁏<E59A97>銝?|
| 维度 | 方案A立即开发 | 方案B先改造 | 方案C折中 |
|------|---------------|-------------|-----------|
| **ASL上线时间** | 最快2周 | 延迟1周3周 | 延迟3天2.5周) |
| **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?* | 蝝舐妖 | 餈䀹<E9A488> | <20><EFBFBD>餈䀹<E9A488> |
| **<EFBFBD>芣䔉<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?* | 1銝芣<EFBFBD> | 0 | 3-5<EFBFBD>?|
| **<EFBFBD><EFBFBD>韐券<EFBFBD>** | 潃鐥<EFBFBD>潃?| 潃鐥<E6BD83>潃鐥<E6BD83>潃?| 潃鐥<E6BD83>潃鐥<E6BD83> |
| **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>** | 潃鐥<EFBFBD> | 潃鐥<E6BD83>潃鐥<E6BD83>潃?| 潃鐥<E6BD83>潃鐥<E6BD83> |
| **<EFBFBD><EFBFBD>鈭批枂瘥?* | 潃鐥<E6BD83> | 潃鐥<E6BD83>潃鐥<E6BD83>潃?| 潃鐥<E6BD83>潃鐥<E6BD83> |
| **<EFBFBD><EFBFBD>摨?* | 潃鐥<E6BD83>潃?| 潃鐥<E6BD83>潃鐥<E6BD83>潃?| 潃鐥<E6BD83>潃鐥<E6BD83> |
| **技术债** | 累积 | 还清 | 部分还清 |
| **未来改造成本** | 1个月 | 0 | 3-5|
| **代码质量** | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| **长期收益** | ⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| **投入产出比** | ⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| **推荐度** | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
---
## <EFBFBD><20>𤑳<EFBFBD><F0A491B3><EFBFBD><EFBFBD>遣霈?
## 🎯 我的最终建议
### <EFBFBD><EFBFBD>嚗𡁏䲮獢㇂嚗<EFBFBD><EFBFBD><EFBFBD>𡁏沲<EFBFBD><EFBFBD>㺿<EFBFBD>𩤃<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𡢅<EFBFBD>潃鐥<EFBFBD>潃鐥<EFBFBD>潃?
### 推荐方案B先做架构改造再开发⭐⭐⭐⭐⭐
### 核心理由
**1. 投入1周节省未来1个月**
```
<EFBFBD>啣銁<EFBFBD><EFBFBD>嚗?憭?
- Schema<EFBFBD>𠉛氖嚗?憭?
- Monorepo頧祆揢嚗?憭?
现在投入6天
- Schema隔离3天
- Monorepo转换3天
<EFBFBD>芣䔉<EFBFBD><EFBFBD><EFBFBD>嚗?2-36憭?
- Schema<EFBFBD>𠉛氖嚗?5-25憭?
- Monorepo頧祆揢嚗?-11憭?
未来节省22-36
- Schema隔离15-25
- Monorepo转换7-11
投入产出比300-500%
```
**2. <EFBFBD><EFBFBD>鈭擧<EFBFBD>雿單𧒄<EFBFBD>?*
**2. 正处于最佳时机**
```
敶枏<EFBFBD>嚗?
<EFBFBD>?<3F>唳旿<E594B3><EFBFBD>嚗? 1銝<31><E98A9D>嚗?
<EFBFBD>?隞<><E99A9E><EFBFBD><EFBFBD><E8AAAF>
<EFBFBD>?<3F><EFBFBD>2銝芸歇摰峕<E691B0><E79285>嚗㇁IA<49><41>KB嚗?
<EFBFBD>?<3F><EFBFBD><EFBFBD><E69298><EFBFBD>銝芣鰵璅<E79285>嚗㇁SL<53><4C>C<EFBFBD><43>DMIN蝑㚁<EFBFBD>
当前:
✅ 数据量小(< 1万行
✅ 代码量适中
✅ 只有2个已完成模块AIA、PKB
✅ 即将开发多个新模块ASL、DC、ADMIN等)
<EFBFBD>芣䔉嚗?
<EFBFBD>?<3F>唳旿<E594B3>誩之嚗?00銝<30><E98A9D>+嚗?
<EFBFBD>?隞<><E99A9E><EFBFBD>誩之
<EFBFBD>?7-8銝芣芋<EFBFBD><EFBFBD><EFBFBD><EFBFBD>銵?
<EFBFBD>?<3F>齿<EFBFBD>敶勗<E695B6><E58B97><EFBFBD>凒撌典之
未来:
❌ 数据量大100万行+
❌ 代码量大
7-8个模块同时运行
❌ 重构影响范围巨大
```
**3. 銝?銝芣芋<E88AA3><EFBFBD>銝见<E98A9D>摰𧼮抅蝖<E68A85>**
**3. 为7个模块打下坚实基础**
```
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𤑳<EFBFBD><EFBFBD>嚗?
- ASL嚗㇁I<EFBFBD><EFBFBD><EFBFBD><EFBFBD>讃嚗?
即将开发的模块:
- ASLAI智能文献
- DC数据清洗
- SSA智能统计
- ST分析工具
- RVW扩展完整审稿系统
- ADMIN<EFBFBD><EFBFBD><EFBFBD>亦恣<EFBFBD><EFBFBD>垢嚗?
- ADMIN(运营管理端)
这些模块都将受益于:
<EFBFBD>?Schema<EFBFBD>𠉛氖嚗<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>唳旿<EFBFBD><EFBFBD>嚗?
<EFBFBD>?Monorepo<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>其噶<EFBFBD><EFBFBD>
Schema隔离(清晰的数据架构)
Monorepo(代码复用便利)
```
**4. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>箇敞蝘?*
**4. 避免技术债累积**
```
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
- <EFBFBD>園𡢿頞𠹺<EFBFBD><EFBFBD><EFBFBD><EFBFBD>擃?
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
技术债的特点:
- 时间越久,利息越高
- 改造成本成倍增长
- 影响业务创新速度
<EFBFBD>啣銁<EFBFBD><EFBFBD>?= 銝<>甈⊥<E79488><EFBFBD>皜?
頧餉<EFBFBD>銝𢠃猐嚗䔶<EFBFBD>瘜其<EFBFBD><EFBFBD>?
现在改造 = 一次性还清
轻装上阵,专注业务
```
---
## <EFBFBD><EFBFBD> 霂衣<E99C82>摰墧鴌霈<E99C88><EFBFBD>䲮獢㇂嚗?
## 📅 详细实施计划方案B
### Week 1架构改造6天
**Day 1-3Schema隔离**
```
Day 1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
Day 1(准备):
- [ ] 设计Schema结构
* platform_schema<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>eature Flag嚗?
* aia_schema嚗㇁I<EFBFBD><EFBFBD>嚗?
* asl_schema嚗㇁I<EFBFBD><EFBFBD>讃嚗?
* pkb_schema<EFBFBD>䰻霂<EFBFBD><EFBFBD>嚗?
* platform_schema用户、权限、Feature Flag
* aia_schemaAI问答
* asl_schemaAI文献
* pkb_schema(知识库)
* dc_schema数据清洗
* review_schema稿件审查
* admin_schema运营管理
@@ -250,19 +250,19 @@ Day 1准备
- [ ] 编写迁移脚本
- [ ] 准备测试用例
Day 2<EFBFBD><EFBFBD><EFBFBD>𤑳㴓憓<EFBFBD>㺿<EFBFBD>𩤃<EFBFBD>嚗?
- [ ] <EFBFBD>𥕦遣<EFBFBD><EFBFBD><EFBFBD>农chema嚗?0<><30><EFBFBD>嚗?
- [ ] 靽格㺿Prisma Schema嚗?-4撠𤩺𧒄嚗?
Day 2(开发环境改造):
- [ ] 创建所有Schema10分钟
- [ ] 修改Prisma Schema2-4小时
* 为每个Model添加@@schema指定
* 更新外键关联
* <EFBFBD>舐鍂multiSchema<EFBFBD><EFBFBD>?
* 启用multiSchema特性
- [ ] 运行Prisma Migrate
- [ ] 执行数据迁移
- [ ] 运行测试
Day 3<EFBFBD><EFBFBD>鈭抒㴓憓<EFBFBD><EFBFBD>蝘?+ 撉諹<E69289>嚗㚁<E59A97>
- [ ] <EFBFBD><EFBFBD>煺漣<EFBFBD>唳旿摨?
Day 3(生产环境迁移 + 验证):
- [ ] 备份生产数据库
- [ ] 执行Schema迁移
- [ ] 数据迁移
- [ ] 验证测试
@@ -273,17 +273,17 @@ Day 3生产环境迁
**Day 4-6Monorepo转换**
```
Day 4<EFBFBD>郎銋?+ 霈曇恣嚗㚁<E59A97>
- [ ] 摮虫<EFBFBD>pnpm workspaces嚗?-2撠𤩺𧒄嚗?
Day 4(学习 + 设计):
- [ ] 学习pnpm workspaces1-2小时
- [ ] 设计目录结构
* packages/<EFBFBD>𦆮隞<EFBFBD><EFBFBD><EFBFBD>嚗?
* apps/<EFBFBD>𦆮隞<EFBFBD><EFBFBD><EFBFBD>嚗?
* packages/(放什么?)
* apps/(放什么?)
- [ ] 霈曇恣<EFBFBD>曹澈<EFBFBD>?
- [ ] 设计共享包
* shared-types类型定义
* platform-core<EFBFBD><EFBFBD>唳瓲敹<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𧒄銝齿<EFBFBD>嚗?
* platform-core(平台核心,暂时不拆)
Day 5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
Day 5(重构实施):
- [ ] 创建根package.json和pnpm-workspace.yaml
- [ ] 创建packages/shared-types/
- [ ] 移动frontend到apps/frontend/
@@ -292,27 +292,27 @@ Day 5重构实施
- [ ] 配置workspace依赖
- [ ] 更新import路径
Day 6<EFBFBD><EFBFBD>霂閖<EFBFBD><EFBFBD><EFBFBD>嚗?
Day 6(测试验证):
- [ ] 测试前端启动
- [ ] 测试后端启动
- [ ] 测试类型提示
- [ ] 测试构建
- [ ] 撉諹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- [ ] 验证所有功能
- [ ] 优化配置
```
---
### Week 2-4嚗鋫SL璅<EFBFBD><EFBFBD><EFBFBD>?
### Week 2-4ASL模块开发
**Week 2嚗𡁏<EFBFBD>憸䀹<EFBFBD><EFBFBD><EFBFBD>蝑?*
- [ ] <EFBFBD>唳旿摨栞挽霈∴<EFBFBD>asl_schema嚗?
**Week 2:标题摘要初筛**
- [ ] 数据库设计(asl_schema
- [ ] API设计
- [ ] 后端实现PICO配置、AI判断、筛选结果
- [ ] 前端实现(表格工作台、审查弹窗)
**Week 3嚗𡁜<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝑?*
- [ ] PDF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
**Week 3:全文复筛**
- [ ] PDF查看器集成
- [ ] 全文AI判断
- [ ] 前端实现(全文审查界面)
@@ -327,28 +327,28 @@ Day 6测试验证
### 如果选择方案B架构改造
**<EFBFBD>𣂼<EFBFBD><EFBFBD><EFBFBD>嚗?*
1. <EFBFBD>?**<2A>𡁜<EFBFBD><F0A1819C><EFBFBD><EFBFBD>敹?*嚗𡁶㮾靽⊿鵭<E28ABF>煺遠<E785BA><EFBFBD>銝齿<E98A9D><EFBFBD>餈穃⏚
2. <EFBFBD>?**AI<EFBFBD><EFBFBD><EFBFBD>誩𨭌**嚗𡁏<E59A97>隡𡁜<E99AA1>蝔𧢲<E89D94>撖潭<E69296><EFBFBD>甇?
3. <EFBFBD>?**霂衣<E99C82><E8A1A3><EFBFBD><EFBFBD>?*嚗𡁏<E59A97>憭拍<E686AD>隞餃𦛚<E9A483><EFBFBD><E8B3A3><EFBFBD>蝖?
4. <EFBFBD>?**<2A><><EFBFBD><E99BB2>𧒄<EFBFBD>?*嚗𡁏<E59A97><F0A1818F>𤩺<EFBFBD><F0A4A9BA>?憭拙<E686AD><E68B99><EFBFBD><E59786><EFBFBD>?
**成功要素:**
1. **坚定的决心**:相信长期价值,不急功近利
2. **AI全程协助**:我会全程指导每一步
3. **详细的计划**:每天的任务都清晰明确
4. **充足的时间**愿意投入6天做架构改造
**<EFBFBD><EFBFBD>蝏𤘪<EFBFBD>嚗?*
- <EFBFBD>?1<><EFBFBD>嚗峕𥅾<E5B395><EFBFBD><E39787><EFBFBD><E5959C><EFBFBD>憯桃<E686AF><E6A183><EFBFBD>
- <EFBFBD>?銝箸𧊋<E7AEB8>?銝芣芋<E88AA3><EFBFBD>銝见<E98A9D>摰𧼮抅蝖<E68A85>
- <EFBFBD>?<3F><EFBFBD><E8B8B9>芣䔉1銝芣<E98A9D><E88AA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>餈?
**预期结果:**
- ✅ 1周后拥有清晰、健壮的架构
- ✅ 为未来7个模块打下坚实基础
- ✅ 避免未来1个月的技术债偿还
---
### 如果选择方案A立即开发
**<EFBFBD>𣂼<EFBFBD><EFBFBD><EFBFBD>嚗?*
1. <EFBFBD>𩤃<EFBFBD> **銝交聢<E4BAA4><E881A2><EFBFBD><E8AAA8><EFBFBD><EFBFBD>?*嚗𡁜<E59A97>憿颱蝙<E9A2B1>刻”<E588BB><EFBFBD><EFBFBD>嚗Òsl_projects嚗?
**成功要素:**
1. ⚠️ **严格的代码规范**必须使用表名前缀asl_projects
2. ⚠️ **延后但不放弃**数据量增长前必须做Schema隔离
3. ⚠️ **及时转换**开发运营管理端前必须做Monorepo
**閫血<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>∩辣嚗?*
- <EFBFBD>唳旿<EFBFBD><EFBFBD>餈?0銝<30><E98A9D>
**触发架构改造的条件:**
- 数据量超过50万行
- 开始开发运营管理端
- 代码重复严重
@@ -360,116 +360,116 @@ Day 6测试验证
**我会选择方案B先做架构改造**
**<EFBFBD><EFBFBD>眏嚗?*
**理由:**
**1. 技术债的利息太高**
```
技术债本金6天工作量
6-12銝芣<EFBFBD><EFBFBD>𤾸⏚<EFBFBD><EFBFBD>22-36憭?
6-12个月后利息:22-36
<EFBFBD><EFBFBD>嚗?00-500%
利率300-500%
餈蹱糓隞颱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>瘜蓥<EFBFBD><EFBFBD><EFBFBD><EFBFBD>墧𥁒<EFBFBD>?
这是任何投资都无法企及的回报率
```
**2. <EFBFBD>啣銁<EFBFBD><EFBFBD>雿單𧒄<EFBFBD>?*
**2. 现在是最佳时机**
```
数据量:小(迁移快)
代码量:适中(重构容易)
模块数:少(测试简单)
<EFBFBD><EFBFBD><EFBFBD>芋嚗𡁜<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𡁏<EFBFBD><EFBFBD><EFBFBD>嚗?
团队规模:小(沟通成本低)
6銝芣<EFBFBD><EFBFBD>𠬍<EFBFBD>隞乩<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㗇辺隞園<EFBFBD>隡𡁏<EFBFBD><EFBFBD>?
6个月后,以上所有条件都会恶化
```
**3. 銝箸𧊋<EFBFBD>?銝芣芋<E88AA3>𡑒<EFBFBD>韐?*
**3. 为未来7个模块负责**
```
<EFBFBD><EFBFBD><EFBFBD>啣銁銝滚<EFBFBD>嚗?
- ASL<EFBFBD>嚗𡁜虾<EFBFBD><EFBFBD><EFBFBD>摰𡁏<EFBFBD><EFBFBD><EFBFBD>?
- DC<EFBFBD>嚗𡁶誧<EFBFBD>澤SL<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- SSA<EFBFBD>嚗𡁶誧<EFBFBD>澳C<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
如果现在不做:
- ASL模块:可能有一定技术债
- DC模块继承ASL的技术债
- SSA模块继承DC的技术债
- ...
- 7銝芣芋<EFBFBD><EFBFBD><EFBFBD>𩤃<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>箏楊憭?
- 7个模块叠加,技术债巨大
如果现在做:
- ASL<EFBFBD>嚗帋澈<EFBFBD><EFBFBD><EFBFBD>唳沲<EFBFBD>?
- DC<EFBFBD>嚗帋澈<EFBFBD><EFBFBD><EFBFBD>唳沲<EFBFBD>?
- ASL模块:享受清晰架构
- DC模块:享受清晰架构
- ...
- 7个模块都受益
```
**4. 长期vs短期**
```
<EFBFBD><EFBFBD><EFBFBD>萘輕嚗?
- 敹?<3F><EFBFBD>蝥澤SL
- <EFBFBD>𧊋<EFBFBD><EFBFBD><EFBFBD>?銝芣<E98A9D><EFBFBD>
短期思维:
- 快1周上线ASL
- 但未来付出1个月代价
<EFBFBD><EFBFBD><EFBFBD>萘輕嚗?
- <EFBFBD><EFBFBD>1<EFBFBD>冽㺿<EFBFBD>?
长期思维:
- 投入1周改造
- 未来7个模块都受益
- 长期收益巨大
```
---
## <EFBFBD><EFBFBD> 摰墧鴌皜<E9B48C><E79A9C><EFBFBD>䲮獢㇂嚗?
## 📋 实施清单方案B
### 如果您决定采纳方案B
**<EFBFBD><EFBFBD>撣格<EFBFBD>嚗?*
**我会帮您:**
**Schema隔离Day 1-3**
1. <EFBFBD>?霈曇恣摰峕㟲<E5B395><E39FB2>chema蝏𤘪<EFBFBD>
2. <EFBFBD>?蝻硋<E89DBB>Prisma Schema靽格㺿<EFBFBD><EFBFBD>
3. <EFBFBD>?蝻硋<E89DBB><E7A18B>唳旿餈<E697BF><EFBFBD>𡁏𧋦
4. <EFBFBD>?<3F>𣂷<EFBFBD>霂衣<E99C82><E8A1A3><EFBFBD><EFBFBD><EFBFBD>賣郊撉?
5. <EFBFBD>?<3F><EFBFBD><E587BD><EFBFBD><EFBFBD>𣬚<EFBFBD><F0A3AC9A>?
1. ✅ 设计完整的Schema结构
2. ✅ 编写Prisma Schema修改方案
3. ✅ 编写数据迁移脚本
4. ✅ 提供详细的实施步骤
5. ✅ 全程指导和答疑
**Monorepo转换Day 4-6**
1. <EFBFBD>?霈曇恣Monorepo<EFBFBD><EFBFBD>蝏𤘪<EFBFBD>
2. <EFBFBD>?蝻硋<E89DBB>pnpm-workspace.yaml<EFBFBD>滨蔭
3. <EFBFBD>?<3F>𣂷<EFBFBD><F0A382B7>齿<EFBFBD>甇仿炊皜<E7828A><E79A9C>
4. <EFBFBD>?撣桀𨭌<E6A180>𣂼<EFBFBD><F0A382BC>曹澈隞<E6BE88><E99A9E>
5. <EFBFBD>?<3F><EFBFBD><E587BD><EFBFBD><EFBFBD>𣬚<EFBFBD><F0A3AC9A>?
1. ✅ 设计Monorepo目录结构
2. ✅ 编写pnpm-workspace.yaml配置
3. ✅ 提供重构步骤清单
4. ✅ 帮助提取共享代码
5. ✅ 全程指导和答疑
**ASL模块开发Week 2+**
1. <EFBFBD>?<3F>唳旿摨栞挽霈?
2. <EFBFBD>?API霈曇恣
3. <EFBFBD>?<3F><EFBFBD>蝡臬<E89DA1><E887AC><EFBFBD>撖?
1. ✅ 数据库设计
2. API设计
3. ✅ 前后端实现指导
---
## 🎯 决策矩阵
### <EFBFBD><EFBFBD><EFBFBD>㗇𥋘嚗?
### 如何选择?
**<EFBFBD>㗇𥋘<EFBFBD><EFBFBD>B嚗<EFBFBD><EFBFBD><EFBFBD>𨀣<EFBFBD>嚗?*
- <EFBFBD>?<3F><EFBFBD><E6BBA9><EFBFBD><E8B8B5><EFBFBD><E59786>亙熒
- <EFBFBD>?<3F><EFBFBD><E8B8B5><EFBFBD>1<EFBFBD><EFBFBD><E585B8><EFBFBD>?
- <EFBFBD>?<3F>訾縑<E8A8BE><EFBFBD>鈭批枂瘥䈑<E798A5>300-500%嚗?
- <EFBFBD>?<3F>芣䔉<E88AA3><EFBFBD>銝芣芋<E88AA3>𡑒<EFBFBD><EFBFBD><E69298>?
- <EFBFBD>?<3F>芣䔉<E88AA3>㗇芋<E39787>㛖𡠺蝡钅<E89DA1>蝵脤<E89DB5>瘙?
**选择方案B如果您**
- ✅ 重视长期架构健康
- ✅ 愿意投入1周做改造
- ✅ 相信投入产出比(300-500%
- ✅ 未来有多个模块要开发
- ✅ 未来有模块独立部署需求
**<EFBFBD>㗇𥋘<EFBFBD><EFBFBD>C嚗<EFBFBD><EFBFBD><EFBFBD>𨀣<EFBFBD>嚗?*
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E8B8B5>鐝onorepo嚗<6F><E59A97><EFBFBD><EFBFBD>嚗?
**选择方案C如果您**
- ⚠️ 愿意做Monorepo必需
- ⚠️ 但希望尽快看到ASL进展
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E4BA99>芣䔉Schema<6D>𠉛氖<F0A0899B>鞉𧋦隡𡁜<E99AA1><F0A1819C>?
- ⚠️ 接受未来Schema隔离成本会增加
**<EFBFBD>㗇𥋘<EFBFBD><EFBFBD>A嚗<EFBFBD><EFBFBD><EFBFBD>𨀣<EFBFBD>嚗?*
- <EFBFBD>𩤃<EFBFBD> <20>園𡢿<E59C92><F0A1A2BF><EFBFBD>蝝扯翰嚗<E7BFB0><E59A97>嚗𡁏<E59A97>蝖祆<E89D96>eadline嚗?
- <EFBFBD>𩤃<EFBFBD> ASL<EFBFBD><EFBFBD>?<3F><EFBFBD>銝羓瑪
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E4BA99>芣䔉1銝芣<E98A9D><E88AA3><EFBFBD>㺿<EFBFBD><EFBFBD><E4ADBE>?
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E8B8B5><EFBFBD><E8B8B5><EFBFBD><EFBFBD><EFBFBD>?
**选择方案A如果您**
- ⚠️ 时间极其紧迫有硬性deadline
- ⚠️ ASL必须在2周内上线
- ⚠️ 接受未来1个月的改造成本
- ⚠️ 愿意承担技术债
---
## 📊 投入产出比总结
| <EFBFBD><EFBFBD> | 蝡见朖<E8A781><EFBFBD> | <20>芣䔉<E88AA3>鞉𧋦 | ASL銝羓瑪<E7BE93>園𡢿 | <20><EFBFBD><E8B8B5><EFBFBD> | <20><EFBFBD>摨?|
| 方案 | 立即投入 | 未来成本 | ASL上线时间 | 长期收益 | 推荐度 |
|------|---------|---------|------------|---------|-------|
| **<EFBFBD><EFBFBD>A** | 0 | 22-36憭?| 2<EFBFBD>?| 潃鐥<E6BD83> | 潃鐥<E6BD83>潃?|
| **<EFBFBD><EFBFBD>B** | 6憭?| 0 | 3<EFBFBD>?| 潃鐥<E6BD83>潃鐥<E6BD83>潃?| 潃鐥<E6BD83>潃鐥<E6BD83>潃?|
| **<EFBFBD><EFBFBD>C** | 2-3憭?| 15-25憭?| 2.5<EFBFBD>?| 潃鐥<E6BD83>潃鐥<E6BD83> | 潃鐥<E6BD83>潃鐥<E6BD83> |
| **方案A** | 0 | 22-36| 2周 | ⭐⭐ | ⭐⭐⭐ |
| **方案B** | 6| 0 | 3周 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| **方案C** | 2-3| 15-25| 2.5周 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
---
@@ -480,7 +480,7 @@ Day 6测试验证
**明天开始:**
```bash
# Day 1Schema隔离设计
<EFBFBD><EFBFBD>撣格<EFBFBD>嚗?
我会帮您:
1. 设计完整的Schema结构
2. 修改Prisma Schema
3. 编写迁移脚本
@@ -499,7 +499,7 @@ Day 6测试验证
**明天开始:**
```bash
# Day 1Monorepo转换
<EFBFBD><EFBFBD>撣格<EFBFBD>嚗?
我会帮您:
1. 设计Monorepo目录结构
2. 编写配置文件
3. 提供重构步骤
@@ -517,16 +517,16 @@ Day 6测试验证
**明天开始:**
```bash
# Day 1嚗鋫SL璅<EFBFBD><EFBFBD>唳旿摨栞挽霈?
<EFBFBD><EFBFBD>撣格<EFBFBD>嚗?
1. 霈曇恣asl_schema銵函<EFBFBD><EFBFBD>?
# Day 1ASL模块数据库设计
我会帮您:
1. 设计asl_schema表结构
2. 编写Prisma Schema
3. API设计
4. 前端组件设计
您需要:
1. 审阅设计方案
2. 蝖株恕<EFBFBD>𤾸<EFBFBD>憪见<EFBFBD><EFBFBD>?
2. 确认后开始实施
```
---
@@ -535,77 +535,77 @@ Day 6测试验证
### 如果只能记住一件事
**霈唬<EFBFBD>餈嗘葵嚗?*
**记住这个:**
```
<EFBFBD>啣銁<EFBFBD><EFBFBD>1<EFBFBD><EFBFBD>Schema<EFBFBD>𠉛氖 + Monorepo嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>芣䔉1銝芣<EFBFBD>嚗?2-36憭抬<EFBFBD>
现在投入1周Schema隔离 + Monorepo
节省未来1个月22-36天)
这是300-500%的投资回报率
<EFBFBD><EFBFBD>嚗?
而且:
- 现在是成本最低的时机
- <EFBFBD>芣䔉<EFBFBD>鞉𧋦隡𡁏<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- 餈蹱糓銝?銝芣芋<E88AA3><EFBFBD><E59F88><EFBFBD>
- 未来成本会成倍增长
- 这是为7个模块打基础
```
### 如果还在犹豫
**<EFBFBD>株䌊撌?銝芷䔮憸矋<E686B8>**
**问自己3个问题**
1. **我的目标是什么?**
- 敹恍<EFBFBD><EFBFBD>蝥?銝芣芋<E88AA3><EFBFBD><E6A2B9>?<3F><EFBFBD>A
- 快速上线1个模块→ 方案A
- 构建可持续的产品?→ 方案B
2. **我能接受延迟吗?**
- <EFBFBD><EFBFBD>銝滩<EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>典辣餈<EFBFBD><EFBFBD><EFBFBD>?<3F><EFBFBD>A
- 完全不能接受1周延迟→ 方案A
- 可以接受1周换1个月→ 方案B
3. **我的技术债观念?**
- <EFBFBD><EFBFBD><EFBFBD>蝥選<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><EFBFBD>A
- <EFBFBD><EFBFBD>隡睃<EFBFBD>嚗𣬚迅甇交綫餈𨥈<EFBFBD><EFBFBD>?<3F><EFBFBD>B
- 先上线,后还债?→ 方案A
- 架构优先,稳步推进?→ 方案B
---
## 🎉 今日成果回顾
**我们今天完成了:**
- <EFBFBD>?8銝芣瓲敹<E793B2><EFBFBD><E6B2B2><EFBFBD><EFBFBD><E78DA2>6000+銵䕘<EFBFBD>
- <EFBFBD>?摰峕㟲<E5B395><E39FB2><EFBFBD><EFBFBD>航楝蝥踹㦛
- <EFBFBD>?皜<><EFBFBD><E88B8A><EFBFBD>蝑硋遣霈?
- ✅ 8个核心架构文档6000+行)
- ✅ 完整的技术路线图
- ✅ 清晰的决策建议
**这些成果的价值:**
- <EFBFBD>?<3F><><EFBFBD>芣䔉6-12銝芣<E98A9D><E88AA3><EFBFBD><EFBFBD><EFBFBD>?
- <EFBFBD>?<3F><EFBFBD>韏啣摩頝?
- <EFBFBD>?<3F><EFBFBD><E79285><E288AA><EFBFBD><E39A9A><EFBFBD>憭𡁶<E686AD><F0A181B6>函蔡
- ✅ 指导未来6-12个月的开发
- ✅ 避免走弯路
- ✅ 支持模块化销售和多种部署
**<EFBFBD>函緵<EFBFBD>冽𥅾<EFBFBD><EFBFBD>嚗?*
- <EFBFBD>?皜<><EFBFBD><E88B8A><EFBFBD><E6B2B2>挽霈?
- <EFBFBD>?<3F>𡒊<F0A1928A><EFBC86><EFBFBD><EFBFBD>質楝敺?
- <EFBFBD>?<3F><EFBFBD><E7919A><EFBFBD><EFBFBD><EFBFBD>祆𤣰<E7A586>𠰴<EFBFBD><F0A0B0B4>?
**您现在拥有的:**
- ✅ 清晰的架构设计
- ✅ 明确的实施路径
- ✅ 具体的成本收益分析
---
## 🤝 我的承诺
**<EFBFBD>㰘捏<EFBFBD><EFBFBD>㗇𥋘<EFBFBD>芯葵<EFBFBD><EFBFBD>嚗峕<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>誩𨭌嚗?*
**无论您选择哪个方案,我都会全程协助!**
**<EFBFBD><EFBFBD>B嚗?*
- <EFBFBD>?Day 1-3嚗锭chema<EFBFBD>𠉛氖<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD>?Day 4-6嚗鐝onorepo頧祆揢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD>?Week 2+嚗鋫SL璅<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝔见<EFBFBD><EFBFBD>?
**方案B**
- Day 1-3Schema隔离全程指导
- Day 4-6Monorepo转换全程指导
- Week 2+ASL模块开发全程协助
**<EFBFBD><EFBFBD>C嚗?*
- <EFBFBD>?Day 1-3嚗鐝onorepo頧祆揢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD>?Day 4+嚗鋫SL璅<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝔见<EFBFBD><EFBFBD>?
**方案C**
- Day 1-3Monorepo转换全程指导
- Day 4+ASL模块开发全程协助
**<EFBFBD><EFBFBD>A嚗?*
- <EFBFBD>?蝡见朖撘<E69C96>憪𧘹SL璅<E79285><EFBFBD><E69298><EFBFBD>蝔见<E89D94><E8A781>?
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E99EBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7B2B9>?
- <EFBFBD>𩤃<EFBFBD> <20><EFBFBD><E585B8>格𧒄<E6A0BC><EFBFBD><E7AEB8>埝沲<E59F9D><E6B2B2>㺿<EFBFBD>?
**方案A**
- ✅ 立即开始ASL模块开发全程协助
- ⚠️ 提醒技术债风险
- ⚠️ 在关键时机提醒架构改造
---
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?* <20><>
**您的决定?** 😊
请告诉我您的选择,我们立即开始行动!

View File

@@ -1,61 +1,78 @@
# 系统总体设计
> **<EFBFBD>綍璇存槑锛?* 鏈<>洰褰曞寘鍚<E5AF98>璇佸惊AI绉戠爺骞冲彴鐨勭郴缁熸€讳綋璁捐<E79281>鏂囨。
> **鏂囨。灞傜骇锛?* 鎬讳綋灞傞潰锛圥latform Level锛?
> **目录说明:** 本目录包含壹证循AI科研平台的系统总体设计文档
> **文档层级:** 总体层面Platform Level
> **目标读者:** 技术架构师、产品经理、项目负责人
---
## 📚 文档导航
### 馃搶 蹇<>€熷<E282AC>鑸?
**馃帀 閲嶈<E996B2>锛?* [2025-11-06 鏋舵瀯璁捐<E79281>瀹屾垚鎶ュ憡](./%5B閲嶈<E996B2>%5D%202025-11-06%20鏋舵瀯璁捐<E79281>瀹屾垚鎶ュ憡.md) - 浠婃棩閲嶅ぇ閲岀▼纰戯紒
### 📌 快速导航
**🎉 重要:** [2025-11-06 架构设计完成报告](./%5B重要%5D%202025-11-06%20架构设计完成报告.md) - 今日重大里程碑!
**👉 第一次阅读:** [00-阅读指南](./00-阅读指南.md) - 如何阅读这些文档
**馃憠 闇€瑕佸喅绛栵細** [99-涓嬩竴姝ヨ<EFBFBD>鍔ㄥ喅绛栧缓璁甝(./99-涓嬩竴姝ヨ<E5A79D>鍔ㄥ喅绛栧缓璁?md) - 3<EFBFBD>柟妗堝<EFBFBD>姣?
**👉 需要决策:** [99-下一步行动决策建议](./99-下一步行动决策建议.md) - 3个方案对比
---
### 核心文档
| 鏂囨。 | 璇存槑 | 鐘舵€?| 浼樺厛绾?|
| 文档 | 说明 | 状态 | 优先级 |
|------|------|------|-------|
| **[00-闃呰<E99783>鎸囧崡](./00-闃呰<EFBFBD>鎸囧崡.md)** | **濡備綍闃呰<EFBFBD>杩欎簺鏂囨。锛?* | 鉁?瀹屾垚 | 猸愨瓙猸?**棣栨<E6A3A3>蹇呰<E8B987>** |
| [00-浠婃棩鏋舵瀯璁捐<EFBFBD>鎬荤粨](./00-浠婃棩鏋舵瀯璁捐<E79281>鎬荤粨.md) | 2025-11-06宸ヤ綔鎬荤粨 | 鉁?瀹屾垚 | 猸愨瓙 鎺ㄨ崘闃呰<E99783> |
| **[99-涓嬩竴姝ヨ<EFBFBD>鍔ㄥ喅绛栧缓璁甝(./99-涓嬩竴姝ヨ<E5A79D>鍔ㄥ喅绛栧缓璁?md)** | **3<EFBFBD>柟妗堝<EFBFBD>姣?鍐崇瓥寤鸿<E5AFA4>** | 鉁?瀹屾垚 | 猸愨瓙猸?**鍐崇瓥蹇呰<E8B987>** |
| [00-鏍稿績闂<EFBFBD><EFBFBD>](./00-鏍稿績闂<E7B8BE><E99782>瓟.md) | 鍥炵瓟鍏抽敭鏋舵瀯闂<E780AF><E99782> | 鉁?瀹屾垚 | P0 |
| [01-绯荤粺鏋舵瀯鍒嗗眰璁捐<EFBFBD>](./01-绯荤粺鏋舵瀯鍒嗗眰璁捐<E79281>.md) | 涓夊眰鏋舵瀯璁捐<E79281>锛堝钩鍙般€佽兘鍔涖€佷笟鍔★級 | 鉁?瀹屾垚 | P0 |
| [02-鏂囨。浣撶郴閲嶆瀯鏂规<EFBFBD>](./02-鏂囨。浣撶郴閲嶆瀯鏂规<E98F82>.md) | 鏂囨。缁撴瀯閲嶇粍鏂规<E98F82>v2.0 | 鉁?瀹屾垚 | P0 |
| [03-鏁版嵁搴撴灦鏋勮<EFBFBD>鏄嶿(./03-鏁版嵁搴撴灦鏋勮<E98F8B>鏄?md) | PostgreSQL Docker閮ㄧ讲璇存槑 | 鉁?瀹屾垚 | P0 |
| [04-杩愯惀绠悊绔<EFBFBD>灦鏋勮<EFBFBD><EFBFBD>(./04-杩愯惀绠悊绔<E6828A>灦鏋勮<E98F8B>璁?md) | 15<EFBFBD>姛鑳芥ā鍧楄<EFBFBD>璁?| 鉁?瀹屾垚 | P0 |
| [05-Schema闅旂<EFBFBD>鏂规<EFBFBD>涓庢垚鏈<EFBFBD>垎鏋怾(./05-Schema闅旂<E99785>鏂规<E98F82>涓庢垚鏈<E59E9A>垎鏋?md) | 閫昏緫闅旂<EFBFBD>vs鐗╃悊闅旂<EFBFBD> | 鉁?瀹屾垚 | P0 |
| [06-妯″潡鐙<EFBFBD>珛閮ㄧ讲涓庡崟鏈虹増鏂规<EFBFBD>](./06-妯″潡鐙<E6BDA1>珛閮ㄧ讲涓庡崟鏈虹増鏂规<E98F82>.md) | 瀹屾暣鎵撳寘+Electron鏂规<EFBFBD> | 鉁?瀹屾垚 | P0 |
| [07-Monorepo鏋舵瀯璇勪及](./07-Monorepo鏋舵瀯璇勪及.md) | 褰撳墠闃舵<EFBFBD><EFBFBD>惁闇€瑕丮onorepo | 鉁?瀹屾垚 | P0 |
| [08-鏋舵瀯璁捐<EFBFBD>鍏ㄦ櫙鍥綸(./08-鏋舵瀯璁捐<E79281>鍏ㄦ櫙鍥?md) | 涓€鍥剧湅鎳傛暣涓<EFBFBD>郴缁熸灦鏋?| 鉁?瀹屾垚 | 猸?鎺ㄨ崘闃呰<E99783> |
| 09-鎬讳綋闇€姹傛枃妗?PRD).md | 浜у搧鎬讳綋闇€姹?| 鈴?寰呰縼绉?| P1 |
| 10-鎶€鏈<EFBFBD>灦鏋勭櫧鐨<EFBFBD>功.md | 鎶€鏈<E282AC>灦鏋勬€昏<E282AC> | 鈴?寰呰縼绉?| P1 |
| 11-鍟嗕笟妯″紡璁捐<EFBFBD>.md | 鍟嗕笟妯″紡涓庡畾浠?| 鈴?寰呭垱寤?| P2 |
| 12-鐗堟湰瑙勫垝.md | 鐗堟湰婕旇繘璺<E7B998>嚎鍥?| 鈴?寰呭垱寤?| P2 |
| **[00-阅读指南](./00-阅读指南.md)** | **如何阅读这些文档?** | ✅ 完成 | ⭐⭐⭐ **首次必读** |
| [00-今日架构设计总结](./00-今日架构设计总结.md) | 2025-11-06工作总结 | ✅ 完成 | ⭐⭐ 推荐阅读 |
| **[99-下一步行动决策建议](./99-下一步行动决策建议.md)** | **3个方案对比+决策建议** | ✅ 完成 | ⭐⭐⭐ **决策必读** |
| [00-核心问题解答](./00-核心问题解答.md) | 回答关键架构问题 | ✅ 完成 | P0 |
| [01-系统架构分层设计](./01-系统架构分层设计.md) | 三层架构设计(平台、能力、业务) | ✅ 完成 | P0 |
| [02-文档体系重构方案](./02-文档体系重构方案.md) | 文档结构重组方案v2.0 | ✅ 完成 | P0 |
| [03-数据库架构说明](./03-数据库架构说明.md) | PostgreSQL Docker部署说明 | ✅ 完成 | P0 |
| [04-运营管理端架构设计](./04-运营管理端架构设计.md) | 15个功能模块设计 | ✅ 完成 | P0 |
| [05-Schema隔离方案与成本分析](./05-Schema隔离方案与成本分析.md) | 逻辑隔离vs物理隔离 | ✅ 完成 | P0 |
| [06-模块独立部署与单机版方案](./06-模块独立部署与单机版方案.md) | 完整打包+Electron方案 | ✅ 完成 | P0 |
| [07-Monorepo架构评估](./07-Monorepo架构评估.md) | 当前阶段是否需要Monorepo | ✅ 完成 | P0 |
| [08-架构设计全景图](./08-架构设计全景图.md) | 一图看懂整个系统架构 | ✅ 完成 | ⭐ 推荐阅读 |
| 09-总体需求文档(PRD).md | 产品总体需求 | ⏳ 待迁移 | P1 |
| 10-技术架构白皮书.md | 技术架构总览 | ⏳ 待迁移 | P1 |
| 11-商业模式设计.md | 商业模式与定价 | ⏳ 待创建 | P2 |
| 12-版本规划.md | 版本演进路线图 | ⏳ 待创建 | P2 |
---
## 🎯 核心内容概要
### 馃搶 蹇<>€熷紑濮?
**濡傛灉鎮ㄦ槸绗<E6A7B8>竴娆¢槄璇伙紝寮虹儓鎺ㄨ崘锛?*
1. 猸?[浠婃棩鏋舵瀯璁捐<E79281>鎬荤粨](./00-浠婃棩鏋舵瀯璁捐<E79281>鎬荤粨.md) - 蹇<>€熶簡瑙粖澶╃殑鎴愭灉
2. 猸?[鏋舵瀯璁捐<E79281>鍏ㄦ櫙鍥綸(./08-鏋舵瀯璁捐<E79281>鍏ㄦ櫙鍥?md) - 涓€鍥剧湅鎳傛暣涓<EFBFBD>郴缁?
### 📌 快速开始
**如果您是第一次阅读,强烈推荐:**
1. ⭐ [今日架构设计总结](./00-今日架构设计总结.md) - 快速了解今天的成果
2. ⭐ [架构设计全景图](./08-架构设计全景图.md) - 一图看懂整个系统
---
### 1. 系统架构分层
**三层架构 + 8个业务模块**
```
鈹屸攢鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹?鈹? 涓氬姟妯″潡灞傦紙8涓<38>ā鍧楋級 鈹?鈹? AIA | ASL | PKB | DC | SSA | ST | RVW | ADMIN 鈹?鈹斺攢鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹? 鈫?渚濊禆
鈹屸攢鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹?鈹? 閫氱敤鑳藉姏灞傦紙5涓<35>兘鍔涳級 鈹?鈹? LLM缃戝叧(71%) | 鏂囨。澶勭悊(86%) | RAG(43%) 鈹?鈹? ETL(29%) | 鍖诲<E98D96>NLP(14%) 鈹?鈹斺攢鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹? 鈫?渚濊禆
鈹屸攢鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹?鈹? 骞冲彴鍩虹<E98DA9>灞? 鈹?鈹? 鐢ㄦ埛鏉冮檺 | 瀛樺偍 | 閫氱煡 | 鐩戞帶 | 閰嶇疆 鈹?鈹斺攢鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹€鈹?```
┌──────────────────────────────────────────────────┐
│ 业务模块层8个模块
│ AIA | ASL | PKB | DC | SSA | ST | RVW | ADMIN │
└──────────────────────────────────────────────────┘
↓ 依赖
┌──────────────────────────────────────────────────┐
│ 通用能力层5个能力
│ LLM网关(71%) | 文档处理(86%) | RAG(43%) │
│ ETL(29%) | 医学NLP(14%) │
└──────────────────────────────────────────────────┘
↓ 依赖
┌──────────────────────────────────────────────────┐
│ 平台基础层 │
│ 用户权限 | 存储 | 通知 | 监控 | 配置 │
└──────────────────────────────────────────────────┘
```
**璇﹁<EFBFBD>锛?* [01-绯荤粺鏋舵瀯鍒嗗眰璁捐<EFBFBD>.md](./01-绯荤粺鏋舵瀯鍒嗗眰璁捐<EFBFBD>.md)
**详见:** [01-系统架构分层设计.md](./01-系统架构分层设计.md)
---
@@ -65,74 +82,97 @@
```
docs/
├── 00-系统总体设计/ # 总体层面
鈹溾攢鈹€ 01-骞冲彴鍩虹<E98DA9>灞? # 骞冲彴灞傦紙UAM銆佸瓨鍌ㄣ€侀€氱煡绛夛級
鈹溾攢鈹€ 02-閫氱敤鑳藉姏灞? # 閫氱敤鑳藉姏锛圠LM缃戝叧銆佹枃妗<E5A697>鐞嗙瓑锛? 鈹溾攢鈹€ 03-涓氬姟妯″潡/ # 7涓<37>嫭绔嬩笟鍔℃ā鍧? 鈹? 鈹溾攢鈹€ AIA-AI鏅鸿兘闂<E58598>瓟/
鈹? 鈹溾攢鈹€ ASL-AI鏅鸿兘鏂囩尞/
鈹? 鈹溾攢鈹€ PKB-涓<>汉鐭ヨ瘑搴?
鈹? 鈹溾攢鈹€ DC-鏁版嵁娓呮礂鏁寸悊/
鈹? 鈹溾攢鈹€ SSA-鏅鸿兘缁熻<E7BC81>鍒嗘瀽/
鈹? 鈹溾攢鈹€ ST-缁熻<E7BC81>鍒嗘瀽宸ュ叿/
鈹? 鈹斺攢鈹€ RVW-绋夸欢瀹℃煡绯荤粺/
鈹溾攢鈹€ 04-寮€鍙戣<E98D99>鑼?
├── 01-平台基础层/ # 平台层UAM、存储、通知等
├── 02-通用能力层/ # 通用能力LLM网关、文档处理等
├── 03-业务模块/ # 7个独立业务模块
│ ├── AIA-AI智能问答/
│ ├── ASL-AI智能文献/
│ ├── PKB-个人知识库/
│ ├── DC-数据清洗整理/
│ ├── SSA-智能统计分析/
│ ├── ST-统计分析工具/
│ └── RVW-稿件审查系统/
├── 04-开发规范/
├── 05-部署文档/
├── 06-测试文档/
├── 07-运维文档/
└── 08-项目管理/
```
**璇﹁<EFBFBD>锛?* [02-鏂囨。浣撶郴閲嶆瀯鏂规<E98F82>.md](./02-鏂囨。浣撶郴閲嶆瀯鏂规<E98F82>.md)
**详见:** [02-文档体系重构方案.md](./02-文档体系重构方案.md)
---
### 3. 核心决策
#### 閮ㄧ讲妯″紡锛?绉嶏級
- 鉁?浜戠<E6B59C>SaaS鐗堬紙P0锛屽綋鍓嶏級
- 鉁?鐙<>珛浜у搧鍖咃紙P1锛岄樁娈典簩锛? 鏀<>寔妯″潡鍖栭攢鍞?- 鉁?Electron鍗曟満鐗堬紙P2锛岄樁娈典簩锛? 浠爜澶嶇敤85%+
- 鉁?绉佹湁鍖栭儴缃诧紙P1锛岄樁娈典簩锛?- 鉂?~~娣峰悎閮ㄧ讲~~锛堜笉鑰冭檻锛?
#### 妯″潡鍒掑垎锛?涓<>笟鍔℃ā鍧楋級
1. **AIA** - AI鏅鸿兘闂<E58598>瓟 鉁?宸插畬鎴?2. **ASL** - AI鏅鸿兘鏂囩尞 鈴?涓嬩竴姝ラ噸鐐?3. **PKB** - 涓<>汉鐭ヨ瘑搴?鉁?宸插畬鎴?4. **DC** - 鏁版嵁娓呮礂鏁寸悊 鈴?瑙勫垝涓?5. **SSA** - 鏅鸿兘缁熻<E7BC81>鍒嗘瀽 鈴?瑙勫垝涓?6. **ST** - 缁熻<E7BC81>鍒嗘瀽宸ュ叿 鈴?瑙勫垝涓?7. **RVW** - 绋夸欢瀹℃煡绯荤粺 鈿?鐙<>珛绯荤粺
8. **ADMIN** - 杩愯惀绠$悊绔?猸?v2.0鏂板<EFBFBD>
#### 部署模式4种
- ✅ 云端SaaS版P0当前
- ✅ 独立产品包P1阶段二- 支持模块化销售
- ✅ Electron单机版P2阶段二- 代码复用85%+
- ✅ 私有化部署P1阶段二
-~~混合部署~~(不考虑)
#### 鏍稿績鑳藉姏锛?涓<>€氱敤鑳藉姏锛?1. **LLM缃戝叧** 猸?鏈€楂樹紭鍏堢骇锛?涓<>ā鍧椾緷璧栵紙71%澶嶇敤鐜囷級
2. **鏂囨。澶勭悊寮曟搸** 鉁?宸插疄鐜帮紝6涓<36>ā鍧椾緷璧栵紙86%澶嶇敤鐜囷級
3. **RAG寮曟搸** 鉁?宸插疄鐜帮紝3涓<33>ā鍧椾緷璧栵紙43%澶嶇敤鐜囷級
4. **ETL寮曟搸** 鈴?寰呭疄鐜帮紝2涓<32>ā鍧椾緷璧栵紙29%澶嶇敤鐜囷級
5. **鍖诲<EFBFBD>NLP** 鈴?寰呭疄鐜帮紝1涓<31>ā鍧椾緷璧栵紙14%澶嶇敤鐜囷級
#### 模块划分8个业务模块
1. **AIA** - AI智能问答 ✅ 已完成
2. **ASL** - AI智能文献 ⏳ 下一步重点
3. **PKB** - 个人知识库 ✅ 已完成
4. **DC** - 数据清洗整理 ⏳ 规划中
5. **SSA** - 智能统计分析 ⏳ 规划中
6. **ST** - 统计分析工具 ⏳ 规划中
7. **RVW** - 稿件审查系统 ⚡ 独立系统
8. **ADMIN** - 运营管理端 ⭐ v2.0新增
#### 鎶€鏈<EFBFBD>敼閫犲喅绛?1. **Schema闅旂<E99785>** - 寤鸿<E5AFA4>锛氱幇鍦ㄥ仛锛?鍛<>級vs 鏈<>潵鍋氾紙3-5鍛<35>級猸愨瓙猸愨瓙猸?2. **Monorepo杞<6F>崲** - 寤鸿<E5AFA4>锛氱幇鍦ㄥ仛锛?-3澶╋級vs 鏈<>潵鍋氾紙7-11澶╋級猸愨瓙猸愨瓙猸?
**璇﹁<E79287>锛?* [00-鏍稿績闂<E7B8BE><E99782>瓟.md](./00-鏍稿績闂<E7B8BE><E99782>瓟.md)
#### 核心能力5个通用能力
1. **LLM网关** ⭐ 最高优先级5个模块依赖71%复用率)
2. **文档处理引擎** ✅ 已实现6个模块依赖86%复用率)
3. **RAG引擎** ✅ 已实现3个模块依赖43%复用率)
4. **ETL引擎** ⏳ 待实现2个模块依赖29%复用率)
5. **医学NLP** ⏳ 待实现1个模块依赖14%复用率)
#### 技术改造决策
1. **Schema隔离** - 建议现在做1周vs 未来做3-5周⭐⭐⭐⭐⭐
2. **Monorepo转换** - 建议现在做2-3天vs 未来做7-11天⭐⭐⭐⭐⭐
**详见:** [00-核心问题解答.md](./00-核心问题解答.md)
---
## 🚀 架构演进路径
### 闃舵<EFBFBD>涓€锛氭ā鍧楀寲鍗曚綋锛堝綋鍓?- 6涓<36>湀锛?
**鐩<>爣锛?* 浜戠<E6B59C>SaaS鐗圡VP
### 阶段一:模块化单体(当前 - 6个月
**鍏抽敭绾<EFBFBD>緥锛?*
- 鉁?涓ユ牸鎸夋ā鍧楀垝鍒嗕唬鐮?- 鉁?鏁版嵁琛ㄤ娇鐢ㄦā鍧楀墠缂€锛堥€昏緫闅旂<E99785>锛?- 鉁?妯″潡闂翠笉鐩存帴import
**目标:** 云端SaaS版MVP
**关键纪律:**
- ✅ 严格按模块划分代码
- ✅ 数据表使用模块前缀(逻辑隔离)
- ✅ 模块间不直接import
**优先开发:**
- ASL锛圓I鏅鸿兘鏂囩尞锛?- DC锛堟暟鎹<E69A9F>竻娲楋級
- ASLAI智能文献
- DC数据清洗
- LLM网关
- Schema隔离
---
### 闃舵<EFBFBD>浜岋細棣栨<EFBFBD>鎷嗗垎锛?-18涓<38>湀锛?
**瑙﹀彂鏉′欢锛?*
### 阶段二首次拆分6-18个月
**触发条件:**
- 有客户要求私有化部署
- 有客户要求单机版
- 闇€瑕佺嫭绔嬮攢鍞<EFBFBD>煇涓<EFBFBD>ā鍧?
**鏋舵瀯璋冩暣锛?*
- 需要独立销售某个模块
**架构调整:**
- 引入API网关
- 引入K8s可选
- 鎷嗗垎RVW锛堝<EFBFBD>绋跨郴缁燂級涓虹嫭绔嬫湇鍔?
- 拆分RVW审稿系统为独立服务
---
### 闃舵<EFBFBD>涓夛細鍏ㄩ潰寰<EFBFBD>湇鍔★紙18涓<EFBFBD>湀+锛?
**鐩<>爣锛?* 鎵€鏈夋ā鍧楃嫭绔嬮儴缃诧紝鏀<E7B49D>寔鐏垫椿缁勫悎
### 阶段三全面微服务18个月+
**目标:** 所有模块独立部署,支持灵活组合
---
@@ -140,7 +180,7 @@ docs/
### 模块复用分析
| 閫氱敤鑳藉姏 | 浣跨敤棰戠巼 | 澶嶇敤妯″潡鏁?| 浼樺厛绾?|
| 通用能力 | 使用频率 | 复用模块数 | 优先级 |
|---------|---------|-----------|--------|
| LLM网关 | 71% | 5/7 | P0 |
| 文档处理 | 86% | 6/7 | P0 |
@@ -148,70 +188,89 @@ docs/
| ETL引擎 | 29% | 2/7 | P2 |
| 医学NLP | 14% | 1/7 | P2 |
### 妯″潡鐙<EFBFBD>珛鎬у垎鏋?
| 妯″潡 | 鐙<>珛鎬?| 鍟嗕笟浠峰€?| 鍙<>嫭绔嬮攢鍞?|
### 模块独立性分析
| 模块 | 独立性 | 商业价值 | 可独立销售 |
|------|-------|---------|-----------|
| RVW锛堝<EFBFBD>绋匡級 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙猸?| 鉁?鏄?|
| ASL锛堟枃鐚<EFBFBD>級 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙猸?| 鉁?鏄?|
| DC锛堟暟鎹<EFBFBD>竻娲楋級 | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸愨瓙猸?| 鉁?鏄?|
| SSA锛堢粺璁″垎鏋愶級 | 猸愨瓙猸愨瓙 | 猸愨瓙猸愨瓙猸?| 鈿狅笍 涓嶴T鍗忓悓 |
| RVW(审稿) | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ✅ 是 |
| ASL(文献) | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ✅ 是 |
| DC(数据清洗) | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ✅ 是 |
| SSA(统计分析) | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⚠️ 与ST协同 |
| ST分析工具 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⚠️ 与SSA协同 |
| AIA锛圓I闂<EFBFBD>瓟锛?| 猸愨瓙猸?| 猸愨瓙猸愨瓙 | 鈿狅笍 涓嶱KB鍏宠仈 |
| PKB锛堢煡璇嗗簱锛?| 猸愨瓙猸?| 猸愨瓙猸?| 鈿狅笍 涓嶢IA鍏宠仈 |
| AIAAI问答 | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⚠️ 与PKB关联 |
| PKB(知识库) | ⭐⭐⭐ | ⭐⭐⭐ | ⚠️ 与AIA关联 |
---
## 鉁?褰撳墠浠诲姟娓呭崟
## ✅ 当前任务清单
### P0任务已完成
- [x] 系统架构分层设计
- [x] 文档体系重构方案v2.0
- [x] 核心问题解答
- [x] 鏁版嵁搴撴灦鏋勮<EFBFBD>鏄?- [x] 杩愯惀绠悊绔<E6828A>灦鏋勮<E98F8B>璁?- [x] Schema闅旂<E99785>鏂规<E98F82>涓庢垚鏈<E59E9A>垎鏋?- [x] 妯″潡鐙<E6BDA1>珛閮ㄧ讲涓庡崟鏈虹増鏂规<E98F82>
- [x] 数据库架构说明
- [x] 运营管理端架构设计
- [x] Schema隔离方案与成本分析
- [x] 模块独立部署与单机版方案
- [x] Monorepo架构评估
- [x] 鏋舵瀯璁捐<EFBFBD>鍏ㄦ櫙鍥?- [x] 浠婃棩宸ヤ綔鎬荤粨
- [x] 架构设计全景图
- [x] 今日工作总结
### P1任务待决策
**关键决策点:**
- [ ] <EFBFBD>惁鐜板湪鍋歋chema闅旂<EFBFBD>锛燂紙寤鸿<EFBFBD>锛氭槸锛?鍛<>
- [ ] <EFBFBD>惁鐜板湪杞<EFBFBD>崲Monorepo锛燂紙寤鸿<EFBFBD>锛氭槸锛?-3澶╋級
- [ ] 是否现在做Schema隔离建议1周
- [ ] 是否现在转换Monorepo建议2-3天
**如果决定先做架构改造方案B**
- [ ] Week 1锛歋chema闅旂<EFBFBD> + Monorepo<EFBFBD>崲锛?澶╋級
- [ ] Week 2+锛欰SL妯″潡寮€鍙?
- [ ] Week 1Schema隔离 + Monorepo转换6天
- [ ] Week 2+ASL模块开发
**如果决定立即开发方案A**
- [ ] Week 1+锛欰SL妯″潡寮€鍙?- [ ] 鏈<>潵锛氭灦鏋勬敼閫狅紙鎴愭湰鏇撮珮锛?
- [ ] Week 1+ASL模块开发
- [ ] 未来:架构改造(成本更高)
### P2任务后续
- [ ] 迁移总体需求文档和技术架构白皮书
- [ ] 补充ASL模块缺失文档
- [ ] LLM网关详细设计
- [ ] RVW独立系统规划
- [ ] 琛ュ厖杩愯惀绠悊绔<EFBFBD><EFBFBD>缁嗘枃妗?
- [ ] 补充运营管理端详细文档
---
## 📖 相关文档
### 骞冲彴鍩虹<EFBFBD>灞?- [01-骞冲彴鍩虹<E98DA9>灞?](../01-骞冲彴鍩虹<E98DA9>灞?) - 鐢ㄦ埛鏉冮檺銆佸瓨鍌ㄣ€侀€氱煡绛?
### 閫氱敤鑳藉姏灞?- [02-閫氱敤鑳藉姏灞?](../02-閫氱敤鑳藉姏灞?) - LLM缃戝叧銆佹枃妗<E5A697>鐞嗐€丷AG绛?
### 平台基础层
- [01-平台基础层/](../01-平台基础层/) - 用户权限、存储、通知等
### 通用能力层
- [02-通用能力层/](../02-通用能力层/) - LLM网关、文档处理、RAG等
### 业务模块
- [03-涓氬姟妯″潡/](../03-涓氬姟妯″潡/) - 7<EFBFBD>嫭绔嬩笟鍔℃ā鍧?
- [03-业务模块/](../03-业务模块/) - 7个独立业务模块
### 项目管理
- [08-椤圭洰绠$悊/](../08-椤圭洰绠$悊/) - 寮€鍙戣<E98D99>鍒掋€侀噷绋嬬<E7BB8B>銆佹瘡鏃ヨ繘搴?
- [08-项目管理/](../08-项目管理/) - 开发计划、里程碑、每日进度
---
## 🤝 贡献指南
### 如何更新文档
1. **鎬讳綋鏋舵瀯璋冩暣**锛氶渶瑕佸洟闃熻<E99783>璁猴紝鏇存柊鏈<E69F8A>洰褰曟枃妗?2. **妯″潡璁捐<E79281>璋冩暣**锛氭洿鏂板<E98F82>搴旀ā鍧楃洰褰曟枃妗?3. **鏂囨。鏍煎紡**锛氶伒寰狹arkdown瑙勮寖锛屽寘鍚<E5AF98>洰褰曘€佽〃鏍笺€佷唬鐮佸潡
1. **总体架构调整**:需要团队讨论,更新本目录文档
2. **模块设计调整**:更新对应模块目录文档
3. **文档格式**遵循Markdown规范包含目录、表格、代码块
### 文档审核流程
1. 技术架构师审核总体文档
2. 妯″潡璐熻矗浜哄<EFBFBD>鏍告ā鍧楁枃妗?3. 瀹氭湡鍚屾<E98D9A>鏂囨。涓庝唬鐮?
2. 模块负责人审核模块文档
3. 定期同步文档与代码
---
**最后更新:** 2025-11-06

File diff suppressed because it is too large Load Diff