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,23 +1,23 @@
|
||||
# 蟇シ闊ェ扈捺桷隶セ隶。譁<EFBDA1>。」
|
||||
|
||||
> **文档版本:** v1.0
|
||||
> **创建日期:** 2025-10-29
|
||||
> **维护者:** 前端开发团队
|
||||
> **譁<EFBFBD>。」迚域悽<EFBFBD>?* v1.0
|
||||
> **蛻帛サコ譌・譛滂シ?* 2025-10-29
|
||||
> **扈エ謚、閠<EFBFBD>シ<EFBFBD>** 蜑咲ォッ蠑蜿大屬髦?
|
||||
> **譛蜷取峩譁ー<E8AD81><EFBDB0>** 2025-10-29
|
||||
|
||||
---
|
||||
|
||||
## <20>搭 譁<>。」隸エ譏<EFBDB4>
|
||||
|
||||
本文档详细说明AI科研平台的导航结构设计,包括顶部导航和左侧导航的设计规范。
|
||||
譛ャ譁<EFBFBD>。」隸ヲ扈<EFBFBD>ッエ譏拶I遘醍<EFBFBD>泌ケウ蜿ー逧<EFBFBD>ッシ闊ェ扈捺桷隶セ隶。<EFBFBD>悟桁諡ャ鬘カ驛ィ蟇シ闊ェ蜥悟キヲ萓ァ蟇シ闊ェ逧<EFBFBD>ョセ隶。隗<EFBFBD>激縲?
|
||||
|
||||
> **重要提示:** 本文档中涉及的模块版本要求(`requiredVersion`)均为**初始配置**,可以根据业务需求随时调整。版本权限分配完全可配置,无需改动代码逻辑。
|
||||
> **驥崎ヲ∵署遉コ<EFBFBD>?* 譛ャ譁<EFBDAC>。」荳ュ豸牙所逧<E68980>ィ。蝮礼沿譛ャ隕∵アゑシ<E38291>requiredVersion`<60>牙插荳?*蛻晏ァ矩<EFBDA7>鄂ョ**<2A>悟庄莉・譬ケ謐ョ荳壼苅髴豎る囂譌カ隹<EFBDB6>紛縲ら沿譛ャ譚<EFBDAC>剞蛻<E5899E><E89BBB>螳悟<E89EB3>蜿ッ驟咲スョ<EFBDBD>梧裏髴謾ケ蜉ィ莉」遐<EFBDA3>サ霎代?
|
||||
|
||||
---
|
||||
|
||||
## <20>ァュ 鬘カ驛ィ蟇シ闊ェ隶セ隶。
|
||||
|
||||
### 导航项配置
|
||||
### 蟇シ闊ェ鬘ケ驟咲ス?
|
||||
|
||||
```typescript
|
||||
// navigationConfig.ts
|
||||
@@ -26,15 +26,15 @@ export interface NavigationItem {
|
||||
label: string; // 譏セ遉コ蜷咲ァー
|
||||
route: string; // 霍ッ逕ア霍ッ蠕<EFBDAF>
|
||||
icon?: ReactNode; // 蝗セ譬<EFBDBE>シ亥庄騾会シ<E4BC9A>
|
||||
requiredVersion?: UserVersion; // 最低版本要求(可配置,支持后期调整)
|
||||
requiredVersion?: UserVersion; // 譛菴守沿譛ャ隕∵アゑシ亥庄驟咲スョ<EFBFBD>梧髪謖∝錘譛溯ー<EFBFBD>紛<EFBFBD>?
|
||||
standalone?: boolean; // 譏ッ蜷ヲ謾ッ謖∫峡遶玖ソ占。<E58DA0>
|
||||
}
|
||||
|
||||
/**
|
||||
* 鬘カ驛ィ蟇シ闊ェ驟咲スョ
|
||||
*
|
||||
* ⚠️ 重要说明:
|
||||
* - requiredVersion 字段为初始配置,可根据业务需求随时调整
|
||||
* 笞<EFBFBD><EFBFBD><EFBFBD> 驥崎ヲ∬ッエ譏趣シ?
|
||||
* - requiredVersion 蟄玲ョオ荳コ蛻晏ァ矩<EFBFBD>鄂ョ<EFBFBD>悟庄譬ケ謐ョ荳壼苅髴豎る囂譌カ隹<EFBFBD><EFBFBD>?
|
||||
* - 謗ィ闕宣夊ソ<E5A48A>錘遶ッAPI蜉ィ諤∬執蜿也沿譛ャ驟咲スョ<EFBDBD>梧髪謖∝ョ樊慮隹<E685AE>紛
|
||||
* - 菫ョ謾ケ迚域悽隕∵アよ裏髴謾ケ蜉ィ莉」遐<EFBDA3>サ霎托シ悟宵髴譖エ譁ー驟咲スョ蜊ウ蜿ッ
|
||||
*/
|
||||
@@ -49,12 +49,12 @@ export const TOP_NAVIGATION_ITEMS: NavigationItem[] = [
|
||||
id: 'literature-platform',
|
||||
label: 'AI譎コ閭ス譁<EFBDBD>鍵',
|
||||
route: '/literature',
|
||||
requiredVersion: 'advanced', // 初始配置:高级版可用(可调整)
|
||||
requiredVersion: 'advanced', // 蛻晏ァ矩<EFBFBD>鄂ョ<EFBFBD>夐ォ倡コァ迚亥庄逕ィ<EFBFBD>亥庄隹<EFBFBD>紛<EFBFBD>?
|
||||
standalone: true,
|
||||
},
|
||||
{
|
||||
id: 'knowledge-base',
|
||||
label: '知识库',
|
||||
label: '遏・隸<EFBFBD>コ?,
|
||||
route: '/knowledge-base',
|
||||
requiredVersion: 'basic', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>壼渕遑迚亥庄逕ィ<E98095>亥庄隹<E5BA84>紛<EFBFBD><E7B49B>
|
||||
},
|
||||
@@ -62,21 +62,21 @@ export const TOP_NAVIGATION_ITEMS: NavigationItem[] = [
|
||||
id: 'data-cleaning',
|
||||
label: '譎コ閭ス謨ー謐ョ貂<EFBFBD>エ<EFBFBD>',
|
||||
route: '/data-cleaning',
|
||||
requiredVersion: 'advanced', // 初始配置:高级版可用(可调整)
|
||||
placeholder: true, // 占位,显示"开发中"
|
||||
requiredVersion: 'advanced', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>夐ォ倡コァ迚亥庄逕ィ<E98095>亥庄隹<E5BA84>紛<EFBFBD>?
|
||||
placeholder: true, // 蜊<>菴搾シ梧仞遉?蠑蜿台クュ"
|
||||
},
|
||||
{
|
||||
id: 'statistical-analysis',
|
||||
label: '譎コ閭ス扈溯ョ。蛻<EFBFBD>梵',
|
||||
route: '/intelligent-analysis',
|
||||
requiredVersion: 'premium', // 初始配置:旗舰版可用(可调整)
|
||||
requiredVersion: 'premium', // 蛻晏ァ矩<EFBDA7>鄂ョ<E98482>壽覧闊ー迚亥庄逕ィ<E98095>亥庄隹<E5BA84>紛<EFBFBD>?
|
||||
external: true, // 逕アJava蝗「髦溷シ蜿托シ悟宵蛛夐。カ驛ィ蟇シ闊ェ髮<EFBDAA><E9ABAE>
|
||||
},
|
||||
{
|
||||
id: 'statistical-tools',
|
||||
label: '扈溯ョ。蛻<EFBFBD>梵蟾・蜈キ',
|
||||
route: '/statistical-tools',
|
||||
requiredVersion: 'premium', // 初始配置:旗舰版可用(可调整)
|
||||
requiredVersion: 'premium', // 蛻晏ァ矩<EFBFBD>鄂ョ<EFBFBD>壽覧闊ー迚亥庄逕ィ<EFBFBD>亥庄隹<EFBFBD>紛<EFBFBD>?
|
||||
external: true, // 逕アJava蝗「髦溷シ蜿托シ悟宵蛛夐。カ驛ィ蟇シ闊ェ髮<EFBDAA><E9ABAE>
|
||||
},
|
||||
];
|
||||
@@ -85,19 +85,19 @@ export const TOP_NAVIGATION_ITEMS: NavigationItem[] = [
|
||||
### 鬘カ驛ィ蟇シ闊ェ蟶<EFBDAA>ア
|
||||
|
||||
```
|
||||
┌──────────────────────────────────────────────────────────────────────────┐
|
||||
│ [Logo] [AI问答] [AI智能文献] [知识库] [智能数据清洗] [智能统计分析] [统计分析工具] [用户名] [用户菜单▼] │
|
||||
└──────────────────────────────────────────────────────────────────────────┘
|
||||
笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
|
||||
笏? [Logo] [AI髣ョ遲脳 [AI譎コ閭ス譁<EFBDBD>鍵] [遏・隸<EFBDA5>コ転 [譎コ閭ス謨ー謐ョ貂<EFBDAE>エ余 [譎コ閭ス扈溯ョ。蛻<EFBDA1>梵] [扈溯ョ。蛻<EFBDA1>梵蟾・蜈キ] [逕ィ謌キ蜷江 [逕ィ謌キ闖懷黒笆シ] 笏?
|
||||
笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
|
||||
160px 閾ェ騾ょコ泌ョス蠎ヲ 200px
|
||||
```
|
||||
|
||||
### 隗<>ァ芽ョセ隶。隗<EFBDA1>激
|
||||
|
||||
#### 导航项样式
|
||||
- **正常状态**:`color: #4b5563`, `font-weight: 500`
|
||||
- **悬停状态**:`color: #0ea5e9`, `background: rgba(14, 165, 233, 0.1)`
|
||||
- **激活状态**:`color: #0ea5e9`, `font-weight: 600`, `border-bottom: 2px solid #0ea5e9`
|
||||
- **禁用状态**(无权限):`color: #9ca3af`, `cursor: not-allowed`
|
||||
#### 蟇シ闊ェ鬘ケ譬キ蠑?
|
||||
- **豁」蟶ク迥カ諤?*<2A>啻color: #4b5563`, `font-weight: 500`
|
||||
- **謔ャ蛛懃憾諤?*<2A>啻color: #0ea5e9`, `background: rgba(14, 165, 233, 0.1)`
|
||||
- **豼豢サ迥カ諤?*<2A>啻color: #0ea5e9`, `font-weight: 600`, `border-bottom: 2px solid #0ea5e9`
|
||||
- **遖∫畑迥カ諤?*<2A>域裏譚<E8A38F>剞<EFBFBD>会シ啻color: #9ca3af`, `cursor: not-allowed`
|
||||
|
||||
#### 髣エ霍晁ァ<E69981>激
|
||||
- 蟇シ闊ェ鬘ケ荵矩龍<E79FA9>啻16px` 豌エ蟷ウ髣エ霍<EFBDB4>
|
||||
@@ -108,26 +108,26 @@ export const TOP_NAVIGATION_ITEMS: NavigationItem[] = [
|
||||
|
||||
**菴咲スョ**<EFBFBD>夐。カ驛ィ蟇シ闊ェ譛蜿ウ萓ァ
|
||||
|
||||
**显示内容**:
|
||||
- 用户名(手机号脱敏显示,如:`186****8738`)
|
||||
**譏セ遉コ蜀<EFBFBD>ョケ**<EFBFBD>?
|
||||
- 逕ィ謌キ蜷搾シ域焔譛コ蜿キ閼ア謨乗仞遉コ<EFBFBD>悟ヲゑシ啻186****8738`<EFBFBD>?
|
||||
- 逕ィ謌キ螟エ蜒<EFBDB4>/蝗セ譬<EFBDBE>シ育せ蜃サ隗ヲ蜿台ク区級闖懷黒<E687B7><E9BB92>
|
||||
|
||||
**下拉菜单选项**:
|
||||
**荳区級闖懷黒騾蛾。ケ**<EFBFBD>?
|
||||
```
|
||||
┌─────────────────────┐
|
||||
│ 个人中心 │
|
||||
│ 历史记录 │
|
||||
│ ──────────────── │
|
||||
│ 订阅管理 │
|
||||
│ 退出账号 │
|
||||
└─────────────────────┘
|
||||
笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
|
||||
笏?荳ェ莠コ荳ュ蠢<EFBDAD> 笏?
|
||||
笏?蜴<>彰隶ー蠖<EFBDB0> 笏?
|
||||
笏?笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏 笏?
|
||||
笏?隶「髦<EFBDA2>ョ。逅<EFBDA1> 笏?
|
||||
笏?騾蜃コ雍ヲ蜿? 笏?
|
||||
笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
|
||||
```
|
||||
|
||||
**路由跳转**:
|
||||
- 个人中心 → `/user/profile`
|
||||
- 历史记录 → `/user/history`
|
||||
- 订阅管理 → `/user/subscription`
|
||||
- 退出账号 → 登出操作
|
||||
**霍ッ逕ア霍ウ霓ャ**<EFBFBD>?
|
||||
- 荳ェ莠コ荳ュ蠢<EFBFBD> 竊?`/user/profile`
|
||||
- 蜴<EFBFBD>彰隶ー蠖<EFBFBD> 竊?`/user/history`
|
||||
- 隶「髦<EFBFBD>ョ。逅<EFBFBD> 竊?`/user/subscription`
|
||||
- 騾蜃コ雍ヲ蜿?竊?逋サ蜃コ謫堺ス<E5A0BA>
|
||||
|
||||
---
|
||||
|
||||
@@ -135,27 +135,27 @@ export const TOP_NAVIGATION_ITEMS: NavigationItem[] = [
|
||||
|
||||
### 隶セ隶。蜴溷<E89CB4>
|
||||
|
||||
1. **按需显示**:只有进入具体模块后才显示左侧导航
|
||||
2. **模块独立**:每个模块有自己独立的左侧导航配置
|
||||
1. **謖蛾怙譏セ遉コ**<EFBFBD>壼宵譛芽ソ帛<EFBFBD>蜈キ菴捺ィ。蝮怜錘謇肴仞遉コ蟾ヲ萓ァ蟇シ闊?
|
||||
2. **讓。蝮礼峡遶<EFBFBD>**<EFBFBD>壽ッ丈クェ讓。蝮玲怏閾ェ蟾ア迢ャ遶狗噪蟾ヲ萓ァ蟇シ闊ェ驟咲ス?
|
||||
3. **螻らコァ貂<EFBDA7>匆**<EFBFBD>壽髪謖∽ク郤ァ蜥御コ檎コァ闖懷黒
|
||||
|
||||
### AI髣ョ遲疲ィ。蝮怜キヲ萓ァ蟇シ闊ェ
|
||||
|
||||
**布局方式**:卡片式布局(不使用左侧导航)
|
||||
**蟶<EFBFBD>ア譁ケ蠑<EFBFBD>**<EFBFBD>壼今迚<EFBFBD>シ丞ク<EFBFBD>ア<EFBFBD>井ク堺スソ逕ィ蟾ヲ萓ァ蟇シ闊ェ<EFBFBD>?
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────┐
|
||||
│ AI问答主界面 │
|
||||
│ ┌───────────────────────────────────┐ │
|
||||
│ │ 搜索框 + 提问按钮 │ │
|
||||
│ └───────────────────────────────────┘ │
|
||||
│ │
|
||||
│ 或选择一个智能体开始: │
|
||||
│ ┌────┐ ┌────┐ ┌────┐ ┌────┐ │
|
||||
│ │选题│ │PICO│ │研究│ │方法│ ... │
|
||||
│ │评价│ │梳理│ │方案│ │学 │ │
|
||||
│ └────┘ └────┘ └────┘ └────┘ │
|
||||
└─────────────────────────────────────────┘
|
||||
笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
|
||||
笏? AI髣ョ遲比クサ逡碁<EFBFBD>? 笏?
|
||||
笏? 笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
|
||||
笏? 笏? 謳懃エ「譯?+ 謠宣琉謖蛾聴 笏? 笏?
|
||||
笏? 笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
|
||||
笏? 笏?
|
||||
笏? 謌夜画叫荳荳ェ譎コ閭ス菴灘シ蟋? 笏?
|
||||
笏? 笏娯楳笏笏笏笏?笏娯楳笏笏笏笏?笏娯楳笏笏笏笏?笏娯楳笏笏笏笏? 笏?
|
||||
笏? 笏る蛾「倪<EFBDA2>?笏1ICO笏?笏ら<E7AC8F>皮ゥカ笏<EFBDB6> 笏よ婿豕補狽 ... 笏?
|
||||
笏? 笏りッ<E3828A>サキ笏<EFBDB7> 笏よ「ウ逅<EFBDB3>狽 笏よ婿譯遺狽 笏ょュヲ 笏? 笏?
|
||||
笏? 笏披楳笏笏笏笏?笏披楳笏笏笏笏?笏披楳笏笏笏笏?笏披楳笏笏笏笏? 笏?
|
||||
笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
|
||||
```
|
||||
|
||||
### AI譎コ閭ス譁<EFBDBD>鍵讓。蝮怜キヲ萓ァ蟇シ闊ェ
|
||||
@@ -170,7 +170,7 @@ const LITERATURE_SIDE_NAV = [
|
||||
},
|
||||
{
|
||||
id: 'search',
|
||||
label: '智能文献检索',
|
||||
label: '譎コ閭ス譁<EFBFBD>鍵譽邏?,
|
||||
route: '/literature/search',
|
||||
icon: '<EFBFBD>剥',
|
||||
},
|
||||
@@ -184,7 +184,7 @@ const LITERATURE_SIDE_NAV = [
|
||||
id: 'screening',
|
||||
label: '譬<EFBFBD>「俶遭隕∝<EFBFBD>遲<EFBFBD>',
|
||||
route: '/literature/screening',
|
||||
icon: '✅',
|
||||
icon: '笨?,
|
||||
},
|
||||
{
|
||||
id: 'full-text',
|
||||
@@ -194,37 +194,37 @@ const LITERATURE_SIDE_NAV = [
|
||||
},
|
||||
{
|
||||
id: 'extraction',
|
||||
label: '全文解析与数据提取',
|
||||
label: '蜈ィ譁<EFBFBD>ァ」譫蝉ク取焚謐ョ謠仙<EFBFBD>?,
|
||||
route: '/literature/extraction',
|
||||
icon: '<EFBFBD>溌',
|
||||
},
|
||||
{
|
||||
id: 'analysis',
|
||||
label: '数据综合分析与报告',
|
||||
label: '謨ー謐ョ扈シ蜷亥<EFBFBD>譫蝉ク取冠蜻?,
|
||||
route: '/literature/analysis',
|
||||
icon: '<27>投',
|
||||
},
|
||||
];
|
||||
```
|
||||
|
||||
**布局样式**:
|
||||
**蟶<EFBFBD>ア譬キ蠑<EFBFBD>**<EFBFBD>?
|
||||
- 螳ス蠎ヲ<E8A08E>啻200px`
|
||||
- 閭梧勹濶イ<E6BFB6>啻#f9fafb`
|
||||
- 豼豢サ鬘ケ<E9AC98>啻background: #e0e7ff`, `border-left: 3px solid #4f46e5`
|
||||
|
||||
### 知识库模块左侧导航
|
||||
### 遏・隸<EFBFBD>コ捺ィ。蝮怜キヲ萓ァ蟇シ闊?
|
||||
|
||||
```typescript
|
||||
const KNOWLEDGE_BASE_SIDE_NAV = [
|
||||
{
|
||||
id: 'list',
|
||||
label: '知识库列表',
|
||||
label: '遏・隸<EFBFBD>コ灘<EFBFBD>陦?,
|
||||
route: '/knowledge-base',
|
||||
icon: '<EFBFBD>答',
|
||||
},
|
||||
{
|
||||
id: 'create',
|
||||
label: '+ 新建知识库',
|
||||
label: '+ 譁ー蟒コ遏・隸<EFBFBD>コ?,
|
||||
route: '/knowledge-base/create',
|
||||
icon: '+',
|
||||
},
|
||||
@@ -233,23 +233,23 @@ const KNOWLEDGE_BASE_SIDE_NAV = [
|
||||
|
||||
### 譎コ閭ス扈溯ョ。蛻<EFBDA1>梵讓。蝮暦シ亥、夜Κ讓。蝮苓ッエ譏趣シ<E8B6A3>
|
||||
|
||||
**说明:** 智能统计分析模块由**Java团队**开发,采用**Java后端**技术栈。
|
||||
**我们的职责:** 仅在顶部导航中集成该模块的入口,点击后跳转到Java团队开发的页面。
|
||||
**设计规范:** 不需要我们设计左侧导航,Java团队已有自己的页面布局设计。
|
||||
**隸エ譏趣シ?* 譎コ閭ス扈溯ョ。蛻<EFBDA1>梵讓。蝮礼<E89DAE>?*Java蝗「髦<EFBDA2>**蠑蜿托シ碁㊦逕ィ**Java蜷守ォッ**謚譛ッ譬医?
|
||||
**謌台サャ逧<EFBFBD>′雍」<EFBFBD><EFBFBD>** 莉<>惠鬘カ驛ィ蟇シ闊ェ荳ュ髮<EFBDAD><E9ABAE>隸・讓。蝮礼噪蜈・蜿」<E89CBF>檎せ蜃サ蜷手キウ霓ャ蛻ーJava蝗「髦溷シ蜿醍噪鬘オ髱「縲?
|
||||
**隶セ隶。隗<EFBFBD>激<EFBFBD>?* 荳埼怙隕∵<E99A95>莉ャ隶セ隶。蟾ヲ萓ァ蟇シ闊ェ<E9978A>繰ava蝗「髦溷キイ譛芽<E8AD9B>蟾ア逧<EFBDB1>。オ髱「蟶<EFBDA2>ア隶セ隶。縲?
|
||||
|
||||
**集成方式:**
|
||||
- 顶部导航点击后,直接跳转到 `/intelligent-analysis` 路由
|
||||
**髮<EFBFBD><EFBFBD>譁ケ蠑擾シ?*
|
||||
- 鬘カ驛ィ蟇シ闊ェ轤ケ蜃サ蜷趣シ檎峩謗・霍ウ霓ャ蛻?`/intelligent-analysis` 霍ッ逕ア
|
||||
- 隸・霍ッ逕ア蜿ッ閭ス謖<EFBDBD>髄迢ャ遶狗噪Java蠎皮畑謌吠frame蠏悟<E8A08F>
|
||||
- 蜈キ菴馴寔謌先婿蠑城怙荳捌ava蝗「髦溷刻蝠<E588BB>。ョ螳<EFBDAE>
|
||||
|
||||
### 扈溯ョ。蛻<EFBDA1>梵蟾・蜈キ讓。蝮暦シ亥、夜Κ讓。蝮苓ッエ譏趣シ<E8B6A3>
|
||||
|
||||
**说明:** 统计分析工具模块由**Java团队**开发,采用**Java后端**技术栈。
|
||||
**我们的职责:** 仅在顶部导航中集成该模块的入口,点击后跳转到Java团队开发的页面。
|
||||
**设计规范:** 该模块**不是左侧导航设计**,Java团队有自己的页面布局(如顶部Tab导航等)。
|
||||
**隸エ譏趣シ?* 扈溯ョ。蛻<EFBDA1>梵蟾・蜈キ讓。蝮礼<E89DAE>?*Java蝗「髦<EFBDA2>**蠑蜿托シ碁㊦逕ィ**Java蜷守ォッ**謚譛ッ譬医?
|
||||
**謌台サャ逧<EFBFBD>′雍」<EFBFBD><EFBFBD>** 莉<>惠鬘カ驛ィ蟇シ闊ェ荳ュ髮<EFBDAD><E9ABAE>隸・讓。蝮礼噪蜈・蜿」<E89CBF>檎せ蜃サ蜷手キウ霓ャ蛻ーJava蝗「髦溷シ蜿醍噪鬘オ髱「縲?
|
||||
**隶セ隶。隗<EFBFBD>激<EFBFBD>?* 隸・讓。蝮?*荳肴弍蟾ヲ萓ァ蟇シ闊ェ隶セ隶。**<EFBFBD>繰ava蝗「髦滓怏閾ェ蟾ア逧<EFBFBD>。オ髱「蟶<EFBFBD>ア<EFBFBD>亥ヲる。カ驛ィTab蟇シ闊ェ遲会シ峨?
|
||||
|
||||
**集成方式:**
|
||||
- 顶部导航点击后,直接跳转到 `/statistical-tools` 路由
|
||||
**髮<EFBFBD><EFBFBD>譁ケ蠑擾シ?*
|
||||
- 鬘カ驛ィ蟇シ闊ェ轤ケ蜃サ蜷趣シ檎峩謗・霍ウ霓ャ蛻?`/statistical-tools` 霍ッ逕ア
|
||||
- 隸・霍ッ逕ア蜿ッ閭ス謖<EFBDBD>髄迢ャ遶狗噪Java蠎皮畑謌吠frame蠏悟<E8A08F>
|
||||
- 蜈キ菴馴寔謌先婿蠑城怙荳捌ava蝗「髦溷刻蝠<E588BB>。ョ螳<EFBDAE>
|
||||
|
||||
@@ -260,9 +260,9 @@ const KNOWLEDGE_BASE_SIDE_NAV = [
|
||||
### 鬘カ驛ィ蟇シ闊ェ蛻<EFBDAA>困
|
||||
|
||||
```typescript
|
||||
// 点击顶部导航项
|
||||
// 轤ケ蜃サ鬘カ驛ィ蟇シ闊ェ鬘?
|
||||
const handleNavClick = (item: NavigationItem) => {
|
||||
// 1. 检查权限
|
||||
// 1. 譽譟・譚<EFBFBD><EFBFBD>?
|
||||
if (!hasPermission(item.requiredVersion)) {
|
||||
showUpgradePrompt(item);
|
||||
return;
|
||||
@@ -274,10 +274,10 @@ const handleNavClick = (item: NavigationItem) => {
|
||||
return;
|
||||
}
|
||||
|
||||
// 3. 导航到目标路由
|
||||
// 3. 蟇シ闊ェ蛻ー逶ョ譬<EFBFBD>キッ逕?
|
||||
navigate(item.route);
|
||||
|
||||
// 4. 更新激活状态
|
||||
// 4. 譖エ譁ー豼豢サ迥カ諤?
|
||||
setActiveNavItem(item.id);
|
||||
};
|
||||
```
|
||||
@@ -285,12 +285,12 @@ const handleNavClick = (item: NavigationItem) => {
|
||||
### 蟾ヲ萓ァ蟇シ闊ェ蛻<EFBDAA>困
|
||||
|
||||
```typescript
|
||||
// 点击左侧导航项
|
||||
// 轤ケ蜃サ蟾ヲ萓ァ蟇シ闊ェ鬘?
|
||||
const handleSideNavClick = (item: SideNavItem) => {
|
||||
// 导航到目标路由(模块内部路由)
|
||||
// 蟇シ闊ェ蛻ー逶ョ譬<EFBFBD>キッ逕ア<EFBFBD>域ィ。蝮怜<EFBFBD>驛ィ霍ッ逕ア<EFBFBD>?
|
||||
navigate(item.route);
|
||||
|
||||
// 更新激活状态
|
||||
// 譖エ譁ー豼豢サ迥カ諤?
|
||||
setActiveSideNavItem(item.id);
|
||||
};
|
||||
```
|
||||
@@ -300,24 +300,24 @@ const handleSideNavClick = (item: SideNavItem) => {
|
||||
蟇ケ莠取キア螻らコァ鬘オ髱「<EFBFBD>悟サコ隶ョ豺サ蜉<EFBFBD>髱「蛹<EFBFBD>ア大ッシ闊ェ<EFBFBD><EFBFBD>
|
||||
|
||||
```
|
||||
首页 > AI智能文献 > 标题摘要初筛 > 审核工作台
|
||||
鬥夜。オ > AI譎コ閭ス譁<EFBFBD>鍵 > 譬<>「俶遭隕∝<E99A95>遲<EFBFBD> > 螳。譬ク蟾・菴懷<E88FB4>?
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📱 响应式设计
|
||||
## <EFBFBD>導 蜩榊コ泌シ剰ョセ隶?
|
||||
|
||||
### 桌面端 (>1024px)
|
||||
### 譯碁擇遶?(>1024px)
|
||||
- 螳梧紛譏セ遉コ謇譛蛾。カ驛ィ蟇シ闊ェ鬘ケ
|
||||
- 显示完整的左侧导航
|
||||
- 譏セ遉コ螳梧紛逧<EFBFBD>キヲ萓ァ蟇シ闊?
|
||||
|
||||
### 平板端 (768-1024px)
|
||||
- 显示前4个顶部导航项
|
||||
### 蟷ウ譚ソ遶?(768-1024px)
|
||||
- 譏セ遉コ蜑?荳ェ鬘カ驛ィ蟇シ闊ェ鬘ケ
|
||||
- 蜈カ菴吝ッシ闊ェ鬘ケ謚伜匠蛻ー"譖エ螟<EFBDB4>"闖懷黒
|
||||
- 左侧导航可折叠为抽屉式
|
||||
- 蟾ヲ萓ァ蟇シ闊ェ蜿ッ謚伜匠荳コ謚ス螻牙シ?
|
||||
|
||||
### 移动端 (<768px)
|
||||
- 顶部导航采用汉堡菜单(☰)
|
||||
### 遘サ蜉ィ遶?(<768px)
|
||||
- 鬘カ驛ィ蟇シ闊ェ驥<EFBFBD>畑豎牙<EFBFBD>。闖懷黒<EFBFBD>遺于<EFBFBD>?
|
||||
- 蟾ヲ萓ァ蟇シ闊ェ謾ケ荳コ蠎暮ΚTab蟇シ闊ェ謌匁歓螻牙シ<E78999>
|
||||
|
||||
---
|
||||
@@ -336,7 +336,7 @@ const handleSideNavClick = (item: SideNavItem) => {
|
||||
--nav-text-active: #0ea5e9;
|
||||
--nav-active-border: #0ea5e9;
|
||||
|
||||
/* 侧边栏颜色 */
|
||||
/* 萓ァ霎ケ譬城「懆<EFBFBD>?*/
|
||||
--sidebar-bg: #f9fafb;
|
||||
--sidebar-active-bg: #e0e7ff;
|
||||
--sidebar-active-border: #4f46e5;
|
||||
@@ -354,7 +354,7 @@ const handleSideNavClick = (item: SideNavItem) => {
|
||||
|
||||
## <20>統 螳樊命貂<E591BD>黒
|
||||
|
||||
### 组件开发
|
||||
### 扈<EFBFBD>サカ蠑蜿?
|
||||
- [ ] `TopNavigation.tsx` - 鬘カ驛ィ蟇シ闊ェ扈<EFBDAA>サカ
|
||||
- [ ] `SideNavigation.tsx` - 蟾ヲ萓ァ蟇シ闊ェ扈<EFBDAA>サカ
|
||||
- [ ] `UserMenu.tsx` - 逕ィ謌キ闖懷黒扈<E9BB92>サカ
|
||||
@@ -364,16 +364,16 @@ const handleSideNavClick = (item: SideNavItem) => {
|
||||
### 驟咲スョ譁<EFBDAE>サカ
|
||||
- [ ] `navigationConfig.ts` - 蟇シ闊ェ驟咲スョ
|
||||
- [ ] `moduleNavConfig.ts` - 讓。蝮怜ッシ闊ェ驟咲スョ
|
||||
- [ ] `versionConfig.ts` - 版本配置(本地配置,作为兜底)
|
||||
- [ ] `versionConfig.ts` - 迚域悽驟咲スョ<EFBFBD>域悽蝨ー驟咲スョ<EFBFBD>御ス應クコ蜈懷コ包シ?
|
||||
- [ ] `useVersionConfig.ts` - 迚域悽驟咲スョHook<6F>井サ拶PI蜉ィ諤∬執蜿厄シ<E58E84>
|
||||
|
||||
### 譁<>。」
|
||||
- [ ] 更新本文档
|
||||
- [ ] 譖エ譁ー譛ャ譁<EFBFBD>。?
|
||||
- [ ] 郛門<E9839B>蟇シ闊ェ扈<EFBDAA>サカ菴ソ逕ィ譁<EFBDA8>。」
|
||||
|
||||
---
|
||||
|
||||
**文档版本:** v1.0
|
||||
**譁<EFBFBD>。」迚域悽<EFBFBD>?* v1.0
|
||||
**譛蜷取峩譁ー<E8AD81><EFBDB0>** 2025-10-29
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user