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,11 +1,11 @@
|
||||
# 企业微信注册与配置指南
|
||||
# 隡<EFBFBD><EFBFBD>敺桐縑瘜典<EFBFBD>銝𡡞<EFBFBD>蝵格<EFBFBD><EFBFBD>?
|
||||
|
||||
> **目标**:获取企业微信API凭证,用于IIT Manager Agent发送质控预警卡片
|
||||
> **预计时间**:20分钟
|
||||
> **<EFBFBD>格<EFBFBD>**嚗朞繮<E69C9E>碶<EFBFBD>銝𡁜凝靽,PI<50>剛<EFBFBD>嚗𣬚鍂鈭穉IT Manager Agent<EFBFBD>煾<EFBFBD><EFBFBD>捶<EFBFBD>折<EFBFBD>霅血㨃<EFBFBD>?
|
||||
> **憸<EFBFBD>恣<EFBFBD>園𡢿**嚗?0<><30><EFBFBD>
|
||||
|
||||
---
|
||||
|
||||
## 📋 步骤1:注册企业微信账号
|
||||
## <EFBFBD><EFBFBD> 甇仿炊1嚗𡁏釣<F0A1818F>䔶<EFBFBD>銝𡁜凝靽∟揭<E2889F>?
|
||||
|
||||
### 1.1 霈輸䔮隡<E494AE><E99AA1>敺桐縑摰条<E691B0>
|
||||
|
||||
@@ -15,28 +15,28 @@
|
||||
|
||||
1. <20>孵稬"**蝡见朖瘜典<E7989C>**"
|
||||
2. <20>㗇𥋘"**隡<><E99AA1>**"蝐餃<E89D90>
|
||||
3. 填写企业信息:
|
||||
- 企业名称:`测试医院`(或您的实际机构名称)
|
||||
3. 憛怠<EFBFBD>隡<EFBFBD><EFBFBD>靽⊥<EFBFBD>嚗?
|
||||
- 隡<EFBFBD><EFBFBD><EFBFBD>滨妍嚗䫤瘚贝<EFBFBD><EFBFBD>駁堺`嚗<><E59A97><EFBFBD>函<EFBFBD>摰鮋<E691B0><E9AE8B>箸<EFBFBD><E7AEB8>滨妍嚗?
|
||||
- 銵䔶<E98AB5>蝐餃<E89D90>嚗䫤<E59A97>餌<EFBFBD><E9A48C>亙熒`
|
||||
- 隡<><E99AA1>鈭箸㺭嚗䫤100鈭箔誑銝㞗
|
||||
- 蝞∠<E89D9E><E288A0>睃<EFBFBD><E79D83>㵪<EFBFBD><E3B5AA>函<EFBFBD>憪枏<E686AA>
|
||||
- 蝞∠<E89D9E><E288A0>䀹<EFBFBD><E480B9>綽<EFBFBD><E7B6BD>函<EFBFBD><E587BD>𧢲㦤<F0A7A2B2>瘀<EFBFBD><E79880>交𤣰撉諹<E69289><E8ABB9><EFBFBD><EFBFBD>
|
||||
4. 完成验证,注册成功
|
||||
4. 摰峕<EFBFBD>撉諹<EFBFBD>嚗峕釣<EFBFBD>峕<EFBFBD><EFBFBD>?
|
||||
|
||||
---
|
||||
|
||||
## 📋 步骤2:创建自建应用
|
||||
## <EFBFBD><EFBFBD> 甇仿炊2嚗𡁜<E59A97>撱箄䌊撱箏<E692B1><E7AE8F>?
|
||||
|
||||
### 2.1 <20>餃<EFBFBD>蝞∠<E89D9E><E288A0>𤾸蝱
|
||||
|
||||
1. 霈輸䔮嚗冴ttps://work.weixin.qq.com/wework_admin/loginpage_wx
|
||||
2. 使用企业微信APP扫码登录(需先在手机上下载企业微信APP)
|
||||
2. 雿輻鍂隡<EFBFBD><EFBFBD>敺桐縑APP<EFBFBD>怎<EFBFBD><EFBFBD>餃<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD><EFBFBD>銁<EFBFBD>𧢲㦤銝𠹺<EFBFBD>頧賭<EFBFBD>銝𡁜凝靽,PP嚗?
|
||||
|
||||
### 2.2 <20>𥕦遣摨𠉛鍂
|
||||
|
||||
1. 进入**【应用管理】** → **【自建】** → **【创建应用】**
|
||||
1. 餈𥕦<EFBFBD>**<2A>𣂼<EFBFBD><F0A382BC>函恣<E587BD><E681A3><EFBFBD>?* <20>?**<2A>鞱䌊撱箝<E692B1>?* <20>?**<2A>𣂼<EFBFBD>撱箏<E692B1><E7AE8F>具<EFBFBD>?*
|
||||
|
||||
2. 填写应用信息:
|
||||
2. 憛怠<EFBFBD>摨𠉛鍂靽⊥<EFBFBD>嚗?
|
||||
- **摨𠉛鍂<F0A0899B>滨妍**嚗䫤IIT Manager Agent嚗<74><E59A97>霂𤏪<E99C82>`
|
||||
- **摨𠉛鍂Logo**嚗帋<E59A97>隡牐<E99AA1>銝芸㦛<E88AB8><E3A69B><EFBFBD><EFBFBD>舀<EFBFBD><E88880>嗡蝙<E597A1>券<EFBFBD>霈歹<E99C88>
|
||||
- **摨𠉛鍂隞讠<E99A9E>**嚗䫤IIT<49>𠉛弦<F0A0899B>箄<EFBFBD>韐冽綉<E586BD>拇<EFBFBD> - <20>唳旿韐券<E99F90>摰墧𧒄<E5A2A7>烐綉`
|
||||
@@ -44,19 +44,19 @@
|
||||
|
||||
3. <20>孵稬"**<2A>𥕦遣摨𠉛鍂**"
|
||||
|
||||
### 2.3 获取API凭证(重要!)
|
||||
### 2.3 <EFBFBD>瑕<EFBFBD>API<EFBFBD>剛<EFBFBD>嚗<EFBFBD><EFBFBD>閬<EFBFBD><EFBFBD>嚗?
|
||||
|
||||
创建成功后,在应用详情页可以看到:
|
||||
<EFBFBD>𥕦遣<EFBFBD>𣂼<EFBFBD><EFBFBD>𠬍<EFBFBD><EFBFBD>典<EFBFBD><EFBFBD>刻祕<EFBFBD><EFBFBD>△<EFBFBD>臭誑<EFBFBD>见<EFBFBD>嚗?
|
||||
|
||||
```
|
||||
隡<EFBFBD><EFBFBD>ID嚗㇃orpID嚗㚁<EFBFBD> ww1234567890abcdef
|
||||
AgentID: 1000002
|
||||
Secret: 点击"查看"按钮查看
|
||||
AgentID嚗? 1000002
|
||||
Secret嚗? <EFBFBD>孵稬"<22>亦<EFBFBD>"<22>厰僼<E58EB0>亦<EFBFBD>
|
||||
```
|
||||
|
||||
**⚠️ 重要提示**:
|
||||
**<EFBFBD>𩤃<EFBFBD> <20>滩<EFBFBD><E6BBA9>鞟內**嚗?
|
||||
- **Secret** <20>芣遬蝷箔<E89DB7>甈∴<E79488>霂瑞<E99C82><E7919E>喳<EFBFBD><E596B3>嗡<EFBFBD>摮矋<E691AE>
|
||||
- 如果忘记Secret,需要重置(会导致旧Secret失效)
|
||||
- 憒<EFBFBD><EFBFBD>敹䁅扇Secret嚗屸<EFBFBD>閬<EFBFBD><EFBFBD>蝵殷<EFBFBD>隡𡁜紡<EFBFBD>湔唂Secret憭望<EFBFBD>嚗?
|
||||
|
||||
---
|
||||
|
||||
@@ -64,10 +64,10 @@ Secret: 点击"查看"按钮查看
|
||||
|
||||
### 3.1 霈曄蔭蝵煾△<E785BE><E296B3><EFBFBD><EFBFBD>蹆S-SDK
|
||||
|
||||
1. 在应用详情页,找到"**网页授权及JS-SDK**"
|
||||
2. 设置**可信域名**:
|
||||
1. <EFBFBD>典<EFBFBD><EFBFBD>刻祕<EFBFBD><EFBFBD>△嚗峕𪄳<EFBFBD>?**蝵煾△<E785BE><E296B3><EFBFBD><EFBFBD>蹆S-SDK**"
|
||||
2. 霈曄蔭**<2A>臭縑<E887AD>笔<EFBFBD>**嚗?
|
||||
- 撘<><E69298>𤑳㴓憓<E3B493><E68693>`localhost`嚗<EFBFBD><EFBFBD><EFBFBD>𨀣𣈲<EFBFBD><EFBFBD><EFBFBD>
|
||||
- 生产环境:您的实际域名(如 `iit.example.com`)
|
||||
- <EFBFBD>煺漣<EFBFBD>臬<EFBFBD>嚗𡁏<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㵪<EFBFBD>憒?`iit.example.com`嚗?
|
||||
|
||||
### 3.2 霈曄蔭<E69B84>交𤣰瘨<F0A4A3B0><E798A8>
|
||||
|
||||
@@ -77,13 +77,13 @@ Secret: 点击"查看"按钮查看
|
||||
### 3.3 霈曄蔭<E69B84><E894AD><EFBFBD><EFBFBD><EFBFBD>凒
|
||||
|
||||
蝖桐<EFBFBD>摨𠉛鍂<EFBFBD>劐誑銝𧢲<EFBFBD><EFBFBD>琜<EFBFBD>
|
||||
- ✅ **发送消息到微信** - 核心功能
|
||||
- ✅ **成员信息读取** - 用于获取用户OpenID
|
||||
- ✅ **通讯录管理** - 用于用户映射
|
||||
- <EFBFBD>?**<2A>煾<EFBFBD><E785BE><EFBFBD><EFBFBD>臬<EFBFBD>敺桐縑** - <EFBFBD>詨<EFBFBD><EFBFBD>蠘<EFBFBD>
|
||||
- <EFBFBD>?**<2A>𣂼<EFBFBD>靽⊥<E99DBD>霂餃<E99C82>** - <EFBFBD>其<EFBFBD><EFBFBD>瑕<EFBFBD><EFBFBD>冽<EFBFBD>OpenID
|
||||
- <EFBFBD>?**<2A>朞悖敶閧恣<E996A7>?* - <20>其<EFBFBD><E585B6>冽<EFBFBD><E586BD>惩<EFBFBD>
|
||||
|
||||
---
|
||||
|
||||
## 📋 步骤4:配置到项目中
|
||||
## <EFBFBD><EFBFBD> 甇仿炊4嚗𡁻<E59A97>蝵桀<E89DB5>憿寧𤌍銝?
|
||||
|
||||
### 4.1 憭滚<E686AD><E6BB9A>剛<EFBFBD>
|
||||
|
||||
@@ -95,7 +95,7 @@ AgentID: 1000002
|
||||
Secret: abc123xyz789_your_secret_here
|
||||
```
|
||||
|
||||
### 4.2 添加到 .env 文件
|
||||
### 4.2 瘛餃<EFBFBD><EFBFBD>?.env <EFBFBD><EFBFBD>辣
|
||||
|
||||
蝻𤥁<EFBFBD> `AIclinicalresearch/backend/.env`嚗峕溶<EFBFBD>𩤃<EFBFBD>
|
||||
|
||||
@@ -106,9 +106,9 @@ WECHAT_CORP_SECRET=abc123xyz789_your_secret_here
|
||||
WECHAT_AGENT_ID=1000002
|
||||
```
|
||||
|
||||
**⚠️ 注意**:
|
||||
- 不要提交 `.env` 文件到Git(已在 `.gitignore` 中)
|
||||
- 生产环境使用独立的企业微信应用
|
||||
**<EFBFBD>𩤃<EFBFBD> 瘜冽<E7989C>**嚗?
|
||||
- 銝滩<EFBFBD><EFBFBD>𣂷漱 `.env` <EFBFBD><EFBFBD>辣<EFBFBD>蚣it嚗<EFBFBD>歇<EFBFBD>?`.gitignore` 銝哨<EFBFBD>
|
||||
- <EFBFBD>煺漣<EFBFBD>臬<EFBFBD>雿輻鍂<EFBFBD>祉<EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝𡁜凝靽∪<EFBFBD><EFBFBD>?
|
||||
|
||||
---
|
||||
|
||||
@@ -116,18 +116,18 @@ WECHAT_AGENT_ID=1000002
|
||||
|
||||
### 5.1 <20>滚鍳<E6BB9A>𡒊垢<F0A1928A>滚𦛚
|
||||
|
||||
保存 `.env` 后,重启后端:
|
||||
靽嘥<EFBFBD> `.env` <EFBFBD>𠬍<EFBFBD><EFBFBD>滚鍳<EFBFBD>𡒊垢嚗?
|
||||
|
||||
```bash
|
||||
# 停止当前服务(Ctrl+C)
|
||||
# <EFBFBD>𨀣迫敶枏<EFBFBD><EFBFBD>滚𦛚嚗㇃trl+C嚗?
|
||||
# <20>齿鰵<E9BDBF>臬𢆡
|
||||
cd D:\MyCursor\AIclinicalresearch\backend
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 5.2 手动测试(使用Postman或curl)
|
||||
### 5.2 <EFBFBD>见𢆡瘚贝<EFBFBD>嚗<EFBFBD>蝙<EFBFBD>沌ostman<EFBFBD>鈪url嚗?
|
||||
|
||||
**测试端点**(后续Day 5会创建):
|
||||
**瘚贝<EFBFBD>蝡舐<EFBFBD>**嚗<><E59A97>蝏胖ay 5隡𡁜<E99AA1>撱綽<E692B1>嚗?
|
||||
|
||||
```bash
|
||||
POST http://localhost:3001/api/v1/iit/test/wechat-push
|
||||
@@ -136,73 +136,73 @@ Content-Type: application/json
|
||||
{
|
||||
"toUser": "YourUserID",
|
||||
"title": "瘚贝<E7989A><E8B49D>𡁶䰻",
|
||||
"description": "这是一条来自IIT Manager的测试消息",
|
||||
"description": "餈蹱糓銝<EFBFBD><EFBFBD>⊥䔉<EFBFBD>杷IT Manager<EFBFBD><EFBFBD><EFBFBD>霂閙<EFBFBD><EFBFBD>?,
|
||||
"url": "http://localhost:5173"
|
||||
}
|
||||
```
|
||||
|
||||
**预期结果**:
|
||||
- ✅ 返回200状态码
|
||||
- ✅ 企业微信APP收到卡片消息
|
||||
**憸<EFBFBD><EFBFBD>蝏𤘪<EFBFBD>**嚗?
|
||||
- <EFBFBD>?餈𥪜<E9A488>200<30>嗆<EFBFBD><E59786><EFBFBD>
|
||||
- <EFBFBD>?隡<><E99AA1>敺桐縑APP<50>嗅<EFBFBD><E59785>∠<EFBFBD>瘨<EFBFBD><E798A8>
|
||||
|
||||
---
|
||||
|
||||
## 📋 常见问题(FAQ)
|
||||
## <EFBFBD><EFBFBD> 撣貉<E692A3><E8B289>桅<EFBFBD>嚗㇅AQ嚗?
|
||||
|
||||
### Q1:我没有企业,可以注册吗?
|
||||
### Q1嚗𡁏<EFBFBD>瘝⊥<EFBFBD>隡<EFBFBD><EFBFBD>嚗<EFBFBD>虾隞交釣<EFBFBD><EFBFBD><EFBFBD>嚗?
|
||||
|
||||
**A**:可以!选择"**个人**"或"**个体工商户**"类型注册,功能完全相同。
|
||||
**A**嚗𡁜虾隞伐<E99A9E><E4BC90>㗇𥋘"**銝芯犖**"<22>?**銝芯<E98A9D>撌亙<E6928C><E4BA99>?*"蝐餃<E89D90>瘜典<E7989C>嚗<EFBFBD><E59A97><EFBFBD>賢<EFBFBD><E8B3A2>函㮾<E587BD>䎚<EFBFBD>?
|
||||
|
||||
### Q2嚗锭ecret敹䁅扇鈭<E68987><E988AD>𦒘<EFBFBD><F0A69298>痹<EFBFBD>
|
||||
|
||||
**A**:在应用详情页点击"**重置Secret**",但会导致旧Secret失效。
|
||||
**A**嚗𡁜銁摨𠉛鍂霂行<E99C82>憿萇<E686BF><E89087>?**<EFBFBD>滨蔭Secret**"嚗䔶<E59A97>隡𡁜紡<F0A1819C>湔唂Secret憭望<EFBFBD><EFBFBD>?
|
||||
|
||||
### Q3:测试环境需要实名认证吗?
|
||||
### Q3嚗𡁏<EFBFBD>霂閧㴓憓<EFBFBD><EFBFBD>閬<EFBFBD><EFBFBD><EFBFBD>滩恕霂<EFBFBD><EFBFBD>嚗?
|
||||
|
||||
**A**:不需要。未认证企业也可以使用自建应用的全部功能,只是人数有限制(100人)。
|
||||
**A**嚗帋<E59A97><E5B88B><EFBFBD>閬<EFBFBD><E996AC><EFBFBD>𧊋霈方<E99C88>隡<EFBFBD><E99AA1>銋笔虾隞乩蝙<E4B9A9>刻䌊撱箏<E692B1><E7AE8F>函<EFBFBD><E587BD>券<EFBFBD><E588B8>蠘<EFBFBD>嚗<EFBFBD>蘨<EFBFBD>臭犖<E887AD>唳<EFBFBD><E594B3>𣂼<EFBFBD>嚗?00鈭綽<E988AD><E7B6BD>?
|
||||
|
||||
### Q4:如何找到用户的 UserID?
|
||||
### Q4嚗𡁜<EFBFBD>雿閙𪄳<EFBFBD>啁鍂<EFBFBD>瑞<EFBFBD> UserID嚗?
|
||||
|
||||
**A**:
|
||||
1. 方法1:登录管理后台 → 通讯录 → 点击成员 → 查看"账号"
|
||||
**A**嚗?
|
||||
1. <EFBFBD>寞<EFBFBD>1嚗𡁶蒈敶閧恣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>?<3F>朞悖敶?<3F>?<3F>孵稬<E5ADB5>𣂼<EFBFBD> <20>?<3F>亦<EFBFBD>"韐血噡"
|
||||
2. <20>寞<EFBFBD>2嚗朞<E59A97><E69C9E>其<EFBFBD>銝𡁜凝靽,PI<50>瑕<EFBFBD>嚗䫤GET /cgi-bin/user/getuserinfo`
|
||||
|
||||
### Q5:消息发送失败,返回40014错误?
|
||||
### Q5嚗𡁏<EFBFBD><EFBFBD>臬<EFBFBD><EFBFBD><EFBFBD>仃韐伐<EFBFBD>餈𥪜<EFBFBD>40014<EFBFBD>躰秤嚗?
|
||||
|
||||
**A**嚗䫤invalid access_token`嚗<>虾<EFBFBD>賢<EFBFBD><E8B3A2>𩤃<EFBFBD>
|
||||
- Secret<65>滨蔭<E6BBA8>躰秤
|
||||
- Access Token过期(需重新获取)
|
||||
- Access Token餈<EFBFBD><EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>齿鰵<EFBFBD>瑕<EFBFBD>嚗?
|
||||
- CorpID<49>䨝gentID<49>滨蔭<E6BBA8>躰秤
|
||||
|
||||
---
|
||||
|
||||
## ✅ 验收标准
|
||||
## <EFBFBD>?撉峕𤣰<E5B395><F0A4A3B0><EFBFBD>
|
||||
|
||||
完成以下任务后,Day 1就完美收官了:
|
||||
摰峕<EFBFBD>隞乩<EFBFBD>隞餃𦛚<EFBFBD>𠬍<EFBFBD>Day 1撠勗<E692A0>蝢擧𤣰摰䀝<E691B0>嚗?
|
||||
|
||||
- [ ] 隡<><E99AA1>敺桐縑韐血噡瘜典<E7989C><E585B8>𣂼<EFBFBD>
|
||||
- [ ] <20>芸遣摨𠉛鍂<F0A0899B>𥕦遣<F0A595A6>𣂼<EFBFBD>
|
||||
- [ ] <20>瑕<EFBFBD><E79195>蚓orpID<49><44>gentID<49><44>ecret
|
||||
- [ ] 配置到 `.env` 文件
|
||||
- [ ] <20>滨蔭<E6BBA8>?`.env` <20><>辣
|
||||
- [ ] <20>𡒊垢<F0A1928A>滚𦛚<E6BB9A>賣迤撣詨鍳<E8A9A8>剁<EFBFBD><E58981>䭾𥁒<E4ADBE>辷<EFBFBD>
|
||||
|
||||
---
|
||||
|
||||
## 🎯 下一步
|
||||
## <EFBFBD>㴓 銝衤<E98A9D>甇?
|
||||
|
||||
摰峕<EFBFBD>隡<EFBFBD><EFBFBD>敺桐縑<EFBFBD>滨蔭<EFBFBD>𠬍<EFBFBD>Day 2<>睲賑撠<E8B391><E692A0>憪页<E686AA>
|
||||
|
||||
1. **REDCap API Adapter开发**(核心功能)
|
||||
2. **SyncManager开发**(混合同步模式)
|
||||
3. 实现REDCap数据拉取和轮询
|
||||
1. **REDCap API Adapter撘<EFBFBD><EFBFBD>?*嚗<>瓲敹<E793B2><E695B9><EFBFBD>踝<EFBFBD>
|
||||
2. **SyncManager撘<EFBFBD><EFBFBD>?*嚗<>毽<EFBFBD><E6AFBD><EFBFBD>甇交芋撘𧶏<E69298>
|
||||
3. 摰䂿緵REDCap<EFBFBD>唳旿<EFBFBD>匧<EFBFBD><EFBFBD>諹蔭霂?
|
||||
|
||||
预计完成时间:8小时
|
||||
憸<EFBFBD>恣摰峕<EFBFBD><EFBFBD>園𡢿嚗?撠𤩺𧒄
|
||||
|
||||
---
|
||||
|
||||
**创建日期**:2025-12-31
|
||||
**维护者**:开发团队
|
||||
**参考文档**:
|
||||
**<EFBFBD>𥕦遣<EFBFBD>交<EFBFBD>**嚗?025-12-31
|
||||
**蝏湔擪<EFBFBD>?*嚗𡁜<E59A97><F0A1819C>穃𣪧<E7A983>?
|
||||
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>獢?*嚗?
|
||||
- 隡<><E99AA1>敺桐縑摰䀹䲮<E480B9><E4B2AE>﹝嚗冴ttps://developer.work.weixin.qq.com/document/
|
||||
- <20>煾<EFBFBD><E785BE><EFBFBD><EFBFBD>冽<EFBFBD><E586BD>荔<EFBFBD>https://developer.work.weixin.qq.com/document/path/90236
|
||||
|
||||
@@ -225,5 +225,6 @@ Content-Type: application/json
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user