From c1f5d3229fdcf203c21ed633619f89f7e9ad667c Mon Sep 17 00:00:00 2001 From: MerCry Date: Fri, 27 Feb 2026 18:47:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(ASA):=20=E6=B7=BB=E5=8A=A0=E5=AF=BC?= =?UTF-8?q?=E8=88=AA=E8=8F=9C=E5=8D=95=E5=85=A5=E5=8F=A3=EF=BC=8C=E5=B0=86?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E9=85=8D=E7=BD=AE=E6=95=B4=E5=90=88=E4=B8=BA?= =?UTF-8?q?=E4=B8=8B=E6=8B=89=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将知识库导航指向新的多知识库管理页面 - 将嵌入模型、LLM 配置、Prompt 模板、意图规则、话术流程、输出护栏整合到「系统配置」下拉菜单 - 添加下拉菜单样式和交互效果 --- ai-service-admin/src/App.vue | 107 +++++++++++++++++++++++++++++++---- 1 file changed, 97 insertions(+), 10 deletions(-) diff --git a/ai-service-admin/src/App.vue b/ai-service-admin/src/App.vue index 347d66a..f7dcad0 100644 --- a/ai-service-admin/src/App.vue +++ b/ai-service-admin/src/App.vue @@ -17,7 +17,7 @@ 控制台 - + 知识库 @@ -30,14 +30,53 @@ 会话监控 - - - 嵌入模型 - - - - LLM 配置 - + + + +
@@ -70,7 +109,7 @@ import { ref, computed, onMounted } from 'vue' import { useRoute } from 'vue-router' import { useTenantStore } from '@/stores/tenant' import { getTenantList, type Tenant } from '@/api/tenant' -import { Odometer, FolderOpened, Cpu, Monitor, Connection, ChatDotSquare } from '@element-plus/icons-vue' +import { Odometer, FolderOpened, Cpu, Monitor, Connection, ChatDotSquare, Setting, ArrowDown, Document, Aim, Share, Shield } from '@element-plus/icons-vue' import { ElMessage } from 'element-plus' const route = useRoute() @@ -84,6 +123,10 @@ const isActive = (path: string) => { return route.path === path || route.path.startsWith(path + '/') } +const isAdminActive = computed(() => { + return route.path.startsWith('/admin') +}) + const handleTenantChange = (val: string) => { tenantStore.setTenant(val) // 刷新页面以加载新租户的数据 @@ -212,6 +255,21 @@ onMounted(() => { font-size: 16px; } +.dropdown-trigger { + cursor: pointer; +} + +.dropdown-arrow { + font-size: 12px; + margin-left: 4px; + transition: transform 0.2s; +} + +.dropdown-trigger:hover .dropdown-arrow, +.dropdown-trigger.active .dropdown-arrow { + transform: rotate(180deg); +} + .nav-divider { width: 1px; height: 20px; @@ -274,3 +332,32 @@ onMounted(() => { } } + +