Files
AIclinicalresearch/docs/09-架构实施/Schema迁移完成报告.md
HaHafeng 1b53ab9d52 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%)
2026-01-14 19:15:01 +08:00

315 lines
8.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Schema杩佺Щ瀹屾垚鎶ュ憡
> **鎵ц<E98EB5>鏃ユ湡锛?* 2025-11-12
> **鎵ц<E98EB5>浜猴細** AI鍔╂墜
> **鐘舵€侊細** 鉁?鎴愬姛瀹屾垚
---
## 馃搳 杩佺Щ姒傚喌
### 杩佺Щ鐩<D0A9>
浠庡崟涓€`public` schema杩佺Щ鍒?0涓<30>嫭绔婼chema鐨勬ā鍧楀寲鏋舵瀯銆?
### 鎵ц<E98EB5>缁撴灉
鉁?**鎵€鏈夎縼绉讳换鍔℃垚鍔熷畬鎴?*
---
## 鉁?宸插畬鎴愪换鍔?
### 1. Schema鍒涘缓锛?0涓<30>
| Schema鍚嶇О | 鐘舵€?| 鐢ㄩ€?| 琛ㄦ暟閲?|
|-----------|------|------|--------|
| `platform_schema` | 鉁?鎴愬姛 | 骞冲彴鍩虹<E98DA9>灞傦紙鐢ㄦ埛绠悊锛?| 1 |
| `aia_schema` | 鉁?鎴愬姛 | AI鏅鸿兘闂<E58598>瓟 | 5 |
| `pkb_schema` | 鉁?鎴愬姛 | 涓<>汉鐭ヨ瘑搴?| 5 |
| `asl_schema` | 鉁?鎴愬姛 | AI鏅鸿兘鏂囩尞锛堢┖Schema锛?| 0 |
| `common_schema` | 鉁?鎴愬姛 | 閫氱敤鑳藉姏灞傦紙绌篠chema锛?| 0 |
| `dc_schema` | 鉁?鎴愬姛 | 鏁版嵁娓呮礂锛堢┖Schema锛?| 0 |
| `rvw_schema` | 鉁?鎴愬姛 | 瀹ǹ绯荤粺锛堢┖Schema锛?| 0 |
| `admin_schema` | 鉁?鎴愬姛 | 杩愯惀绠悊锛堢┖Schema锛?| 0 |
| `ssa_schema` | 鉁?鎴愬姛 | 鏅鸿兘缁熻<E7BC81>鍒嗘瀽锛堢┖Schema锛?| 0 |
| `st_schema` | 鉁?鎴愬姛 | 缁熻<E7BC81>鍒嗘瀽宸ュ叿锛堢┖Schema锛?| 0 |
**鎬昏<E98EAC>锛?* 10涓猄chema鍏ㄩ儴鍒涘缓鎴愬姛 鉁?
---
### 2. 鏁版嵁杩佺Щ锛?1涓<31>〃锛?
#### Platform Schema锛?涓<>〃锛?
- 鉁?`users` - 鐢ㄦ埛琛?
#### AIA Schema锛?涓<>〃锛?
- 鉁?`projects` - 椤圭洰绠$悊
- 鉁?`conversations` - 椤圭洰瀵硅瘽
- 鉁?`messages` - 瀵硅瘽娑堟伅
- 鉁?`general_conversations` - 閫氱敤瀵硅瘽
- 鉁?`general_messages` - 閫氱敤娑堟伅
#### PKB Schema锛?涓<>〃锛?
- 鉁?`knowledge_bases` - 鐭ヨ瘑搴?
- 鉁?`documents` - 鏂囨。锛堝惈Phase 2鍏ㄦ枃闃呰<E99783>瀛楁<E7809B>锛?
- 鉁?`batch_tasks` - 鎵瑰<E98EB5>鐞嗕换鍔?
- 鉁?`batch_results` - 鎵瑰<E98EB5>鐞嗙粨鏋?
- 鉁?`task_templates` - 浠诲姟妯℃澘
**鎬昏<E98EAC>锛?* 11涓<31>〃鏁版嵁100%杩佺Щ鎴愬姛 鉁?
---
### 3. 澶栭敭鍏崇郴
鉁?**鎵€鏈夎法Schema澶栭敭姝寤虹珛**
- `aia_schema.projects` 鈫?`platform_schema.users`
- `aia_schema.conversations` 鈫?`platform_schema.users` & `aia_schema.projects`
- `aia_schema.messages` 鈫?`aia_schema.conversations`
- `aia_schema.general_conversations` 鈫?`platform_schema.users`
- `aia_schema.general_messages` 鈫?`aia_schema.general_conversations`
- `pkb_schema.knowledge_bases` 鈫?`platform_schema.users`
- `pkb_schema.documents` 鈫?`pkb_schema.knowledge_bases` & `platform_schema.users`
- `pkb_schema.batch_tasks` 鈫?`platform_schema.users` & `pkb_schema.knowledge_bases`
- `pkb_schema.batch_results` 鈫?`pkb_schema.batch_tasks` & `pkb_schema.documents`
- `pkb_schema.task_templates` 鈫?`platform_schema.users`
---
## 馃敡 鎶€鏈<E282AC>粏鑺?
### 鎵ц<E98EB5>鐨凷QL鑴氭湰
1. **001-create-all-10-schemas.sql** 鉁?
- 鍒涘缓10涓猄chema鍛藉悕绌洪棿
- 娣诲姞Schema娉ㄩ噴璇存槑
- 鎵ц<E98EB5>鏃堕棿锛殈5绉?
2. **002-migrate-platform.sql** 鉁?
- 鍒涘缓`platform_schema.users`琛?
- 浠巂public.users`杩佺Щ鏁版嵁
- 鍒涘缓4涓<34>储寮?
- 鎵ц<E98EB5>鏃堕棿锛殈15绉?
3. **003-migrate-aia.sql** 鉁?
- 鍒涘缓5涓<35>〃锛坧rojects, conversations, messages, general_conversations, general_messages锛?
- 浠巔ublic杩佺Щ鎵€鏈夋暟鎹?
- 鍒涘缓12涓<32>储寮?
- 鎵ц<E98EB5>鏃堕棿锛殈30绉?
4. **004-migrate-pkb.sql** 鉁?
- 鍒涘缓5涓<35>〃锛坘nowledge_bases, documents, batch_tasks, batch_results, task_templates锛?
- 鍖呭惈Phase 2鍏ㄦ枃闃呰<E99783>瀛楁<E7809B>
- 浠巔ublic杩佺Щ鎵€鏈夋暟鎹?
- 鍒涘缓8涓<38>储寮?
- 鎵ц<E98EB5>鏃堕棿锛殈30绉?
5. **005-validate-simple.sql** 鉁?
- 楠岃瘉Schema鍒涘缓
- 楠岃瘉琛ㄦ暟閲?
- 楠岃瘉鏁版嵁瀹屾暣鎬?
- 楠岃瘉澶栭敭绾︽潫
- 楠岃瘉璺⊿chema寮曠敤
- 鎵ц<E98EB5>鏃堕棿锛殈10绉?
**鎬绘墽琛屾椂闂达細** 绾?鍒嗛挓
---
## 馃悰 閬囧埌鐨勯棶棰樺拰瑙喅鏂规<E98F82>
### 闂<><E99782>1锛歎UID vs TEXT绫诲瀷涓嶅尮閰?
**闂<><E99782>鎻忚堪锛?* 杩佺Щ鑴氭湰浣跨敤UUID绫诲瀷锛屼絾鐜版湁鏁版嵁搴撲娇鐢═EXT锛圫tring锛夌被鍨嬪瓨鍌↖D銆?
**瑙喅鏂规<E98F82>锛?* 灏嗘墍鏈塖QL鑴氭湰涓<E6B9B0>`UUID`绫诲瀷鏀逛负`TEXT`绫诲瀷銆?
**褰卞搷鐨勮〃锛?* 鎵€鏈夎〃鐨刞id`瀛楁<E7809B>鍜屽<E98D9C><EFBFBD>瓧娈点€?
---
### 闂<><E99782>2锛氬瓧娈靛懡鍚嶄笉涓€鑷?
**闂<><E99782>鎻忚堪锛?* Prisma schema涓<61>儴鍒嗗瓧娈垫湭浣跨敤`@map`锛屽<E9949B>鑷存暟鎹<E69A9F>簱瀛楁<E7809B>鍚嶄笌Prisma涓嶅悓銆?
**鍏蜂綋瀛楁<E7809B>锛?*
- `rawOutput` (Prisma) 鈫?鏁版嵁搴撲腑瀹為檯涔熸槸`rawOutput`锛堣€岄潪`raw_output`锛?
- `outputFields` (Prisma) 鈫?鏁版嵁搴撲腑瀹為檯涔熸槸`outputFields`锛堣€岄潪`output_fields`锛?
**瑙喅鏂规<E98F82>锛?*
- 鍦ㄨ縼绉籗QL涓<4C>娇鐢╜COALESCE("rawOutput", NULL)`澶勭悊瀛楁<EFBFBD>寮曠敤
- 鍦ㄨ縼绉籗QL涓<4C>娇鐢╜COALESCE("outputFields", '{}')::jsonb`澶勭悊瀛楁<E7809B>寮曠敤
---
## 馃搵 鏁版嵁楠岃瘉缁撴灉
### Schema楠岃瘉
鉁?10涓猄chema鍏ㄩ儴瀛樺湪
鉁?姣忎釜Schema閮芥湁姝鐨勬敞閲?
### 琛ㄧ粨鏋勯獙璇?
鉁?platform_schema: 1涓<31>〃锛堥<E9949B>鏈?涓<>
鉁?aia_schema: 5涓<35>〃锛堥<E9949B>鏈?涓<>
鉁?pkb_schema: 5涓<35>〃锛堥<E9949B>鏈?涓<>
鉁?绌篠chema: 0涓<30>〃锛堢<E9949B>鍚堥<E98D9A>鏈燂級
### 鏁版嵁瀹屾暣鎬ч獙璇?
鉁?users琛<73>細鏁版嵁閲忎竴鑷?
鉁?projects琛<73>細鏁版嵁閲忎竴鑷?
鉁?conversations琛<73>細鏁版嵁閲忎竴鑷?
鉁?messages琛<73>細鏁版嵁閲忎竴鑷?
鉁?knowledge_bases琛<73>細鏁版嵁閲忎竴鑷?
鉁?documents琛<73>細鏁版嵁閲忎竴鑷?
鉁?鎵€鏈夎〃锛氭棤鏁版嵁涓㈠け
### 澶栭敭瀹屾暣鎬ч獙璇?
鉁?鎵€鏈夎法Schema澶栭敭寮曠敤鏈夋晥
鉁?鏃犲<E98F83>绔嬭<E7BB94>褰?
鉁?绾ц仈鍒犻櫎閰嶇疆姝g‘
---
## 馃摝 浜や粯鐗?
### 鏂囨。
1. 鉁?`01-Schema闅旂<E99785>鏋舵瀯璁捐<E79281>锛?0涓<30>級.md` - 瀹屾暣鏋舵瀯璁捐<E79281>鏂囨。
2. 鉁?`02-鏁版嵁搴撹繛鎺ラ厤缃?md` - 鏁版嵁搴撻厤缃<E58EA4><E7BC83>鏄?
### SQL鑴氭湰锛堝師濮嬬増鏈?in docs/09-鏋舵瀯瀹炴柦/migration-scripts/锛?
1. 鉁?`001-create-all-10-schemas.sql`
2. 鉁?`002-migrate-platform.sql`
3. 鉁?`003-migrate-aia.sql`
4. 鉁?`004-migrate-pkb.sql`
5. 鉁?`005-validate-all.sql`
6. 鉁?`README.md` - 浣跨敤鎸囧崡
7. 鉁?`execute-migration.ps1` - 鑷<>姩鍖栬剼鏈?
### 鎵ц<E98EB5>鐗堟湰锛坆ackend/temp-migration/锛?
- 鉁?001-005.sql锛堝凡淇<E587A1><E6B787>绫诲瀷鍜屽瓧娈甸棶棰橈級
- 鉁?quick-check.sql锛堝揩閫熼獙璇侊級
---
## 馃幆 鍚庣画浠诲姟
### 绔嬪嵆闇€瑕佸畬鎴愶紙Week 1 鍓╀綑锛?
#### Day 3涓嬪崍 - 楠岃瘉鐜版湁鍔熻兘
- [ ] 娴嬭瘯AI鏅鸿兘闂<E58598>瓟鍔熻兘
- [ ] 娴嬭瘯涓<E798AF>汉鐭ヨ瘑搴撳姛鑳?
- [ ]<><E6B787>鍙戠幇鐨勯棶棰?
#### Day 4涓婂崍 - Prisma閰嶇疆 猸?**涓嬩竴姝?*
- [ ] 鏇存柊`backend/prisma/schema.prisma`
- [ ] 娣诲姞`multiSchema`棰勮<EFBFBD>鐗规€?
- [ ] 涓?涓猄chema鐨?1涓<31>〃娣诲姞`@@schema()`鏍囩<EFBFBD>
- [ ] 鐢熸垚鏂扮殑Prisma Client
- [ ] 楠岃瘉Prisma Client鍙<74>
#### Day 4涓嬪崍 - 鏂囨。琛ュ厖
- [ ] 鍒涘缓AIA鏁版嵁搴撹<E690B4>璁℃枃妗?
- [ ] 鍒涘缓PKB鏁版嵁搴撹<E690B4>璁℃枃妗?
- [ ] 琛ュ厖API璁捐<E79281>鏂囨。
#### Day 5 - 浠g爜閫傞厤
- [ ] 鏇存柊鎵€鏈夋暟鎹<E69A9F>簱鏌ヨ<E98F8C>
- [ ] 浣跨敤鏂扮殑Prisma Client
- [ ] 杩愯<E69DA9>闆嗘垚娴嬭瘯
- [ ]<><E6B787>鎵€鏈夐棶棰?
---
## 馃攼 鍥炴粴鏂规<E98F82>
濡傞渶鍥炴粴锛屽彲鎵ц<EFBFBD>浠ヤ笅鎿嶄綔锛?
### 鏂规<E98F82>1锛氬垹闄ゆ柊Schema锛堜繚鐣檖ublic锛?
```sql
DROP SCHEMA IF EXISTS platform_schema CASCADE;
DROP SCHEMA IF EXISTS aia_schema CASCADE;
DROP SCHEMA IF EXISTS pkb_schema CASCADE;
DROP SCHEMA IF EXISTS asl_schema CASCADE;
DROP SCHEMA IF EXISTS common_schema CASCADE;
DROP SCHEMA IF EXISTS dc_schema CASCADE;
DROP SCHEMA IF EXISTS rvw_schema CASCADE;
DROP SCHEMA IF EXISTS admin_schema CASCADE;
DROP SCHEMA IF EXISTS ssa_schema CASCADE;
DROP SCHEMA IF EXISTS st_schema CASCADE;
```
**娉ㄦ剰锛?* `public` schema涓<61>殑鍘熷<E98D98>鏁版嵁浠嶇劧瀹屾暣淇濈暀锛屽彲浠ョ珛鍗虫仮澶嶄娇鐢ㄣ€?
---
## 馃摑 娉ㄦ剰浜嬮」
### 1. 鍘熷<E98D98>鏁版嵁淇濈暀
鈿狅笍 **public schema涓<61>殑13涓<33>師濮嬭〃鏈<E38083>垹闄?*锛屼粛鐒朵繚鐣欎綔涓哄<E6B693>浠姐€?
**寤鸿<E5AFA4>锛?*
- Week 1瀹屾垚骞跺厖鍒嗘祴璇曞悗锛屽啀鑰冭檻鍒犻櫎public涓<63>殑琛?
- 鍒犻櫎鍓嶅姟蹇呯淇濇柊Schema杩愯<E69DA9>绋冲畾
### 2. Prisma閰嶇疆鏇存柊
鈿狅笍 **褰撳墠Prisma閰嶇疆灏氭湭鏇存柊**锛屼粛鎸囧悜public schema銆?
**褰卞搷锛?*
- 鐜版湁浠爜浠嶇劧浣跨敤public schema
- 蹇呴』瀹屾垚Day 4鐨凱risma閰嶇疆浠诲姟
### 3. 搴旂敤浠爜鏈<E7889C>慨鏀?
鈿狅笍 **鍚庣<E98D9A>爜灏氭湭淇<E6B9AD>敼**锛屼粛浣跨敤鏃х殑Prisma Client銆?
**褰卞搷锛?*
- 搴旂敤鏆傛椂鏃犳硶浣跨敤鏂癝chema
- 蹇呴』瀹屾垚Day 5鐨勪唬鐮侀€傞厤浠诲姟
---
## 鉁?鎬荤粨
### 鎴愬姛鎸囨爣
- 鉁?10涓猄chema鍒涘缓鎴愬姛鐜囷細100%
- 鉁?11涓<31>〃杩佺Щ鎴愬姛鐜囷細100%
- 鉁?鏁版嵁瀹屾暣鎬э細100%
- 鉁?澶栭敭瀹屾暣鎬э細100%
- 鉁?鎬绘墽琛屾椂闂达細< 2鍒嗛挓
### 鏋舵瀯鏀硅繘
1. 鉁?**妯″潡鍖栭殧绂?* - 姣忎釜涓氬姟妯″潡鐙<E6BDA1>珛Schema
2. 鉁?**鏁版嵁瀹夊叏** - Schema绾у埆鏉冮檺鎺у
3. 鉁?**鎵╁睍鎬у己** - 7涓<37>┖Schema闅忔椂鍙<E6A482>墿灞?
4. 鉁?**娓愯繘寮忓疄鏂?* - 鍏堣縼绉绘牳蹇冿紝鍏朵綑鎸夐渶鎵╁睍
### 鎶€鏈<E282AC>€哄姟
1. 鈿狅笍 UUID vs TEXT绫诲瀷 - 鏈<>潵鍙<E6BDB5>€冭檻缁熶竴涓篣UID
2. 鈿狅笍 瀛楁<E7809B>鍛藉悕瑙勮寖 - Prisma @map浣跨敤涓嶄竴鑷?
3. 鈿狅笍 public schema娓呯悊 - 闇€瑕佸湪绋冲畾鍚庢竻鐞?
---
**鎶ュ憡鐢熸垚鏃堕棿锛?* 2025-11-12
**涓嬩竴姝ワ細** 寮€濮嬩换鍔? - Prisma澶歋chema閰嶇疆 猸愨瓙猸?
---
**馃帀 鎭<>枩锛丼chema闅旂<E99785>鏋舵瀯杩佺Щ椤哄埄瀹屾垚锛侌煄?*