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:
2026-01-14 19:15:01 +08:00
parent 3d35e9c58b
commit 1b53ab9d52
386 changed files with 52096 additions and 65238 deletions

View File

@@ -1,99 +1,99 @@
# <20><EFBFBD>憭滨<E686AD><E6BBA8>滨垢<E6BBA8><EFBFBD><EFBFBD>㟲 - Settings憿菟𢒰隡睃<E99AA1>
**<EFBFBD><EFBFBD>**: 2025-01-23
**调整原因**: 用户反馈逻辑错误,需要区分"文献列表导入"和"PDF上传"两个独立步骤
**状态**: ✅ 已完成
**<EFBFBD><EFBFBD><EFBFBD>**: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>躰秤嚗屸<EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD>𡑒”撖澆<E69296>"<22>?PDF銝𠹺<E98A9D>"銝支葵<E694AF><EFBFBD>甇仿炊
**<EFBFBD><EFBFBD>?*: <20>?撌脣<E6928C><E884A3>?
---
## <20>𣞁 **<2A><EFBFBD><E6A185>𤑳緵**
### 原始错误设计:
### <EFBFBD><EFBFBD><EFBFBD>躰秤霈曇恣嚗?
```
步骤1: 导入待复筛文献
├── Tab1: 从标题摘要初筛导入
├── Tab2: 手动上传Excel ❌ 错误设计
│ └── 上传包含文献信息的Excel混淆了元信息和PDF
甇仿炊1: 撖澆<E69296><EFBFBD><E695BA>蝑𥟇<E89D91><F0A59F87>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Tab1: 隞擧<EFBFBD>憸䀹<EFBFBD><EFBFBD><EFBFBD>蝑𥕦紡<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Tab2: <EFBFBD>见𢆡銝𠹺<EFBFBD>Excel <20>?<3F>躰秤霈曇恣
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> 銝𠹺<E98A9D><F0A0B9BA><EFBFBD><EFBFBD><E98984>讃靽⊥<E99DBD><E28AA5><EFBFBD>xcel嚗<6C>毽瘛<E6AFBD><E7989B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PDF嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Tab3: 隞𡒊䰻霂<E4B0BB><E99C82><EFBFBD>㗇𥋘
```
**错误点**
**<EFBFBD>躰秤<EFBFBD>?*嚗?
- Tab2<62>㛖內<E39B96>臭誑<E887AD><EFBFBD>Excel撖澆<E69296>PDF嚗䔶<E59A97>Excel銝滚虾<E6BB9A><EFBFBD><E8B3A2>促DF<44><46>
- 没有区分"文献元信息"和"PDF全文"两个概念
- 瘝⊥<EFBFBD><EFBFBD><EFBFBD>"<22><><EFBFBD><E8AE83><EFBFBD>?<3F>?PDF<44><EFBFBD>"銝支葵璁<E891B5>
-<><E7989A>銝齿<E98A9D><E9BDBF><EFBFBD><E5A086><EFBFBD>摰寞<E691B0>瘛瑟<E7989B>
---
## ✅ **调整后的正确逻辑**
## <EFBFBD>?**靚<><EFBFBD>𡒊<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**
### 三步流程:
### 銝㗇郊瘚<EFBFBD><EFBFBD>嚗?
```
甇仿炊1: <20><EFBFBD><EFBFBD><E695BA>蝑𤤿<E89D91><F0A4A4BF><EFBFBD><EFBFBD>𡑒”嚗<E2809D><EFBFBD><EFBFBD><E79195><EFBFBD><EFBFBD><EFBFBD>
├── Tab1: 从标题摘要初筛导入
│ └── 导入上一环节"已纳入"的文献元信息
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Tab1: 隞擧<EFBFBD>憸䀹<EFBFBD><EFBFBD><EFBFBD>蝑𥕦紡<EFBFBD>?
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> 撖澆<E69296>銝𠹺<E98A9D><F0A0B9BA><EFBFBD>"撌脩熙<E884A9>?<3F><><EFBFBD><EFBFBD><EFBFBD>靽⊥<E99DBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Tab2: <20>见𢆡銝𠹺<E98A9D>Excel
<20><EFBFBD><E5A999><EFBFBD> 銝𠹺<E98A9D><F0A0B9BA><EFBFBD><EFBFBD><E98984><EFBFBD><E8AE83><EFBFBD><EFBFBD>Excel嚗㇍itle, Abstract, PMID蝑㚁<E89D91>
<20><EFBFBD><E5A999><EFBFBD> 銝滚<E98A9D><E6BB9A>促DF<44><46>
步骤2: 上传全文文献(为每篇文献上传PDF
甇仿炊2: 銝𠹺<E98A9D><F0A0B9BA><EFBFBD><E586BD><EFBFBD>讃嚗<E8AE83>蛹瘥讐<E798A5><E8AE90><EFBFBD>讃銝𠹺<E98A9D>PDF嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>曄內<E69B84><E585A7><EFBFBD>𡑒”銵冽聢
├── 每行显示PDF状态待上传/上传中/已就绪/失败)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 瘥讛<E798A5><E8AE9B>曄內PDF<44><EFBFBD><E59786><EFBFBD><EFBFBD><E695BA>隡?銝𠹺<E98A9D>銝?撌脣停蝏?憭梯揖嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E6BBA2><EFBFBD>靘𥕢舅蝘齿䲮撘𧶏<E69298>
├── (1) 手动上传PDFMVP当前方式
└── (2) 从知识库选择(技术债务)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (1) <20>见𢆡銝𠹺<E98A9D>PDF嚗㇈VP敶枏<E695B6><E69E8F><EFBFBD>嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (2) 隞𡒊䰻霂<E4B0BB><E99C82><EFBFBD>㗇𥋘嚗<F0A58B98><E59A97><EFBFBD><EFBFBD>箏𦛚嚗?
甇仿炊3: <20>臬𢆡<E887AC><EFBFBD>憭滨<E686AD>
└── 要求至少1篇文献的PDF已就绪
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><><E996AC>嚗朞秐撠?蝭<><E89DAD><EFBFBD><EFBFBD>PDF撌脣停蝏?
```
---
## <20><> **霂衣<E99C82>靽格㺿<E6A0BC><E3BABF>捆**
### **1. 步骤1改名获取待复筛的文献列表**
### **1. 甇仿炊1<EFBFBD><EFBFBD>嚗朞繮<EFBFBD><EFBFBD>憭滨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銵?*
**修改前**
**靽格㺿<EFBFBD>?*嚗?
```
步骤1: 导入待复筛文献
甇仿炊1: 撖澆<E69296><EFBFBD><E695BA>蝑𥟇<E89D91><F0A59F87>?
```
**修改后**
**靽格㺿<EFBFBD>?*嚗?
```
甇仿炊1: <20><EFBFBD><EFBFBD><E695BA>蝑𤤿<E89D91><F0A4A4BF><EFBFBD><EFBFBD>𡑒”
说明首先导入文献的基本信息标题、摘要、作者等PDF全文将在下一步上传
霂湔<EFBFBD>嚗𡁻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>箸𧋦靽⊥<EFBFBD><EFBFBD><EFBFBD>憸塩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗㚁<EFBFBD>PDF<EFBFBD><EFBFBD><EFBFBD>銁銝衤<EFBFBD>甇乩<EFBFBD>隡?
```
**改动理由**
- 明确说明这一步只获取"文献列表"(元信息)
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- <EFBFBD>𡒊霂湔<EFBFBD>餈嗘<EFBFBD>甇亙蘨<EFBFBD><EFBFBD>"<22><><EFBFBD>𡑒”"嚗<><E59A97>靽⊥<E99DBD>嚗?
- 銝滚<E98A9D><E6BB9A>促DF<44><46>
---
### **2. Tab2改名手动上传Excel只含元信息**
### **2. Tab2<EFBFBD><EFBFBD>嚗𡁏<EFBFBD><EFBFBD><EFBFBD>隡𪊲xcel嚗<EFBFBD><EFBFBD><EFBFBD>靽⊥<EFBFBD>嚗?*
**修改前**
**靽格㺿<EFBFBD>?*嚗?
```jsx
Tab2: <EFBFBD>见𢆡銝𠹺<EFBFBD>Excel
描述上传包含文献列表的Excel文件 没有说明不含PDF
<EFBFBD>讛膩嚗帋<EFBFBD>隡惩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銵函<EFBFBD>Excel<EFBFBD><EFBFBD>辣嚗<EFBFBD><EFBFBD> <EFBFBD>霂湔<EFBFBD>銝滚鉄PDF嚗?
```
**修改后**
**靽格㺿<EFBFBD>?*嚗?
```jsx
Tab2: <EFBFBD>见𢆡銝𠹺<EFBFBD>Excel
说明上传包含文献元信息的Excel文件标题摘要PMID不包含PDF文件PDF全文将在下一步上传
霂湔<EFBFBD>嚗帋<EFBFBD>隡惩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>xcel<EFBFBD><EFBFBD>辣嚗<EFBFBD><EFBFBD>憸塩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>MID蝑㚁<EFBFBD>嚗䔶<EFBFBD><EFBFBD><EFBFBD>鉄PDF<EFBFBD><EFBFBD><EFBFBD><EFBFBD>DF<EFBFBD><EFBFBD><EFBFBD>銁銝衤<EFBFBD>甇乩<EFBFBD>隡𨬭<EFBFBD>?
Excel模板字段说明
必填字段
Title标题
Abstract摘要
Excel踎摮埈挾霂湔<EFBFBD>?
<EFBFBD>摮埈挾嚗?
<EFBFBD>?Title<EFBFBD><EFBFBD>憸矋<EFBFBD>
<EFBFBD>?Abstract<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD>畾蛛<EFBFBD>
PMIDDOIAuthors作者Journal期刊Year年份
<EFBFBD>?PMID<EFBFBD><EFBFBD>OI<EFBFBD><EFBFBD>uthors<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ournal<EFBFBD><EFBFBD><EFBFBD>𠺪<EFBFBD><EFBFBD><EFBFBD>ear<EFBFBD>僑隞踝<EFBFBD>
```
**改动理由**
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- <20>𡒊霂湔<E99C82>"銝滚<E98A9D><E6BB9A>促DF<44><46>辣"
- <20>𣂷<EFBFBD>Excel璅⊥踎摮埈挾霂湔<E99C82>
- 瘛餃<E7989B>"銝贝蝸Excel璅⊥踎"<22>厰僼
@@ -102,168 +102,168 @@ Excel模板字段说明
### **3. <20>𣳇膄Tab3嚗帋<E59A97><E5B88B><EFBFBD>摨㯄<E691A8>㗇𥋘**
**修改前**
**靽格㺿<EFBFBD>?*嚗?
```
Tab3: 隞𡒊䰻霂<E4B0BB><E99C82><EFBFBD>㗇𥋘
```
**修改后**
**靽格㺿<EFBFBD>?*嚗?
```
删除Tab3知识库功能移到步骤2
<EFBFBD><EFBFBD><EFBFBD>三ab3嚗𣬚䰻霂<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝘餃<EFBFBD>甇仿炊2嚗?
```
**改动理由**
- 知识库选择应该在"上传PDF"环节,而不是"获取文献列表"环节
- 简化Tab数量2个Tab更清晰
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- <EFBFBD><EFBFBD>摨㯄<EFBFBD>㗇𥋘摨磰砲<EFBFBD>?銝𠹺<E98A9D>PDF"<22><EFBFBD>嚗諹<E59A97><EFBFBD><E494B6>?<3F><EFBFBD><E79195><EFBFBD><EFBFBD>𡑒”"<22><EFBFBD>
- <EFBFBD><EFBFBD>巁ab<EFBFBD><EFBFBD>嚗?銝枚ab<61><EFBFBD><E6B994><EFBFBD>
---
### **4. 甇仿炊2<E7828A>滚𦶢<E6BB9A><EFBFBD>銝𠹺<E98A9D><F0A0B9BA><EFBFBD><E586BD><EFBFBD>讃**
**修改前**
**靽格㺿<EFBFBD>?*嚗?
```
步骤2: 全文获取与管理
甇仿炊2: <20><EFBFBD><E586BD><EFBFBD>銝𡒊恣<F0A1928A>?
```
**修改后**
**靽格㺿<EFBFBD>?*嚗?
```
甇仿炊2: 銝𠹺<E98A9D><F0A0B9BA><EFBFBD><E586BD><EFBFBD>
说明为每篇文献上传对应的PDF全文。您可以手动上传本地PDF文件或从知识库选择已有PDF开发中
霂湔<EFBFBD>嚗帋蛹瘥讐<EFBFBD><EFBFBD><EFBFBD>讃銝𠹺<EFBFBD>撖孵<EFBFBD><EFBFBD><EFBFBD>DF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>臭誑<EFBFBD>见𢆡銝𠹺<EFBFBD><EFBFBD>砍𧑐PDF<EFBFBD><EFBFBD>辣嚗峕<EFBFBD>隞𡒊䰻霂<EFBFBD><EFBFBD><EFBFBD>㗇𥋘撌脫<EFBFBD>PDF嚗<EFBFBD><EFBFBD><EFBFBD>睲葉嚗剹<EFBFBD>?
```
**改动理由**
- "上传全文文献"比"全文获取与管理"更明确
- 明确说明这一步的目的是"上传PDF"
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- "銝𠹺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>讃"瘥?<3F><EFBFBD><E586BD><EFBFBD>銝𡒊恣<F0A1928A>?<3F><EFBFBD>蝖?
- <EFBFBD>𡒊霂湔<EFBFBD>餈嗘<EFBFBD>甇亦<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?銝𠹺<E98A9D>PDF"
---
### **5. <20><EFBFBD><E6BBA2><EFBFBD>撘綽<E69298><E7B6BD><EFBFBD>銝斤<E98A9D>銝𠹺<E98A9D><F0A0B9BA><EFBFBD>**
**修改前**
**靽格㺿<EFBFBD>?*嚗?
```jsx
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <EFBFBD><EFBFBD>隡𩤃<EFBFBD>[銝𠹺<EFBFBD>PDF]<EFBFBD>厰僼
- 已就绪显示"已就绪"
- 撌脣停蝏迎<EFBFBD><EFBFBD>曄內"撌脣停蝏?
```
**修改后**
**靽格㺿<EFBFBD>?*嚗?
```jsx
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- 未上传/失败
[上传PDF]按钮手动上传本地PDF
[知识库]按钮从知识库选择暂禁用
- <EFBFBD><EFBFBD>?憭梯揖嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> [銝𠹺<EFBFBD>PDF]<EFBFBD>厰僼嚗<EFBFBD><EFBFBD><EFBFBD><EFBFBD>隡䭾𧋦<EFBFBD>訐DF嚗?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<EFBFBD><EFBFBD>摨𨩇<EFBFBD>厰僼嚗<EFBFBD><EFBFBD><EFBFBD><EFBFBD>摨㯄<EFBFBD>㗇𥋘嚗峕<EFBFBD><EFBFBD>鍂嚗?
- 撌脣停蝏迎<EFBFBD>
已完成
[重新上传]按钮允许替换PDF
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>?撌脣<EFBFBD><EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<EFBFBD>齿鰵銝𠹺<EFBFBD>]<EFBFBD>厰僼嚗<EFBFBD><EFBFBD>霈豢𤜯<EFBFBD>DF嚗?
```
**改动理由**
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- <20>𣂷<EFBFBD>銝斤<E98A9D>銝𠹺<E98A9D><F0A0B9BA><EFBFBD><E5ADB5>厰★
- 已就绪的文献也可以重新上传
- 撌脣停蝏芰<EFBFBD><EFBFBD><EFBFBD>讃銋笔虾隞仿<EFBFBD><EFBFBD><EFBFBD>隡?
---
### **6. 批量操作工具栏**
### **6. <EFBFBD><EFBFBD><EFBFBD><EFBFBD>撌亙<EFBFBD><EFBFBD>?*
**新增**
**<EFBFBD><EFBFBD>**嚗?
```jsx
甇仿炊2憿園<EFBFBD>撌亙<EFBFBD><EFBFBD>𧶏<EFBFBD>
- 左侧已选择 X | [批量删除]按钮
- 右侧[从知识库批量导入]按钮暂禁用
- 撌虫儒嚗𡁜歇<EFBFBD>㗇𥋘 X ?| [<EFBFBD><EFBFBD><EFBFBD>𣳇膄]<EFBFBD>厰僼
- <EFBFBD>喃儒嚗靀隞𡒊䰻霂<EFBFBD><EFBFBD><EFBFBD><EFBFBD>撖澆<EFBFBD>]<EFBFBD>厰僼嚗<EFBFBD><EFBFBD><EFBFBD>鍂嚗?
```
**改动理由**
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- <20><EFBFBD><E88880><EFBFBD><E5AFA5><EFBFBD>
- 为未来的知识库批量导入预留入口
- 銝箸𧊋<EFBFBD><EFBFBD><EFBFBD><EFBFBD>摨𤘪鸌<EFBFBD>誩紡<EFBFBD>仿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
---
### **7. <20>鞟內靽⊥<E99DBD>隡睃<E99AA1>**
**修改前**
**靽格㺿<EFBFBD>?*嚗?
```
提示至少需要1篇文献的PDF已就绪才能启动复筛任务。
<EFBFBD>鞟內嚗朞秐撠煾<EFBFBD>閬?蝭<><E89DAD><EFBFBD><EFBFBD>PDF撌脣停蝏芣<E89D8F><E88AA3>賢鍳<E8B3A2><EFBFBD>蝑𥕢遙<F0A595A2><EFBFBD>?
```
**修改后**
**靽格㺿<EFBFBD>?*嚗?
```
未上传任何PDF
提示至少需要1篇文献的PDF已就绪才能启动复筛任务。请点击表格中的【上传PDF】按钮为文献上传全文。
<EFBFBD><EFBFBD>隡牐遙雿𠠬DF嚗?
<EFBFBD>鞟內嚗朞秐撠煾<EFBFBD>閬?蝭<><E89DAD><EFBFBD><EFBFBD>PDF撌脣停蝏芣<E89D8F><E88AA3>賢鍳<E8B3A2><EFBFBD>蝑𥕢遙<F0A595A2><EFBFBD><EFBD9E><EFBFBD>孵稬銵冽聢銝剔<E98A9D><E58994>𣂷<EFBFBD>隡蘯DF<44><EFBFBD><E78390>桐蛹<E6A190><E89BB9>讃銝𠹺<E98A9D><F0A0B9BA><EFBFBD><E586BD>?
<EFBFBD><EFBFBD>PDF撌脣停蝏迎<EFBFBD>
提示:已有 X 篇文献的PDF就绪还有 Y 篇待上传。您可以继续上传剩余PDF或直接启动复筛未上传PDF的文献将被跳过
<EFBFBD>鞟內嚗𡁜歇<EFBFBD>?X 蝭<><E89DAD><EFBFBD><EFBFBD>PDF撠梁貌嚗諹<E59A97><E8ABB9>?Y 蝭<><E89DAD>銝𠹺<E98A9D><F0A0B9BA><EFBFBD><EFBFBD><EFBFBD>臭誑蝏抒賒銝𠹺<E98A9D><F0A0B9BA><EFBFBD>PDF嚗峕<E59A97><E5B395>湔𦻖<E6B994>臬𢆡憭滨<E686AD><EFBFBD>𧊋銝𠹺<E98A9D>PDF<44><46><EFBFBD><EFBFBD><EFBFBD>鋡怨歲餈<E6ADB2><E9A488><EFBFBD>?
<EFBFBD><EFBFBD>PDF撌脣停蝏迎<EFBFBD>
提示:已有 X 篇文献的PDF就绪可以启动全文复筛任务
<EFBFBD>鞟內嚗𡁜歇<EFBFBD>?X 蝭<><E89DAD><EFBFBD><EFBFBD>PDF撠梁貌嚗<E8B28C>虾隞亙鍳<E4BA99><EFBFBD><E585B8><EFBFBD><EFBFBD>蝑𥕢遙<F0A595A2>?
```
**改动理由**
- 根据不同状态显示不同提示
**<EFBFBD>孵𢆡<EFBFBD><EFBFBD>眏**嚗?
- <EFBFBD>寞旿銝滚<EFBFBD><EFBFBD><EFBFBD><EFBFBD>遬蝷箔<EFBFBD><EFBFBD><EFBFBD>蝷?
- <20>𡒊<F0A1928A>羓䰻<E7BE93><EFBFBD>甇仿炊
---
## 🎯 **核心改进点**
## <EFBFBD> **<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?*
### **概念分离**
### **<EFBFBD><EFBFBD><EFBFBD>氖**嚗?
```
文献元信息步骤1
PDF全文文件步骤2
启动筛选步骤3
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>甇仿炊1嚗?
<EFBFBD>?
PDF<EFBFBD><EFBFBD><EFBFBD><EFBFBD>辣嚗<EFBFBD>郊撉?嚗?
<EFBFBD>?
<EFBFBD>臬𢆡蝑偦<EFBFBD><EFBFBD>甇仿炊3嚗?
```
### **流程清晰化**
### **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?*嚗?
1. **甇仿炊1**嚗朞繮<E69C9E>𡝗<EFBFBD><F0A19D97><EFBFBD>銵剁<E98AB5><E58981><EFBFBD><E88ABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E996AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2. **步骤2**为每篇文献上传PDF一对一关联
3. **步骤3**启动全文复筛要求至少1篇PDF就绪
2. **甇仿炊2**嚗帋蛹瘥讐<E798A5><E8AE90><EFBFBD>讃銝𠹺<E98A9D>PDF嚗<46><E59A97>撖嫣<E69296><E5ABA3><EFBFBD>嚗?
3. **甇仿炊3**嚗𡁜鍳<F0A1819C><EFBFBD><E585B8><EFBFBD><EFBFBD>蝑𨥈<E89D91><EFBFBD><E996AC><EFBFBD><EFBFBD>1蝭𤊿DF撠梁貌嚗?
---
## <20><> **靽格㺿蝏蠘恣**
```
修改文件1个
- FulltextSettings.tsx (621行)
靽格㺿<EFBFBD><EFBFBD>辣嚗?銝?
- FulltextSettings.tsx (621銵?
修改内容:
- 删除代码:~50行删除Tab3知识库选择
靽格㺿<EFBFBD><EFBFBD>捆嚗?
- <EFBFBD>𣳇膄隞<EFBFBD><EFBFBD>嚗鰺50銵䕘<EFBFBD><EFBFBD>𣳇膄Tab3<EFBFBD><EFBFBD>摨㯄<EFBFBD>㗇𥋘嚗?
- 靽格㺿隞<E3BABF><E99A9E>嚗鰺150銵䕘<E98AB5><E49598><EFBFBD>甇仿炊霂湔<E99C82><E6B994><EFBFBD><EFBFBD>蝷箔縑<E7AE94><EFBFBD>
- <20><EFBFBD><EFBFBD><E99A9E>嚗鰺30銵䕘<E98AB5><E49598><EFBFBD><E5AFA5><EFBFBD>撌亙<E6928C><E4BA99><EFBFBD><E8AD8C><EFBFBD><EFBFBD><EFBFBD>隡䭾<E99AA1><E4ADBE><EFBFBD>
Linter错误0个
Linter<EFBFBD>躰秤嚗?銝?
```
---
## ✅ **验收标准**
## <EFBFBD>?**撉峕𤣰<E5B395><F0A4A3B0><EFBFBD>**
### **UI展示**
- ✅ 步骤1有2个Tab从初筛导入 / 手动上传Excel
- ✅ 步骤1的Excel上传明确说明"不包含PDF"
- ✅ 步骤2标题为"上传全文文献"
- ✅ 步骤2每行有"上传PDF"和"知识库"按钮
- ✅ 步骤2的提示根据PDF状态动态变化
### **UI撅閧內**嚗?
- <EFBFBD>?甇仿炊1<E7828A>?銝枚ab嚗<62><E59A97><EFBFBD><EFBFBD>撖澆<E69296> / <20>见𢆡銝𠹺<E98A9D>Excel嚗?
- <EFBFBD>?甇仿炊1<E7828A><31>xcel銝𠹺<E98A9D><F0A0B9BA>𡒊霂湔<E99C82>"銝滚<E98A9D><E6BB9A>DF"
- <EFBFBD>?甇仿炊2<E7828A><32><EFBFBD>銝?銝𠹺<E98A9D><F0A0B9BA><EFBFBD><E586BD><EFBFBD>"
- <EFBFBD>?甇仿炊2瘥讛<E798A5><E8AE9B>?銝𠹺<E98A9D>PDF"<22>?<3F><EFBFBD>摨?<3F>厰僼
- <EFBFBD>?甇仿炊2<E7828A><32><EFBFBD>蝷箸覔<E7AEB8>娑DF<44><EFBFBD><E59786>𢆡<EFBFBD><F0A286A1><EFBFBD><EFBFBD>?
### **逻辑正确**
- Excel只导入文献元信息
- PDF通过表格中的"上传PDF"按钮逐个上传
- ✅ 知识库功能在步骤2不在步骤1
- ✅ 允许部分文献没有PDF也可以启动任务
### **<EFBFBD><EFBFBD><EFBFBD>**嚗?
- <EFBFBD>?Excel<EFBFBD>芸紡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>靽⊥<EFBFBD>
- <EFBFBD>?PDF<EFBFBD><EFBFBD>銵冽聢銝剔<EFBFBD>"銝𠹺<E98A9D>PDF"<22>厰僼<E58EB0>𣂷葵銝𠹺<E98A9D>
- <EFBFBD>?<3F><EFBFBD>摨枏<E691A8><E69E8F>賢銁甇仿炊2嚗䔶<E59A97><E494B6>冽郊撉?
- <EFBFBD>?<3F><><EFBFBD><EFBFBD><E585B8><EFBFBD>讃瘝⊥<E7989D>PDF銋笔虾隞亙鍳<E4BA99>其遙<E585B6>?
---
## <20><> **<2A>𡒊賒撌乩<E6928C>**
### **优先级P1必须**
1. ✅ 前端逻辑调整(已完成)
2. ⏳ 实现Excel解析功能解析文献元信息
3. ⏳ 实现PDF上传API对接
### **隡睃<EFBFBD>蝥判1嚗<EFBFBD><EFBFBD>憿鳴<EFBFBD>**嚗?
1. <EFBFBD>?<3F>滨垢<E6BBA8><EFBFBD><EFBFBD>㟲嚗<E39FB2>歇摰峕<E691B0>嚗?
2. <EFBFBD>?摰䂿緵Excel閫<6C><E996AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E99E89><EFBFBD>靽⊥<E99DBD>嚗?
3. <EFBFBD>?摰䂿緵PDF銝𠹺<E98A9D>API撖寞𦻖
### **优先级P2建议**
1. PDF批量上传拖拽多个PDF文件
### **隡睃<EFBFBD>蝥判2嚗<EFBFBD>遣霈殷<EFBFBD>**嚗?
1. PDF<EFBFBD><EFBFBD>銝𠹺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝枉DF<EFBFBD><EFBFBD>辣嚗?
2. 隞𡒊䰻霂<E4B0BB><E99C82><EFBFBD>㗇𥋘PDF<44><EFBFBD>
3. Excel璅⊥踎銝贝蝸<E8B49D><EFBFBD>
@@ -271,22 +271,23 @@ Linter错误0个
## <20><> **憭<>釣**
### **关键设计原则**
1. **概念分离**:文献元信息 ≠ PDF文件
### **<EFBFBD>喲睸霈曇恣<EFBFBD><EFBFBD>**嚗?
1. **<EFBFBD><EFBFBD><EFBFBD>氖**嚗𡁏<E59A97><F0A1818F><EFBFBD>靽⊥<E99DBD> <20>?PDF<44><46>
2. **瘚<><E7989A><EFBFBD>苊**嚗帋<E59A97>甇交<E79487>蝔页<E89D94><E9A1B5>鞉郊<E99E89><EFBFBD>
3. **灵活性**允许部分文献无PDF也可启动
3. **<EFBFBD>菜暑<EFBFBD>?*嚗𡁜<E59A97>霈賊<E99C88><E8B38A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PDF銋笔虾<E7AC94>臬𢆡
### **用户体验优化**
### **<EFBFBD><EFBFBD>雿㯄<EFBFBD>隡睃<EFBFBD>**嚗?
- 瘥譍<E798A5>甇仿<E79487><E4BBBF><EFBFBD><E39787><EFBFBD>霂湔<E99C82>
- 不同状态有不同的提示
- 銝滚<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝滚<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝷?
- <20><EFBFBD><E88880>齿鰵銝𠹺<E98A9D>PDF
- 预留知识库入口
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD>摨枏<EFBFBD><EFBFBD>?
---
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𧋦**: v1.0
**最后更新**: 2025-01-23
**相关文档**: [2025-01-23_全文复筛前端开发完成.md](./2025-01-23_全文复筛前端开发完成.md)
**<EFBFBD><EFBFBD><EFBFBD>擧凒<EFBFBD>?*: 2025-01-23
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>**: [2025-01-23_<EFBFBD><EFBFBD>憭滨<EFBFBD><EFBFBD>滨垢撘<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?md](./2025-01-23_<EFBFBD><EFBFBD>憭滨<EFBFBD><EFBFBD>滨垢撘<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?md)