feat(aia): Complete AIA V2.0 with universal streaming capabilities
Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
# Schema隔离架构设计(10个Schema)
|
||||
# Schema<EFBFBD>𠉛氖<EFBFBD>嗆<EFBFBD>霈曇恣嚗?0銝杵chema嚗?
|
||||
|
||||
> **文档版本:** V1.0
|
||||
> **制定日期:** 2025-11-09
|
||||
> **实施策略:** 3个详细迁移 + 7个空Schema预留
|
||||
> **架构原则:** Just-in-time设计,聚焦当前需求,架构预留扩展
|
||||
> **<EFBFBD><EFBFBD>﹝<EFBFBD><EFBFBD>𧋦嚗?* V1.0
|
||||
> **<EFBFBD>嗅<EFBFBD><EFBFBD>交<EFBFBD>嚗?* 2025-11-09
|
||||
> **摰墧鴌蝑𣇉裦嚗?* 3銝芾祕蝏<E7A595><E89D8F>蝘?+ 7銝芰征Schema憸<EFBFBD><EFBFBD>
|
||||
> **<EFBFBD>嗆<EFBFBD><EFBFBD>笔<EFBFBD>嚗?* Just-in-time霈曇恣嚗諹<EFBFBD><EFBFBD>血<EFBFBD><EFBFBD>漤<EFBFBD>瘙<EFBFBD><EFBFBD><EFBFBD>嗆<EFBFBD>憸<EFBFBD><EFBFBD><EFBFBD>拙<EFBFBD>
|
||||
|
||||
---
|
||||
|
||||
@@ -12,10 +12,10 @@
|
||||
1. [<EFBFBD>嗆<EFBFBD>璁<EFBFBD>膩](#<23>嗆<EFBFBD>璁<EFBFBD>膩)
|
||||
2. [10銝杵chema<EFBFBD>冽艶](#10銝泅chema<6D>冽艶)
|
||||
3. [Schema靘肽<EFBFBD><EFBFBD>喟頂](#schema靘肽<E99D98><E882BD>喟頂)
|
||||
4. [详细设计:3个迁移Schema](#详细设计3个迁移schema)
|
||||
5. [预留:7个空Schema](#预留7个空schema)
|
||||
4. [霂衣<EFBFBD>霈曇恣嚗?銝芾<E98A9D>蝘艋chema](#霂衣<E99C82>霈曇恣3銝芾<E98A9D>蝘製chema)
|
||||
5. [憸<EFBFBD><EFBFBD>嚗?銝芰征Schema](#憸<EFBFBD><EFBFBD>7銝芰征schema)
|
||||
6. [餈<EFBFBD>宏蝑𣇉裦](#餈<>宏蝑𣇉裦)
|
||||
7. [现有表分配方案](#现有表分配方案)
|
||||
7. [<EFBFBD>唳<EFBFBD>銵典<EFBFBD><EFBFBD>齿䲮獢È(#<23>唳<EFBFBD>銵典<E98AB5><E585B8>齿䲮獢?
|
||||
8. [憭㚚睸<EFBFBD>諹楊Schema撘閧鍂](#憭㚚睸<E39A9A>諹楊schema撘閧鍂)
|
||||
9. [Prisma<EFBFBD>滨蔭蝑𣇉裦](#prisma<6D>滨蔭蝑𣇉裦)
|
||||
|
||||
@@ -25,101 +25,101 @@
|
||||
|
||||
### 霈曇恣<E69B87>格<EFBFBD>
|
||||
|
||||
1. **模块化隔离** - 每个业务模块独立Schema,支持独立部署
|
||||
2. **数据安全** - Schema级别的权限控制
|
||||
1. **璅∪<EFBFBD><EFBFBD>㚚<EFBFBD>蝳?* - 瘥譍葵銝𡁜𦛚璅∪<E79285><E288AA>祉<EFBFBD>Schema嚗峕𣈲<E5B395><F0A388B2>𡠺蝡钅<E89DA1>蝵?
|
||||
2. **<EFBFBD>唳旿摰匧<EFBFBD>** - Schema蝥批<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鞉綉<EFBFBD>?
|
||||
3. **<EFBFBD>拙<EFBFBD><EFBFBD>批撩** - <20>唳芋<E594B3>堒翰<E5A092><E7BFB0>𦻖<EFBFBD>伐<EFBFBD><E4BC90>芷<EFBFBD><E88AB7>𥕦遣<F0A595A6>訕chema
|
||||
4. **渐进式实施** - 优先迁移核心3个Schema,其余按需扩展
|
||||
4. **皜鞱<EFBFBD>撘誩<EFBFBD><EFBFBD>?* - 隡睃<E99AA1>餈<EFBFBD>宏<EFBFBD>詨<EFBFBD>3銝杵chema嚗<61><E59A97>雿蹱<E99BBF><E8B9B1><EFBFBD><EFBFBD>拙<EFBFBD>
|
||||
|
||||
### 实施策略:3详细+7空 ⭐
|
||||
### 摰墧鴌蝑𣇉裦嚗?霂衣<E99C82>+7蝛?潃?
|
||||
|
||||
```
|
||||
Week 1重点:
|
||||
┌─────────────────────────────────────────────┐
|
||||
│ 3个详细Schema(完整设计+数据迁移) │
|
||||
│ ✅ platform_schema - 1个表(users) │
|
||||
│ ✅ aia_schema - 5个表(对话相关) │
|
||||
│ ✅ pkb_schema - 5个表(知识库相关) │
|
||||
├─────────────────────────────────────────────┤
|
||||
│ 7个空Schema(只创建命名空间) │
|
||||
│ 📋 asl_schema - Week 3再设计表 │
|
||||
│ 📋 common_schema - 需要时再创建表 │
|
||||
│ 📋 dc_schema - 数据清洗模块 │
|
||||
│ 📋 rvw_schema - 审稿系统(含现有表) │
|
||||
│ 📋 admin_schema - 运营管理(含现有表) │
|
||||
│ 📋 ssa_schema - 智能统计分析 │
|
||||
│ 📋 st_schema - 统计分析工具 │
|
||||
└─────────────────────────────────────────────┘
|
||||
Week 1<EFBFBD>滨<EFBFBD>嚗?
|
||||
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><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銝芾祕蝏<E7A595>chema嚗<61><E59A97><EFBFBD>渲挽霈?<3F>唳旿餈<E697BF>宏嚗? <EFBFBD>?
|
||||
<EFBFBD>? <20>?platform_schema - 1銝芾”嚗ósers嚗? <EFBFBD>?
|
||||
<EFBFBD>? <20>?aia_schema - 5銝芾”嚗<EFBFBD>笆霂萘㮾<EFBFBD>喉<EFBFBD> <EFBFBD>?
|
||||
<EFBFBD>? <20>?pkb_schema - 5銝芾”嚗<EFBFBD>䰻霂<EFBFBD><EFBFBD><EFBFBD>詨<EFBFBD>嚗? <20>?
|
||||
<EFBFBD>鎿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
<EFBFBD>? 7銝芰征Schema嚗<61>蘨<EFBFBD>𥕦遣<F0A595A6>賢<EFBFBD>蝛粹𡢿嚗? <EFBFBD>?
|
||||
<EFBFBD>? <20><> asl_schema - Week 3<EFBFBD>滩挽霈∟” <EFBFBD>?
|
||||
<EFBFBD>? <20><> common_schema - <EFBFBD><EFBFBD>閬<EFBFBD>𧒄<EFBFBD>滚<EFBFBD>撱箄” <EFBFBD>?
|
||||
<EFBFBD>? <20><> dc_schema - <EFBFBD>唳旿皜<EFBFBD><EFBFBD>璅∪<EFBFBD> <EFBFBD>?
|
||||
<EFBFBD>? <20><> rvw_schema - 摰∠阮蝟餌<EFBFBD>嚗<EFBFBD>鉄<EFBFBD>唳<EFBFBD>銵剁<EFBFBD> <20>?
|
||||
<EFBFBD>? <20><> admin_schema - 餈鞱𨯫蝞∠<EFBFBD>嚗<EFBFBD>鉄<EFBFBD>唳<EFBFBD>銵剁<EFBFBD> <20>?
|
||||
<EFBFBD>? <20><> ssa_schema - <EFBFBD>箄<EFBFBD>蝏蠘恣<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>?
|
||||
<EFBFBD>? <20><> st_schema - 蝏蠘恣<EFBFBD><EFBFBD><EFBFBD>撌亙<EFBFBD> <EFBFBD>?
|
||||
<EFBFBD>婙<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><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><E8A9A8>笔<EFBFBD>
|
||||
|
||||
- ✅ **聚焦当前** - 只详细设计和迁移现在需要的(Platform/AIA/PKB)
|
||||
- ✅ **架构预留** - 创建7个空Schema,命名空间占位
|
||||
- ✅ **Just-in-time** - ASL等模块在开发前再详细设计(避免过度设计)
|
||||
- ✅ **降低风险** - Week 1工作量从2天降到1.5天
|
||||
- <EFBFBD>?**<2A>𡁶<EFBFBD>敶枏<E695B6>** - <EFBFBD>芾祕蝏<EFBFBD>挽霈∪<EFBFBD>餈<EFBFBD>宏<EFBFBD>啣銁<EFBFBD><EFBFBD>閬<EFBFBD><EFBFBD>嚗㇊latform/AIA/PKB嚗?
|
||||
- <EFBFBD>?**<2A>嗆<EFBFBD>憸<EFBFBD><E686B8>** - <EFBFBD>𥕦遣7銝芰征Schema嚗<EFBFBD>𦶢<EFBFBD>滨征<EFBFBD>游<EFBFBD>雿?
|
||||
- <EFBFBD>?**Just-in-time** - ASL蝑㗇芋<EFBFBD>堒銁撘<EFBFBD><EFBFBD>穃<EFBFBD><EFBFBD>滩祕蝏<EFBFBD>挽霈∴<EFBFBD><EFBFBD>踹<EFBFBD>餈<EFBFBD>漲霈曇恣嚗?
|
||||
- <EFBFBD>?**<2A>滢<EFBFBD>憌𡡞埯** - Week 1撌乩<EFBFBD><EFBFBD>譍<EFBFBD>2憭拚<EFBFBD><EFBFBD>?.5憭?
|
||||
|
||||
---
|
||||
|
||||
## 10銝杵chema<6D>冽艶
|
||||
|
||||
| # | Schema名称 | 中文名称 | 状态 | 用途 | Week 1任务 |
|
||||
| # | Schema<EFBFBD>滨妍 | 銝剜<E98A9D><E5899C>滨妍 | <20>嗆<EFBFBD>?| <20>券<EFBFBD>?| Week 1隞餃𦛚 |
|
||||
|---|-----------|---------|------|------|-----------|
|
||||
| 1 | `platform_schema` | 平台基础层 | ✅ 详细设计 | 用户、权限、认证 | 迁移1个表 |
|
||||
| 2 | `aia_schema` | AI智能问答 | ✅ 详细设计 | 对话、项目管理 | 迁移5个表 |
|
||||
| 3 | `pkb_schema` | 个人知识库 | ✅ 详细设计 | 知识库、文档、批处理 | 迁移5个表 |
|
||||
| 4 | `asl_schema` | AI智能文献 | 📋 空Schema | 文献筛选 | 只创建Schema |
|
||||
| 5 | `common_schema` | 通用能力层 | 📋 空Schema | LLM使用记录、Feature Flags | 只创建Schema |
|
||||
| 1 | `platform_schema` | 撟喳蝱<EFBFBD>箇<EFBFBD>撅?| <20>?霂衣<E99C82>霈曇恣 | <20>冽<EFBFBD><E586BD><EFBFBD><EFBFBD><EFBFBD>僐<EFBFBD><E58390>恕霂?| 餈<>宏1銝芾” |
|
||||
| 2 | `aia_schema` | AI<EFBFBD>箄<EFBFBD><EFBFBD>桃<EFBFBD> | <20>?霂衣<E99C82>霈曇恣 | 撖寡<E69296><E5AFA1><EFBFBD>★<EFBFBD>桃恣<E6A183>?| 餈<>宏5銝芾” |
|
||||
| 3 | `pkb_schema` | 銝芯犖<EFBFBD>亥<EFBFBD>摨?| <20>?霂衣<E99C82>霈曇恣 | <20>亥<EFBFBD>摨瓐<E691A8><E79390><EFBFBD>獢<EFBFBD><E78DA2><EFBFBD>鸌憭<E9B88C><E686AD> | 餈<>宏5銝芾” |
|
||||
| 4 | `asl_schema` | AI<EFBFBD>箄<EFBFBD><EFBFBD><EFBFBD>讃 | <20><> 蝛搴chema | <20><>讃蝑偦<E89D91>?| <20>芸<EFBFBD>撱搴chema |
|
||||
| 5 | `common_schema` | <EFBFBD>𡁶鍂<EFBFBD>賢<EFBFBD>撅?| <20><> 蝛搴chema | LLM雿輻鍂霈啣<EFBFBD><EFBFBD><EFBFBD>eature Flags | <EFBFBD>芸<EFBFBD>撱搴chema |
|
||||
| 6 | `dc_schema` | <20>唳旿皜<E697BF><E79A9C> | <20><> 蝛搴chema | <20>唳旿皜<E697BF><E79A9C>撌亙<E6928C> | <20>芸<EFBFBD>撱搴chema |
|
||||
| 7 | `rvw_schema` | 审稿系统 | 📋 空Schema | 稿件审查 | 只创建Schema+迁移1表 |
|
||||
| 8 | `admin_schema` | 运营管理 | 📋 空Schema | 管理后台、日志 | 只创建Schema+迁移1表 |
|
||||
| 7 | `rvw_schema` | 摰∠阮蝟餌<EFBFBD> | <20><> 蝛搴chema | 蝔蹂辣摰⊥䰻 | <20>芸<EFBFBD>撱搴chema+餈<>宏1銵?|
|
||||
| 8 | `admin_schema` | 餈鞱𨯫蝞∠<EFBFBD> | <20><> 蝛搴chema | 蝞∠<E89D9E><E288A0>𤾸蝱<F0A4BEB8><E89DB1>𠯫敹?| <20>芸<EFBFBD>撱搴chema+餈<>宏1銵?|
|
||||
| 9 | `ssa_schema` | <20>箄<EFBFBD>蝏蠘恣<E8A098><E681A3><EFBFBD> | <20><> 蝛搴chema | <20>箄<EFBFBD><E7AE84>唳旿<E594B3><E697BF><EFBFBD> | <20>芸<EFBFBD>撱搴chema |
|
||||
| 10 | `st_schema` | 统计分析工具 | 📋 空Schema | 统计工具集 | 只创建Schema |
|
||||
| 10 | `st_schema` | 蝏蠘恣<EFBFBD><EFBFBD><EFBFBD>撌亙<EFBFBD> | <20><> 蝛搴chema | 蝏蠘恣撌亙<E6928C><E4BA99>?| <20>芸<EFBFBD>撱搴chema |
|
||||
|
||||
---
|
||||
|
||||
## Schema靘肽<E99D98><E882BD>喟頂
|
||||
|
||||
### 层级结构 ⭐
|
||||
### 撅<EFBFBD>漣蝏𤘪<EFBFBD> 潃?
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ L3: 业务模块层 │
|
||||
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌────────┐│
|
||||
│ │ AIA │ │ PKB │ │ ASL │ │ RVW │ │ ADMIN ││
|
||||
│ └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ └────┬───┘│
|
||||
│ │ │ │ │ │ │
|
||||
│ └───────────┴───────────┴───────────┴───────────┘ │
|
||||
│ ↓ │
|
||||
├─────────────────────────────────────────────────────────────┤
|
||||
│ L2: 通用能力层 │
|
||||
│ ┌──────────────┐ ┌──────────────┐ │
|
||||
│ │ Common │ │ DC/SSA/ST │ │
|
||||
│ │ (通用数据) │ │ (通用工具) │ │
|
||||
│ └──────┬───────┘ └──────────────┘ │
|
||||
│ │ │
|
||||
│ └───────────────────────────────────────────────────│
|
||||
│ ↓ │
|
||||
├─────────────────────────────────────────────────────────────┤
|
||||
│ L1: 平台基础层 │
|
||||
│ ┌──────────────────────────────────────────────────────┐ │
|
||||
│ │ Platform Schema │ │
|
||||
│ │ - 用户管理 (users) │ │
|
||||
│ │ - 权限控制 (RBAC) │ │
|
||||
│ │ - 认证服务 (JWT/Session) │ │
|
||||
│ └──────────────────────────────────────────────────────┘ │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
<EFBFBD>? L3: 銝𡁜𦛚璅∪<EFBFBD>撅? <EFBFBD>?
|
||||
<EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鐥<EFBFBD>
|
||||
<EFBFBD>? <20>? AIA <EFBFBD>?<3F>? PKB <EFBFBD>?<3F>? ASL <EFBFBD>?<3F>? RVW <EFBFBD>?<3F>?ADMIN <EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砂<EFBFBD><E7A082><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砂<EFBFBD><E7A082><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砂<EFBFBD><E7A082><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砂<EFBFBD><E7A082><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砂<EFBFBD><E7A082><EFBFBD><EFBFBD><EFBFBD><EFBFBD>覀<EFBFBD>
|
||||
<EFBFBD>? <EFBFBD>? <EFBFBD>? <EFBFBD>? <EFBFBD>? <EFBFBD>? <EFBFBD>?
|
||||
<EFBFBD>? <EFBFBD>婙<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>氯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>氯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><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>? <EFBFBD>? <EFBFBD>?
|
||||
<EFBFBD>鎿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
<EFBFBD>? L2: <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>? <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>? Common <EFBFBD>? <20>? DC/SSA/ST <EFBFBD>? <EFBFBD>?
|
||||
<EFBFBD>? <20>? (<28>𡁶鍂<F0A181B6>唳旿) <20>? <20>? (<28>𡁶鍂撌亙<E6928C>) <EFBFBD>? <EFBFBD>?
|
||||
<EFBFBD>? <20>婙<EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砂<EFBFBD><E7A082><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>婙<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
<EFBFBD>? <EFBFBD>? <EFBFBD>?
|
||||
<EFBFBD>鎿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
<EFBFBD>? L1: 撟喳蝱<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><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><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>? <20>? Platform Schema <EFBFBD>? <20>?
|
||||
<EFBFBD>? <20>? - <20>冽<EFBFBD>蝞∠<E89D9E> (users) <EFBFBD>? <20>?
|
||||
<EFBFBD>? <20>? - <20><><EFBFBD><EFBFBD>批<EFBFBD> (RBAC) <EFBFBD>? <20>?
|
||||
<EFBFBD>? <20>? - 霈方<E99C88><E696B9>滚𦛚 (JWT/Session) <EFBFBD>? <20>?
|
||||
<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>? <20>?
|
||||
<EFBFBD>婙<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
```
|
||||
|
||||
### 撘閧鍂<E996A7>喟頂霂湔<E99C82>
|
||||
|
||||
**<EFBFBD>詨<EFBFBD>閫<EFBFBD><EFBFBD>嚗𡁜<EFBFBD><EFBFBD>睲<EFBFBD>韏吔<EFBFBD><EFBFBD>睲<EFBFBD>撘閧鍂**
|
||||
|
||||
1. **所有业务模块 → platform_schema.users**
|
||||
- 所有表的 `user_id` 字段引用 `platform_schema.users(id)`
|
||||
- 跨Schema外键(PostgreSQL支持)
|
||||
1. **<EFBFBD><EFBFBD><EFBFBD>劐<EFBFBD><EFBFBD>⊥芋<EFBFBD>?<3F>?platform_schema.users**
|
||||
- <EFBFBD><EFBFBD><EFBFBD>㕑”<EFBFBD>?`user_id` 摮埈挾撘閧鍂 `platform_schema.users(id)`
|
||||
- 頝沒chema憭㚚睸嚗㇊ostgreSQL<EFBFBD>舀<EFBFBD>嚗?
|
||||
|
||||
2. **业务模块内部表之间**
|
||||
- 同Schema内的表可以相互引用(如aia_schema.conversations → aia_schema.projects)
|
||||
2. **銝𡁜𦛚璅∪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>銵其<EFBFBD><EFBFBD>?*
|
||||
- <EFBFBD>玺chema<EFBFBD><EFBFBD><EFBFBD>銵典虾隞亦㮾鈭鍦<EFBFBD><EFBFBD>剁<EFBFBD>憒<EFBFBD>ia_schema.conversations <EFBFBD>?aia_schema.projects嚗?
|
||||
|
||||
3. **蝳<>迫<EFBFBD>滚<EFBFBD>靘肽<E99D98>**
|
||||
- platform_schema **銝滩<E98A9D>**撘閧鍂銝𡁜𦛚璅∪<E79285>Schema
|
||||
@@ -127,35 +127,35 @@ Week 1重点:
|
||||
|
||||
---
|
||||
|
||||
## 详细设计:3个迁移Schema
|
||||
## 霂衣<EFBFBD>霈曇恣嚗?銝芾<E98A9D>蝘艋chema
|
||||
|
||||
### 1️⃣ platform_schema(平台基础层)⭐
|
||||
### 1儭謿<EFBFBD> platform_schema嚗<EFBFBD>像<EFBFBD>啣抅蝖<EFBFBD>撅<EFBFBD><EFBFBD>潃?
|
||||
|
||||
**用途:** 用户管理、权限控制、认证服务
|
||||
**<EFBFBD>券<EFBFBD>䈑<EFBFBD>** <20>冽<EFBFBD>蝞∠<E89D9E><E288A0><EFBFBD><EFBFBD><EFBFBD>鞉綉<E99E89>嗚<EFBFBD><E5979A>恕霂<E68195><E99C82><EFBFBD>?
|
||||
|
||||
**迁移表:** 1个
|
||||
- `users` - 从 `public.users` 迁移
|
||||
**餈<EFBFBD>宏銵剁<EFBFBD>** 1銝?
|
||||
- `users` - 隞?`public.users` 餈<EFBFBD>宏
|
||||
|
||||
#### 銵函<E98AB5><E587BD><EFBFBD><EFBFBD>users
|
||||
|
||||
| 字段名 | 类型 | 说明 | 索引 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 蝝W<E89D9D> |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | PK |
|
||||
| `email` | VARCHAR(255) | 邮箱(唯一) | UNIQUE, INDEX |
|
||||
| `email` | VARCHAR(255) | <EFBFBD>桃拳嚗<EFBFBD>𣈲銝<EFBFBD>嚗?| UNIQUE, INDEX |
|
||||
| `password` | VARCHAR(255) | 撖<><E69296><EFBFBD><EFBFBD><EFBFBD> | - |
|
||||
| `name` | VARCHAR(255) | 用户名 | - |
|
||||
| `name` | VARCHAR(255) | <EFBFBD>冽<EFBFBD><EFBFBD>?| - |
|
||||
| `avatar_url` | VARCHAR(500) | 憭游<E686AD>URL | - |
|
||||
| `role` | VARCHAR(50) | 角色(user/admin) | INDEX |
|
||||
| `status` | VARCHAR(50) | 状态(active/inactive) | INDEX |
|
||||
| `kb_quota` | INT | 知识库配额 | - |
|
||||
| `kb_used` | INT | 已使用配额 | - |
|
||||
| `role` | VARCHAR(50) | 閫坿𠧧嚗óser/admin嚗?| INDEX |
|
||||
| `status` | VARCHAR(50) | <EFBFBD>嗆<EFBFBD><EFBFBD><EFBFBD>active/inactive嚗?| INDEX |
|
||||
| `kb_quota` | INT | <EFBFBD>亥<EFBFBD>摨㯄<EFBFBD>憸?| - |
|
||||
| `kb_used` | INT | 撌脖蝙<EFBFBD>券<EFBFBD>憸?| - |
|
||||
| `trial_ends_at` | TIMESTAMP | 霂閧鍂蝏𤘪<E89D8F><F0A498AA>園𡢿 | - |
|
||||
| `is_trial` | BOOLEAN | <20>臬炏霂閧鍂 | - |
|
||||
| `last_login_at` | TIMESTAMP | 最后登录时间 | - |
|
||||
| `last_login_at` | TIMESTAMP | <EFBFBD><EFBFBD><EFBFBD>𡒊蒈敶閙𧒄<EFBFBD>?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | INDEX |
|
||||
| `updated_at` | TIMESTAMP | <20>湔鰵<E6B994>園𡢿 | - |
|
||||
|
||||
**SQL DDL:**
|
||||
**SQL DDL嚗?*
|
||||
```sql
|
||||
CREATE SCHEMA IF NOT EXISTS platform_schema;
|
||||
|
||||
@@ -189,66 +189,66 @@ CREATE INDEX idx_users_created_at ON platform_schema.users(created_at);
|
||||
|
||||
**<EFBFBD>券<EFBFBD>䈑<EFBFBD>** AI撖寡<E69296><E5AFA1><EFBFBD>★<EFBFBD>桃恣<E6A183><E681A3><EFBFBD><EFBFBD><EFBFBD>𡁶鍂撖寡<E69296>
|
||||
|
||||
**迁移表:** 5个
|
||||
- `projects` - 从 `public.projects` 迁移
|
||||
- `conversations` - 从 `public.conversations` 迁移
|
||||
- `messages` - 从 `public.messages` 迁移
|
||||
- `general_conversations` - 从 `public.general_conversations` 迁移
|
||||
- `general_messages` - 从 `public.general_messages` 迁移
|
||||
**餈<EFBFBD>宏銵剁<EFBFBD>** 5銝?
|
||||
- `projects` - 隞?`public.projects` 餈<EFBFBD>宏
|
||||
- `conversations` - 隞?`public.conversations` 餈<EFBFBD>宏
|
||||
- `messages` - 隞?`public.messages` 餈<EFBFBD>宏
|
||||
- `general_conversations` - 隞?`public.general_conversations` 餈<EFBFBD>宏
|
||||
- `general_messages` - 隞?`public.general_messages` 餈<EFBFBD>宏
|
||||
|
||||
#### 表结构概览
|
||||
#### 銵函<EFBFBD><EFBFBD><EFBFBD><EFBFBD>閫?
|
||||
|
||||
**1. projects(项目表)**
|
||||
**1. projects嚗<EFBFBD>★<EFBFBD>株”嚗?*
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `name` | VARCHAR(255) | 憿寧𤌍<E5AFA7>滨妍 | - |
|
||||
| `background` | TEXT | <20>𠉛弦<F0A0899B>峕艶 | - |
|
||||
| `research_type` | VARCHAR(50) | <20>𠉛弦蝐餃<E89D90> | - |
|
||||
| `conversation_count` | INT | 对话数 | - |
|
||||
| `conversation_count` | INT | 撖寡<EFBFBD><EFBFBD>?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
| `updated_at` | TIMESTAMP | <20>湔鰵<E6B994>園𡢿 | - |
|
||||
| `deleted_at` | TIMESTAMP | 删除时间(软删除) | - |
|
||||
| `deleted_at` | TIMESTAMP | <EFBFBD>𣳇膄<EFBFBD>園𡢿嚗<EFBFBD>蔓<EFBFBD>𣳇膄嚗?| - |
|
||||
|
||||
**2. conversations(对话表)**
|
||||
**2. conversations嚗<EFBFBD>笆霂肽”嚗?*
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `project_id` | UUID | 项目ID | → `aia_schema.projects(id)` |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `project_id` | UUID | 憿寧𤌍ID | <EFBFBD>?`aia_schema.projects(id)` |
|
||||
| `agent_id` | VARCHAR(100) | <20>箄<EFBFBD>雿𨧻D | - |
|
||||
| `title` | VARCHAR(255) | 撖寡<E69296><E5AFA1><EFBFBD><EFBFBD> | - |
|
||||
| `model_name` | VARCHAR(50) | 璅∪<E79285><E288AA>滨妍 | - |
|
||||
| `message_count` | INT | 消息数 | - |
|
||||
| `total_tokens` | INT | 总Token数 | - |
|
||||
| `metadata` | JSONB | 元数据 | - |
|
||||
| `message_count` | INT | 瘨<EFBFBD><EFBFBD><EFBFBD>?| - |
|
||||
| `total_tokens` | INT | <EFBFBD>蓉oken<EFBFBD>?| - |
|
||||
| `metadata` | JSONB | <EFBFBD><EFBFBD>㺭<EFBFBD>?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
| `updated_at` | TIMESTAMP | <20>湔鰵<E6B994>園𡢿 | - |
|
||||
| `deleted_at` | TIMESTAMP | <20>𣳇膄<F0A3B387>園𡢿 | - |
|
||||
|
||||
**3. messages(消息表)**
|
||||
**3. messages嚗<EFBFBD><EFBFBD><EFBFBD>航”嚗?*
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `conversation_id` | UUID | 对话ID | → `aia_schema.conversations(id)` |
|
||||
| `role` | VARCHAR(20) | 角色(user/assistant) | - |
|
||||
| `conversation_id` | UUID | 撖寡<EFBFBD>ID | <EFBFBD>?`aia_schema.conversations(id)` |
|
||||
| `role` | VARCHAR(20) | 閫坿𠧧嚗óser/assistant嚗?| - |
|
||||
| `content` | TEXT | 瘨<><E798A8><EFBFBD><EFBFBD>捆 | - |
|
||||
| `model` | VARCHAR(50) | 使用的模型 | - |
|
||||
| `metadata` | JSONB | 元数据 | - |
|
||||
| `tokens` | INT | Token数 | - |
|
||||
| `model` | VARCHAR(50) | 雿輻鍂<EFBFBD><EFBFBD>芋<EFBFBD>?| - |
|
||||
| `metadata` | JSONB | <EFBFBD><EFBFBD>㺭<EFBFBD>?| - |
|
||||
| `tokens` | INT | Token<EFBFBD>?| - |
|
||||
| `is_pinned` | BOOLEAN | <20>臬炏蝵桅▲ | - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
|
||||
**4. general_conversations嚗<73><E59A97>𡁶鍂撖寡<E69296>銵剁<E98AB5>**
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `title` | VARCHAR(255) | 撖寡<E69296><E5AFA1><EFBFBD><EFBFBD> | - |
|
||||
| `model_name` | VARCHAR(50) | 璅∪<E79285><E288AA>滨妍 | - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
@@ -257,18 +257,18 @@ CREATE INDEX idx_users_created_at ON platform_schema.users(created_at);
|
||||
|
||||
**5. general_messages嚗<73><E59A97>𡁶鍂瘨<E98D82><E798A8>銵剁<E98AB5>**
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `conversation_id` | UUID | 对话ID | → `aia_schema.general_conversations(id)` |
|
||||
| `conversation_id` | UUID | 撖寡<EFBFBD>ID | <EFBFBD>?`aia_schema.general_conversations(id)` |
|
||||
| `role` | VARCHAR(20) | 閫坿𠧧 | - |
|
||||
| `content` | TEXT | 瘨<><E798A8><EFBFBD><EFBFBD>捆 | - |
|
||||
| `model` | VARCHAR(50) | 使用的模型 | - |
|
||||
| `metadata` | JSONB | 元数据 | - |
|
||||
| `tokens` | INT | Token数 | - |
|
||||
| `model` | VARCHAR(50) | 雿輻鍂<EFBFBD><EFBFBD>芋<EFBFBD>?| - |
|
||||
| `metadata` | JSONB | <EFBFBD><EFBFBD>㺭<EFBFBD>?| - |
|
||||
| `tokens` | INT | Token<EFBFBD>?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
|
||||
**SQL DDL:**
|
||||
**SQL DDL嚗?*
|
||||
```sql
|
||||
CREATE SCHEMA IF NOT EXISTS aia_schema;
|
||||
|
||||
@@ -364,108 +364,108 @@ CREATE INDEX idx_aia_general_messages_conversation_id ON aia_schema.general_mess
|
||||
|
||||
**<EFBFBD>券<EFBFBD>䈑<EFBFBD>** <20>亥<EFBFBD>摨梶恣<E6A2B6><E681A3><EFBFBD><EFBFBD><EFBFBD>獢<EFBFBD>恣<EFBFBD><E681A3><EFBFBD><EFBFBD>鸌憭<E9B88C><E686AD>隞餃𦛚
|
||||
|
||||
**迁移表:** 5个
|
||||
- `knowledge_bases` - 从 `public.knowledge_bases` 迁移
|
||||
- `documents` - 从 `public.documents` 迁移
|
||||
- `batch_tasks` - 从 `public.batch_tasks` 迁移
|
||||
- `batch_results` - 从 `public.batch_results` 迁移
|
||||
- `task_templates` - 从 `public.task_templates` 迁移
|
||||
**餈<EFBFBD>宏銵剁<EFBFBD>** 5銝?
|
||||
- `knowledge_bases` - 隞?`public.knowledge_bases` 餈<EFBFBD>宏
|
||||
- `documents` - 隞?`public.documents` 餈<EFBFBD>宏
|
||||
- `batch_tasks` - 隞?`public.batch_tasks` 餈<EFBFBD>宏
|
||||
- `batch_results` - 隞?`public.batch_results` 餈<EFBFBD>宏
|
||||
- `task_templates` - 隞?`public.task_templates` 餈<EFBFBD>宏
|
||||
|
||||
#### 表结构概览
|
||||
#### 銵函<EFBFBD><EFBFBD><EFBFBD><EFBFBD>閫?
|
||||
|
||||
**1. knowledge_bases嚗<73>䰻霂<E4B0BB><E99C82>銵剁<E98AB5>**
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `name` | VARCHAR(255) | 知识库名称 | - |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `name` | VARCHAR(255) | <EFBFBD>亥<EFBFBD>摨枏<EFBFBD>蝘?| - |
|
||||
| `description` | TEXT | <20>讛膩 | - |
|
||||
| `dify_dataset_id` | VARCHAR(255) | Dify<66>亥<EFBFBD>摨𨧻D | - |
|
||||
| `file_count` | INT | 文件数 | - |
|
||||
| `total_size_bytes` | BIGINT | 总大小(字节) | - |
|
||||
| `file_count` | INT | <EFBFBD><EFBFBD>辣<EFBFBD>?| - |
|
||||
| `total_size_bytes` | BIGINT | <EFBFBD>餃之撠𧶏<EFBFBD>摮𡑒<EFBFBD>嚗?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
| `updated_at` | TIMESTAMP | <20>湔鰵<E6B994>園𡢿 | - |
|
||||
|
||||
**2. documents(文档表)** ⭐ 包含Phase 2全文阅读字段
|
||||
**2. documents嚗<EFBFBD><EFBFBD>獢<EFBFBD>”嚗?* 潃?<3F><>鉄Phase 2<>冽<EFBFBD><E586BD><EFBFBD>粉摮埈挾
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `kb_id` | UUID | 知识库ID | → `pkb_schema.knowledge_bases(id)` |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `filename` | VARCHAR(255) | 文件名 | - |
|
||||
| `kb_id` | UUID | <EFBFBD>亥<EFBFBD>摨𨧻D | <EFBFBD>?`pkb_schema.knowledge_bases(id)` |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `filename` | VARCHAR(255) | <EFBFBD><EFBFBD>辣<EFBFBD>?| - |
|
||||
| `file_type` | VARCHAR(50) | <20><>辣蝐餃<E89D90> | - |
|
||||
| `file_size_bytes` | BIGINT | <20><>辣憭批<E686AD> | - |
|
||||
| `file_url` | TEXT | <20><>辣URL | - |
|
||||
| `dify_document_id` | VARCHAR(255) | Dify<66><79>﹝ID | - |
|
||||
| `status` | VARCHAR(50) | 状态 | - |
|
||||
| `progress` | INT | 进度(0-100) | - |
|
||||
| `status` | VARCHAR(50) | <EFBFBD>嗆<EFBFBD>?| - |
|
||||
| `progress` | INT | 餈𥕦漲嚗?-100嚗?| - |
|
||||
| `error_message` | TEXT | <20>躰秤靽⊥<E99DBD> | - |
|
||||
| `segments_count` | INT | 分段数 | - |
|
||||
| `tokens_count` | INT | Token数 | - |
|
||||
| **Phase 2字段:** | | | |
|
||||
| `extraction_method` | VARCHAR(50) | 提取方法(pymupdf/nougat/mammoth/direct) | - |
|
||||
| `extraction_quality` | FLOAT | 提取质量(0-1) | - |
|
||||
| `char_count` | INT | 字符数 | - |
|
||||
| `language` | VARCHAR(20) | 语言(chinese/english) | - |
|
||||
| `extracted_text` | TEXT | 提取的文本 | - |
|
||||
| `segments_count` | INT | <EFBFBD><EFBFBD>挾<EFBFBD>?| - |
|
||||
| `tokens_count` | INT | Token<EFBFBD>?| - |
|
||||
| **Phase 2摮埈挾嚗?* | | | |
|
||||
| `extraction_method` | VARCHAR(50) | <EFBFBD>𣂼<EFBFBD><EFBFBD>寞<EFBFBD>嚗īymupdf/nougat/mammoth/direct嚗?| - |
|
||||
| `extraction_quality` | FLOAT | <EFBFBD>𣂼<EFBFBD>韐券<EFBFBD>嚗?-1嚗?| - |
|
||||
| `char_count` | INT | 摮㛖泵<EFBFBD>?| - |
|
||||
| `language` | VARCHAR(20) | 霂剛<EFBFBD>嚗Ếhinese/english嚗?| - |
|
||||
| `extracted_text` | TEXT | <EFBFBD>𣂼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?| - |
|
||||
| `uploaded_at` | TIMESTAMP | 銝𠹺<E98A9D><F0A0B9BA>園𡢿 | - |
|
||||
| `processed_at` | TIMESTAMP | 憭<><E686AD>摰峕<E691B0><E5B395>園𡢿 | - |
|
||||
|
||||
**3. batch_tasks嚗<73>鸌憭<E9B88C><E686AD>隞餃𦛚銵剁<E98AB5>**
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `kb_id` | UUID | 知识库ID | → `pkb_schema.knowledge_bases(id)` |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `kb_id` | UUID | <EFBFBD>亥<EFBFBD>摨𨧻D | <EFBFBD>?`pkb_schema.knowledge_bases(id)` |
|
||||
| `name` | VARCHAR(255) | 隞餃𦛚<E9A483>滨妍 | - |
|
||||
| `template_type` | VARCHAR(50) | 璅⊥踎蝐餃<E89D90> | - |
|
||||
| `template_id` | VARCHAR(100) | 璅⊥踎ID | - |
|
||||
| `prompt` | TEXT | 提示词 | - |
|
||||
| `status` | VARCHAR(50) | 状态 | - |
|
||||
| `prompt` | TEXT | <EFBFBD>鞟內霂?| - |
|
||||
| `status` | VARCHAR(50) | <EFBFBD>嗆<EFBFBD>?| - |
|
||||
| `total_documents` | INT | <20>餅<EFBFBD>獢<EFBFBD>㺭 | - |
|
||||
| `completed_count` | INT | 完成数 | - |
|
||||
| `failed_count` | INT | 失败数 | - |
|
||||
| `completed_count` | INT | 摰峕<EFBFBD><EFBFBD>?| - |
|
||||
| `failed_count` | INT | 憭梯揖<EFBFBD>?| - |
|
||||
| `model_type` | VARCHAR(50) | 璅∪<E79285>蝐餃<E89D90> | - |
|
||||
| `concurrency` | INT | 并发数 | - |
|
||||
| `started_at` | TIMESTAMP | 开始时间 | - |
|
||||
| `concurrency` | INT | 撟嗅<EFBFBD><EFBFBD>?| - |
|
||||
| `started_at` | TIMESTAMP | 撘<EFBFBD>憪𧢲𧒄<EFBFBD>?| - |
|
||||
| `completed_at` | TIMESTAMP | 摰峕<E691B0><E5B395>園𡢿 | - |
|
||||
| `duration_seconds` | INT | 执行时长(秒) | - |
|
||||
| `duration_seconds` | INT | <EFBFBD>扯<EFBFBD><EFBFBD>園鵭嚗<EFBFBD><EFBFBD>嚗?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
| `updated_at` | TIMESTAMP | <20>湔鰵<E6B994>園𡢿 | - |
|
||||
|
||||
**4. batch_results嚗<73>鸌憭<E9B88C><E686AD>蝏𤘪<E89D8F>銵剁<E98AB5>**
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `task_id` | UUID | 任务ID | → `pkb_schema.batch_tasks(id)` |
|
||||
| `document_id` | UUID | 文档ID | → `pkb_schema.documents(id)` |
|
||||
| `status` | VARCHAR(50) | 状态 | - |
|
||||
| `data` | JSONB | 结构化数据 | - |
|
||||
| `task_id` | UUID | 隞餃𦛚ID | <EFBFBD>?`pkb_schema.batch_tasks(id)` |
|
||||
| `document_id` | UUID | <EFBFBD><EFBFBD>﹝ID | <EFBFBD>?`pkb_schema.documents(id)` |
|
||||
| `status` | VARCHAR(50) | <EFBFBD>嗆<EFBFBD>?| - |
|
||||
| `data` | JSONB | 蝏𤘪<EFBFBD><EFBFBD>𡝗㺭<EFBFBD>?| - |
|
||||
| `raw_output` | TEXT | <20>笔<EFBFBD>颲枏枂 | - |
|
||||
| `error_message` | TEXT | <20>躰秤靽⊥<E99DBD> | - |
|
||||
| `processing_time_ms` | INT | 憭<><E686AD><EFBFBD>園鵭嚗<E9B5AD>神蝘𡜐<E89D98> | - |
|
||||
| `tokens_used` | INT | Token使用量 | - |
|
||||
| `tokens_used` | INT | Token雿輻鍂<EFBFBD>?| - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
|
||||
**5. task_templates(任务模板表)**
|
||||
**5. task_templates嚗<EFBFBD>遙<EFBFBD>⊥芋<EFBFBD>輯”嚗?*
|
||||
|
||||
| 字段名 | 类型 | 说明 | 外键 |
|
||||
| 摮埈挾<EFBFBD>?| 蝐餃<E89D90> | 霂湔<E99C82> | 憭㚚睸 |
|
||||
|-------|------|------|------|
|
||||
| `id` | UUID | 銝駁睸 | - |
|
||||
| `user_id` | UUID | 用户ID | → `platform_schema.users(id)` |
|
||||
| `user_id` | UUID | <EFBFBD>冽<EFBFBD>ID | <EFBFBD>?`platform_schema.users(id)` |
|
||||
| `name` | VARCHAR(255) | 璅⊥踎<E28AA5>滨妍 | - |
|
||||
| `description` | TEXT | <20>讛膩 | - |
|
||||
| `prompt` | TEXT | 提示词 | - |
|
||||
| `prompt` | TEXT | <EFBFBD>鞟內霂?| - |
|
||||
| `output_fields` | JSONB | 颲枏枂摮埈挾摰帋<E691B0> | - |
|
||||
| `is_public` | BOOLEAN | <20>臬炏<E887AC>砍<EFBFBD> | - |
|
||||
| `created_at` | TIMESTAMP | <20>𥕦遣<F0A595A6>園𡢿 | - |
|
||||
| `updated_at` | TIMESTAMP | <20>湔鰵<E6B994>園𡢿 | - |
|
||||
|
||||
**SQL DDL:**
|
||||
**SQL DDL嚗?*
|
||||
```sql
|
||||
CREATE SCHEMA IF NOT EXISTS pkb_schema;
|
||||
|
||||
@@ -582,20 +582,20 @@ CREATE INDEX idx_pkb_task_templates_user_id ON pkb_schema.task_templates(user_id
|
||||
|
||||
---
|
||||
|
||||
## 预留:7个空Schema
|
||||
## 憸<EFBFBD><EFBFBD>嚗?銝芰征Schema
|
||||
|
||||
### 创建策略 ⭐
|
||||
### <EFBFBD>𥕦遣蝑𣇉裦 潃?
|
||||
|
||||
**只执行 `CREATE SCHEMA`,不创建表结构**
|
||||
**<EFBFBD>芣<EFBFBD>銵?`CREATE SCHEMA`嚗䔶<EFBFBD><EFBFBD>𥕦遣銵函<EFBFBD><EFBFBD>?*
|
||||
|
||||
```sql
|
||||
-- 4. AI<41>箄<EFBFBD><E7AE84><EFBFBD>讃嚗Áeek 3<>滩祕蝏<E7A595>挽霈∴<E99C88>
|
||||
CREATE SCHEMA IF NOT EXISTS asl_schema;
|
||||
COMMENT ON SCHEMA asl_schema IS 'AI智能文献筛选模块 - Week 3开发前再设计表结构';
|
||||
COMMENT ON SCHEMA asl_schema IS 'AI<EFBFBD>箄<EFBFBD><EFBFBD><EFBFBD>讃蝑偦<EFBFBD>㗇芋<EFBFBD>?- Week 3撘<33><E69298>穃<EFBFBD><E7A983>滩挽霈∟”蝏𤘪<E89D8F>';
|
||||
|
||||
-- 5. 通用能力层(需要时再创建表)
|
||||
-- 5. <EFBFBD>𡁶鍂<EFBFBD>賢<EFBFBD>撅<EFBFBD><EFBFBD><EFBFBD><EFBFBD>閬<EFBFBD>𧒄<EFBFBD>滚<EFBFBD>撱箄”嚗?
|
||||
CREATE SCHEMA IF NOT EXISTS common_schema;
|
||||
COMMENT ON SCHEMA common_schema IS '通用能力层 - LLM使用记录、Feature Flags等';
|
||||
COMMENT ON SCHEMA common_schema IS '<EFBFBD>𡁶鍂<EFBFBD>賢<EFBFBD>撅?- LLM雿輻鍂霈啣<E99C88><E595A3><EFBFBD>eature Flags蝑?;
|
||||
|
||||
-- 6. <20>唳旿皜<E697BF><E79A9C>璅∪<E79285>
|
||||
CREATE SCHEMA IF NOT EXISTS dc_schema;
|
||||
@@ -615,80 +615,80 @@ COMMENT ON SCHEMA ssa_schema IS '智能统计分析模块';
|
||||
|
||||
-- 10. 蝏蠘恣<E8A098><E681A3><EFBFBD>撌亙<E6928C>
|
||||
CREATE SCHEMA IF NOT EXISTS st_schema;
|
||||
COMMENT ON SCHEMA st_schema IS '统计分析工具集模块';
|
||||
COMMENT ON SCHEMA st_schema IS '蝏蠘恣<EFBFBD><EFBFBD><EFBFBD>撌亙<EFBFBD><EFBFBD><EFBFBD>芋<EFBFBD>?;
|
||||
```
|
||||
|
||||
### 各空Schema的用途
|
||||
### <EFBFBD><EFBFBD>征Schema<EFBFBD><EFBFBD>鍂<EFBFBD>?
|
||||
|
||||
| Schema | 用途说明 | 何时设计表结构 |
|
||||
| Schema | <EFBFBD>券<EFBFBD>磰秩<EFBFBD>?| 雿閙𧒄霈曇恣銵函<E98AB5><E587BD>?|
|
||||
|--------|---------|--------------|
|
||||
| `asl_schema` | AI智能文献筛选 | **Week 3 Day 1** - ASL开发前详细设计 |
|
||||
| `common_schema` | 通用能力(LLM使用记录、Feature Flags) | 需要时再设计 |
|
||||
| `asl_schema` | AI<EFBFBD>箄<EFBFBD><EFBFBD><EFBFBD>讃蝑偦<EFBFBD>?| **Week 3 Day 1** - ASL撘<EFBFBD><EFBFBD>穃<EFBFBD>霂衣<EFBFBD>霈曇恣 |
|
||||
| `common_schema` | <EFBFBD>𡁶鍂<EFBFBD>賢<EFBFBD>嚗𡿨LM雿輻鍂霈啣<EFBFBD><EFBFBD><EFBFBD>eature Flags嚗?| <20><>閬<EFBFBD>𧒄<EFBFBD>滩挽霈?|
|
||||
| `dc_schema` | <20>唳旿皜<E697BF><E79A9C>撌亙<E6928C> | Week 5+<2B>𡝗<EFBFBD><F0A19D97><EFBFBD> |
|
||||
| `rvw_schema` | 蝔蹂辣摰⊥䰻蝟餌<E89D9F> | Week 1餈<31>宏review_tasks嚗<73><E59A97>隞𤥁”<F0A4A581>厰<EFBFBD> |
|
||||
| `admin_schema` | 餈鞱𨯫蝞∠<E89D9E><E288A0>𤾸蝱 | Week 1餈<31>宏admin_logs嚗<73><E59A97>隞𤥁”<F0A4A581>厰<EFBFBD> |
|
||||
| `ssa_schema` | <20>箄<EFBFBD>蝏蠘恣<E8A098><E681A3><EFBFBD> | Week 5+<2B>𡝗<EFBFBD><F0A19D97><EFBFBD> |
|
||||
| `st_schema` | 统计分析工具集 | Week 5+或按需 |
|
||||
| `st_schema` | 蝏蠘恣<EFBFBD><EFBFBD><EFBFBD>撌亙<EFBFBD><EFBFBD>?| Week 5+<EFBFBD>𡝗<EFBFBD><EFBFBD><EFBFBD> |
|
||||
|
||||
---
|
||||
|
||||
## 餈<>宏蝑𣇉裦
|
||||
|
||||
### 迁移优先级
|
||||
### 餈<EFBFBD>宏隡睃<EFBFBD>蝥?
|
||||
|
||||
| 优先级 | Schema | 表数量 | 数据量估算 | 迁移时间 |
|
||||
| 隡睃<EFBFBD>蝥?| Schema | 銵冽㺭<EFBFBD>?| <20>唳旿<E594B3>譍摯蝞?| 餈<>宏<EFBFBD>園𡢿 |
|
||||
|-------|--------|--------|-----------|---------|
|
||||
| **P0** | platform_schema | 1 | ~10条 | 15分钟 |
|
||||
| **P0** | aia_schema | 5 | ~500条 | 30分钟 |
|
||||
| **P0** | pkb_schema | 5 | ~100条 | 30分钟 |
|
||||
| **P1** | rvw_schema | 1(review_tasks) | ~20条 | 10分钟 |
|
||||
| **P1** | admin_schema | 1(admin_logs) | ~50条 | 10分钟 |
|
||||
| **P0** | platform_schema | 1 | ~10<EFBFBD>?| 15<EFBFBD><EFBFBD><EFBFBD> |
|
||||
| **P0** | aia_schema | 5 | ~500<EFBFBD>?| 30<EFBFBD><EFBFBD><EFBFBD> |
|
||||
| **P0** | pkb_schema | 5 | ~100<EFBFBD>?| 30<EFBFBD><EFBFBD><EFBFBD> |
|
||||
| **P1** | rvw_schema | 1嚗ǐeview_tasks嚗?| ~20<EFBFBD>?| 10<EFBFBD><EFBFBD><EFBFBD> |
|
||||
| **P1** | admin_schema | 1嚗Òdmin_logs嚗?| ~50<EFBFBD>?| 10<EFBFBD><EFBFBD><EFBFBD> |
|
||||
|
||||
### 迁移步骤(4步法)
|
||||
### 餈<EFBFBD>宏甇仿炊嚗?甇交<E79487>嚗?
|
||||
|
||||
**Step 1:创建10个Schema(5分钟)**
|
||||
**Step 1嚗𡁜<EFBFBD>撱?0銝杵chema嚗?<3F><><EFBFBD>嚗?*
|
||||
```sql
|
||||
-- 执行脚本:001-create-all-10-schemas.sql
|
||||
-- 创建10个Schema(3详细+7空)
|
||||
-- <EFBFBD>扯<EFBFBD><EFBFBD>𡁏𧋦嚗?01-create-all-10-schemas.sql
|
||||
-- <EFBFBD>𥕦遣10銝杵chema嚗?霂衣<E99C82>+7蝛綽<E89D9B>
|
||||
```
|
||||
|
||||
**Step 2:创建表结构(30分钟)**
|
||||
**Step 2嚗𡁜<EFBFBD>撱箄”蝏𤘪<EFBFBD>嚗?0<><30><EFBFBD>嚗?*
|
||||
```sql
|
||||
-- 执行脚本:
|
||||
-- <EFBFBD>扯<EFBFBD><EFBFBD>𡁏𧋦嚗?
|
||||
-- 002-migrate-platform.sql - <20>𥕦遣platform_schema.users
|
||||
-- 003-migrate-aia.sql - 创建aia_schema的5个表
|
||||
-- 004-migrate-pkb.sql - 创建pkb_schema的5个表
|
||||
-- 003-migrate-aia.sql - <EFBFBD>𥕦遣aia_schema<EFBFBD>?銝芾”
|
||||
-- 004-migrate-pkb.sql - <EFBFBD>𥕦遣pkb_schema<EFBFBD>?銝芾”
|
||||
```
|
||||
|
||||
**Step 3:迁移数据(30分钟)**
|
||||
**Step 3嚗朞<EFBFBD>蝘餅㺭<EFBFBD>殷<EFBFBD>30<EFBFBD><EFBFBD><EFBFBD>嚗?*
|
||||
```sql
|
||||
-- 雿輻鍂 INSERT INTO ... SELECT FROM <20>孵<EFBFBD>
|
||||
-- 保持ID不变,确保引用关系不变
|
||||
-- 靽脲<EFBFBD>ID銝滚<EFBFBD>嚗𣬚&靽嘥<EFBFBD><EFBFBD>典<EFBFBD>蝟颱<EFBFBD><EFBFBD>?
|
||||
```
|
||||
|
||||
**Step 4:验证(30分钟)**
|
||||
**Step 4嚗𡁻<EFBFBD>霂<EFBFBD><EFBFBD>30<EFBFBD><EFBFBD><EFBFBD>嚗?*
|
||||
```sql
|
||||
-- 执行脚本:005-validate-all.sql
|
||||
-- 验证数据完整性、外键约束
|
||||
-- <EFBFBD>扯<EFBFBD><EFBFBD>𡁏𧋦嚗?05-validate-all.sql
|
||||
-- 撉諹<EFBFBD><EFBFBD>唳旿摰峕㟲<EFBFBD>扼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>桃漲<EFBFBD>?
|
||||
```
|
||||
|
||||
### <20>唳旿餈<E697BF>宏蝷箔<E89DB7>
|
||||
|
||||
**platform_schema.users:**
|
||||
**platform_schema.users嚗?*
|
||||
```sql
|
||||
INSERT INTO platform_schema.users
|
||||
SELECT * FROM public.users;
|
||||
```
|
||||
|
||||
**aia_schema.projects:**
|
||||
**aia_schema.projects嚗?*
|
||||
```sql
|
||||
INSERT INTO aia_schema.projects
|
||||
SELECT * FROM public.projects;
|
||||
```
|
||||
|
||||
**验证:**
|
||||
**撉諹<EFBFBD>嚗?*
|
||||
```sql
|
||||
-- 验证数据量
|
||||
-- 撉諹<EFBFBD><EFBFBD>唳旿<EFBFBD>?
|
||||
SELECT 'users' AS table_name, COUNT(*) FROM platform_schema.users
|
||||
UNION ALL
|
||||
SELECT 'projects', COUNT(*) FROM aia_schema.projects
|
||||
@@ -698,38 +698,38 @@ SELECT 'conversations', COUNT(*) FROM aia_schema.conversations;
|
||||
|
||||
---
|
||||
|
||||
## 现有表分配方案
|
||||
## <EFBFBD>唳<EFBFBD>銵典<EFBFBD><EFBFBD>齿䲮獢?
|
||||
|
||||
### 敶枏<E695B6>public schema銝剔<E98A9D>13銝芾”
|
||||
|
||||
| # | 銵典<E98AB5> | <20>格<EFBFBD>Schema | 餈<>宏<EFBFBD>嗆㦤 | 霂湔<E99C82> |
|
||||
|---|------|-----------|---------|------|
|
||||
| 1 | `users` | `platform_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 2 | `projects` | `aia_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 3 | `conversations` | `aia_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 4 | `messages` | `aia_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 5 | `general_conversations` | `aia_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 6 | `general_messages` | `aia_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 7 | `knowledge_bases` | `pkb_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 8 | `documents` | `pkb_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 9 | `batch_tasks` | `pkb_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 10 | `batch_results` | `pkb_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 11 | `task_templates` | `pkb_schema` | Week 1 | ✅ P0核心表 |
|
||||
| 12 | `review_tasks` | `rvw_schema` | Week 1或保留 | 📋 P1可选 |
|
||||
| 13 | `admin_logs` | `admin_schema` | Week 1或保留 | 📋 P1可选 |
|
||||
| 1 | `users` | `platform_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 2 | `projects` | `aia_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 3 | `conversations` | `aia_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 4 | `messages` | `aia_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 5 | `general_conversations` | `aia_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 6 | `general_messages` | `aia_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 7 | `knowledge_bases` | `pkb_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 8 | `documents` | `pkb_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 9 | `batch_tasks` | `pkb_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 10 | `batch_results` | `pkb_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 11 | `task_templates` | `pkb_schema` | Week 1 | <EFBFBD>?P0<50>詨<EFBFBD>銵?|
|
||||
| 12 | `review_tasks` | `rvw_schema` | Week 1<EFBFBD>碶<EFBFBD><EFBFBD>?| <20><> P1<50>舫<EFBFBD>?|
|
||||
| 13 | `admin_logs` | `admin_schema` | Week 1<EFBFBD>碶<EFBFBD><EFBFBD>?| <20><> P1<50>舫<EFBFBD>?|
|
||||
|
||||
**说明:**
|
||||
- **优先迁移11个表**到3个详细Schema(Platform/AIA/PKB)
|
||||
- **review_tasks和admin_logs**可以:
|
||||
**霂湔<EFBFBD>嚗?*
|
||||
- **隡睃<EFBFBD>餈<EFBFBD>宏11銝芾”**<2A>?銝芾祕蝏<E7A595>chema嚗㇊latform/AIA/PKB嚗?
|
||||
- **review_tasks<EFBFBD>蘏dmin_logs**<EFBFBD>臭誑嚗?
|
||||
- <20>厰★A嚗阳eek 1銝<31>撟嗉<E6929F>蝘餃<E89D98>撖孵<E69296><E5ADB5><EFBFBD>征Schema嚗<61><E59A97><EFBFBD>𤏪<EFBFBD>
|
||||
- 选项B:暂时保留在public,需要时再迁移(务实)
|
||||
- <EFBFBD>厰★B嚗𡁏<EFBFBD><EFBFBD>嗡<EFBFBD><EFBFBD>坔銁public嚗屸<EFBFBD>閬<EFBFBD>𧒄<EFBFBD>滩<EFBFBD>蝘鳴<EFBFBD><EFBFBD>∪<EFBFBD>嚗?
|
||||
- **撱箄悅<E7AE84>厰★A**嚗帋<E59A97>甈⊥<E79488>扯<EFBFBD>蝘餃<E89D98><E9A483>琜<EFBFBD><E7909C>踹<EFBFBD>畾讠<E795BE>
|
||||
|
||||
---
|
||||
|
||||
## 憭㚚睸<E39A9A>諹楊Schema撘閧鍂
|
||||
|
||||
### PostgreSQL跨Schema外键支持 ✅
|
||||
### PostgreSQL頝沒chema憭㚚睸<EFBFBD>舀<EFBFBD> <20>?
|
||||
|
||||
PostgreSQL **摰<><E691B0><EFBFBD>舀<EFBFBD>**頝沒chema<6D><61><EFBFBD><EFBFBD>桃漲<E6A183><E6BCB2><EFBFBD>
|
||||
|
||||
@@ -748,18 +748,18 @@ CREATE TABLE aia_schema.projects (
|
||||
|
||||
### 撘閧鍂閫<E98D82><E996AB>
|
||||
|
||||
**✅ 允许的引用:**
|
||||
- 业务模块Schema → `platform_schema.users(id)`
|
||||
- 同Schema内的表相互引用
|
||||
**<EFBFBD>?<3F><>捂<EFBFBD><E68D82><EFBFBD><EFBFBD>剁<EFBFBD>**
|
||||
- 銝𡁜𦛚璅∪<EFBFBD>Schema <EFBFBD>?`platform_schema.users(id)`
|
||||
- <EFBFBD>玺chema<EFBFBD><EFBFBD><EFBFBD>銵函㮾鈭鍦<EFBFBD><EFBFBD>?
|
||||
|
||||
**❌ 禁止的引用:**
|
||||
- `platform_schema` → 业务模块Schema(反向依赖)
|
||||
**<EFBFBD>?蝳<>迫<EFBFBD><E8BFAB><EFBFBD><EFBFBD>剁<EFBFBD>**
|
||||
- `platform_schema` <EFBFBD>?銝𡁜𦛚璅∪<E79285>Schema嚗<61><E59A97><EFBFBD>睲<EFBFBD>韏吔<E99F8F>
|
||||
- 銝𡁜𦛚璅∪<E79285>Schema銋钅𡢿<E99285>訾<EFBFBD>撘閧鍂嚗<E98D82><E59A97><EFBFBD><EFBFBD>𡠺蝡𧢲<E89DA1>改<EFBFBD>
|
||||
|
||||
### 数据一致性保证
|
||||
### <EFBFBD>唳旿銝<EFBFBD><EFBFBD>湔<EFBFBD>找<EFBFBD>霂?
|
||||
|
||||
1. **CASCADE<44>𣳇膄** - <20>冽<EFBFBD><E586BD>𣳇膄<F0A3B387>塚<EFBFBD><E5A19A>唾<EFBFBD><E594BE>唳旿<E594B3>芸𢆡<E88AB8>𣳇膄
|
||||
2. **外键索引** - 所有外键字段创建索引
|
||||
2. **憭㚚睸蝝W<EFBFBD>** - <EFBFBD><EFBFBD><EFBFBD>匧<EFBFBD><EFBFBD>桀<EFBFBD>畾萄<EFBFBD>撱箇揣撘?
|
||||
3. **鈭见𦛚靽脲擪** - 餈<>宏<EFBFBD>其<EFBFBD><E585B6>∩葉<E288A9>扯<EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>𣂼<EFBFBD><F0A382BC>硋<EFBFBD>憭梯揖
|
||||
|
||||
---
|
||||
@@ -770,7 +770,7 @@ CREATE TABLE aia_schema.projects (
|
||||
|
||||
**<EFBFBD>究chema.prisma銝哨<E98A9D>**
|
||||
|
||||
1. **启用multiSchema预览特性**
|
||||
1. **<EFBFBD>舐鍂multiSchema憸<EFBFBD><EFBFBD><EFBFBD>寞<EFBFBD>?*
|
||||
```prisma
|
||||
generator client {
|
||||
provider = "prisma-client-js"
|
||||
@@ -784,13 +784,13 @@ datasource db {
|
||||
"platform_schema",
|
||||
"aia_schema",
|
||||
"pkb_schema",
|
||||
"asl_schema", // 空Schema,预留
|
||||
"common_schema", // 空Schema,预留
|
||||
"dc_schema", // 空Schema,预留
|
||||
"rvw_schema", // 空Schema,预留
|
||||
"admin_schema", // 空Schema,预留
|
||||
"ssa_schema", // 空Schema,预留
|
||||
"st_schema" // 空Schema,预留
|
||||
"asl_schema", // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
"common_schema", // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
"dc_schema", // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
"rvw_schema", // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
"admin_schema", // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
"ssa_schema", // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
"st_schema" // 蝛搴chema嚗屸<EFBFBD><EFBFBD>?
|
||||
]
|
||||
}
|
||||
```
|
||||
@@ -819,8 +819,8 @@ model KnowledgeBase {
|
||||
}
|
||||
```
|
||||
|
||||
3. **7个空Schema不定义模型**
|
||||
- 只在schemas列表中声明
|
||||
3. **7銝芰征Schema銝滚<EFBFBD>銋㗇芋<EFBFBD>?*
|
||||
- <EFBFBD>芸銁schemas<EFBFBD>𡑒”銝剖ㄟ<EFBFBD>?
|
||||
- Week 3<>滢蛹asl_schema瘛餃<E7989B>璅∪<E79285>
|
||||
- <20>嗡<EFBFBD><E597A1>厰<EFBFBD>瘛餃<E7989B>
|
||||
|
||||
@@ -829,16 +829,16 @@ model KnowledgeBase {
|
||||
|
||||
---
|
||||
|
||||
## 📊 工作量估算
|
||||
## <EFBFBD><EFBFBD> 撌乩<E6928C><E4B9A9>譍摯蝞?
|
||||
|
||||
| 隞餃𦛚 | 憸<>恣<EFBFBD>園𡢿 | 霂湔<E99C82> |
|
||||
|------|---------|------|
|
||||
| **Day 1-2上午:架构规划与设计** | 8小时 | 本文档 + 3个Schema SQL |
|
||||
| **Day 2下午:编写迁移脚本** | 1.5小时 | 5个SQL脚本 |
|
||||
| **Day 3上午:执行迁移** | 2-3小时 | 备份 + 迁移 + 验证 |
|
||||
| **Day 3下午:功能测试** | 2小时 | 测试现有功能 |
|
||||
| **Day 1-2銝𠰴<EFBFBD>嚗𡁏沲<EFBFBD><EFBFBD><EFBFBD><EFBFBD>雴<EFBFBD>霈曇恣** | 8撠𤩺𧒄 | <20>祆<EFBFBD>獢?+ 3銝杵chema SQL |
|
||||
| **Day 2銝见<EFBFBD>嚗𡁶<EFBFBD><EFBFBD>躰<EFBFBD>蝘餉<EFBFBD><EFBFBD>?* | 1.5撠𤩺𧒄 | 5銝杵QL<EFBFBD>𡁏𧋦 |
|
||||
| **Day 3銝𠰴<EFBFBD>嚗𡁏<EFBFBD>銵諹<EFBFBD>蝘?* | 2-3撠𤩺𧒄 | 憭<>遢 + 餈<>宏 + 撉諹<E69289> |
|
||||
| **Day 3銝见<EFBFBD>嚗𡁜<EFBFBD><EFBFBD>賣<EFBFBD>霂?* | 2撠𤩺𧒄 | 瘚贝<E7989A><E8B49D>唳<EFBFBD><E594B3>蠘<EFBFBD> |
|
||||
| **Day 4嚗䥪risma<6D>滨蔭** | 3撠𤩺𧒄 | <20>湔鰵schema.prisma |
|
||||
| **总计** | **约16-17小时(2天)** | ✅ |
|
||||
| **<EFBFBD>餉恣** | **蝥?6-17撠𤩺𧒄嚗?憭抬<E686AD>** | <EFBFBD>?|
|
||||
|
||||
---
|
||||
|
||||
@@ -846,12 +846,12 @@ model KnowledgeBase {
|
||||
|
||||
Week 1蝏𤘪<E89D8F><F0A498AA>塚<EFBFBD>摨磰噢<E7A3B0>堆<EFBFBD>
|
||||
|
||||
- [ ] ✅ 10个Schema全部创建成功
|
||||
- [ ] ✅ 3个详细Schema的11个表数据100%迁移
|
||||
- [ ] ✅ 所有外键约束正确建立
|
||||
- [ ] ✅ 现有功能(AIA、PKB)正常运行
|
||||
- [ ] ✅ Prisma Client生成成功
|
||||
- [ ] ✅ 7个空Schema验证通过(可查询、可创建表)
|
||||
- [ ] <EFBFBD>?10銝杵chema<6D>券<EFBFBD><E588B8>𥕦遣<F0A595A6>𣂼<EFBFBD>
|
||||
- [ ] <EFBFBD>?3銝芾祕蝏<E7A595>chema<6D>?1銝芾”<E88ABE>唳旿100%餈<EFBFBD>宏
|
||||
- [ ] <EFBFBD>?<3F><><EFBFBD>匧<EFBFBD><E58CA7>桃漲<E6A183><E6BCB2>迤蝖桀遣蝡?
|
||||
- [ ] <EFBFBD>?<3F>唳<EFBFBD><E594B3>蠘<EFBFBD>嚗㇁IA<49><41>KB嚗㗇迤撣貉<E692A3>銵?
|
||||
- [ ] <EFBFBD>?Prisma Client<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𣂼<EFBFBD>
|
||||
- [ ] <EFBFBD>?7銝芰征Schema撉諹<E69289><E8ABB9>朞<EFBFBD>嚗<EFBFBD>虾<EFBFBD>亥砭<E4BAA5><E7A0AD>虾<EFBFBD>𥕦遣銵剁<E98AB5>
|
||||
|
||||
---
|
||||
|
||||
@@ -863,22 +863,22 @@ Week 1结束时,应达到:
|
||||
- <20><><EFBFBD><EFBFBD>啁<EFBFBD>Schema蝏𤘪<E89D8F>
|
||||
|
||||
### Week 3
|
||||
- **详细设计asl_schema** ⭐
|
||||
- 为asl_schema创建表结构
|
||||
- **霂衣<EFBFBD>霈曇恣asl_schema** 潃?
|
||||
- 銝榮sl_schema<EFBFBD>𥕦遣銵函<EFBFBD><EFBFBD>?
|
||||
- 撘<><E69298>飊SL<53>詨<EFBFBD><E8A9A8>蠘<EFBFBD>
|
||||
|
||||
### Week 5+
|
||||
- 按需为其他空Schema设计表结构
|
||||
- <EFBFBD>厰<EFBFBD>銝箏<EFBFBD>隞𣇉征Schema霈曇恣銵函<EFBFBD><EFBFBD>?
|
||||
- LLM蝵穃<E89DB5>蝏煺<E89D8F>
|
||||
- 其他模块开发
|
||||
- <EFBFBD>嗡<EFBFBD>璅∪<EFBFBD>撘<EFBFBD><EFBFBD>?
|
||||
|
||||
---
|
||||
|
||||
**文档制定:** AI助手
|
||||
**审核:** 待审核
|
||||
**<EFBFBD><EFBFBD>﹝<EFBFBD>嗅<EFBFBD>嚗?* AI<41>拇<EFBFBD>
|
||||
**摰⊥瓲嚗?* 敺<>恣<EFBFBD>?
|
||||
**<EFBFBD><EFBFBD><EFBFBD>擧凒<EFBFBD>堆<EFBFBD>** 2025-11-09
|
||||
|
||||
**核心策略:聚焦当前 + 架构预留 + Just-in-time设计** ⭐⭐⭐
|
||||
**<EFBFBD>詨<EFBFBD>蝑𣇉裦嚗朞<EFBFBD><EFBFBD>血<EFBFBD><EFBFBD>?+ <20>嗆<EFBFBD>憸<EFBFBD><E686B8> + Just-in-time霈曇恣** 潃鐥<E6BD83>潃?
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user