| | |
| | | <div class="top_text flex justify-between px-6 items-center pl-[unset] pr-6"> |
| | | <div class="flex-items-center h-full"> |
| | | <div class="nav-menu"> |
| | | <router-link :to="firstToPath" class="nav-item" active-class="active"> |
| | | <router-link v-for="item in menuList" :to="item.path" :key="item.label" class="nav-item" active-class="active"> |
| | | <i class="icon-park-outline-robot"></i> |
| | | 智能助手 |
| | | {{ item.label }} |
| | | </router-link> |
| | | <router-link to="/workspace/situation" class="nav-item" active-class="active"> |
| | | <i class="icon-park-outline-workbench"></i> |
| | | 个人工作台 |
| | | </router-link> |
| | | |
| | | <!-- <router-link to="/gis/situation" class="nav-item" active-class="active"> |
| | | <i class="icon-park-outline-system"></i> |
| | | GIS系统 |
| | | </router-link> --> |
| | | </div> |
| | | </div> |
| | | <el-dialog |
| | |
| | | </template> |
| | | </el-dialog> |
| | | </div> |
| | | <div class="notice " v-if="!isSharePage"> |
| | | <div class="notice" v-if="!isSharePage"> |
| | | <el-badge :value="`${state.announcementList.length}`" :hidden="announcementIsRead || state.announcementList?.length === 0"> |
| | | <el-button link size="small" icon="ele-Message" class="set-notice" @click="handleAnnouncementClick">系统公告</el-button> |
| | | </el-badge> |
| | |
| | | import { systemNotifyList } from '/@/api/ai/chat'; |
| | | import router from '/@/router'; |
| | | import pinia from '/@/stores'; |
| | | import { activeChatRoom, activeRoomId, isSharePage, newChatRoomClick } from '/@/stores/chatRoom'; |
| | | import { activeChatRoom, activeRoomId, activeTopMenuStyle, isSharePage, newChatRoomClick, TopMenuStyle } from '/@/stores/chatRoom'; |
| | | import { useThemeConfig } from '/@/stores/themeConfig'; |
| | | import emitter from '/@/utils/mitt'; |
| | | import { userInfoKey } from '/@/utils/request'; |
| | |
| | | announcementContent: '', |
| | | announcementTime: '', |
| | | }); |
| | | |
| | | const menuList = computed(() => { |
| | | const smartAssistant = { |
| | | path: firstToPath.value, |
| | | label: '智能助手', |
| | | }; |
| | | |
| | | const personalWorkbench = { |
| | | path: '/workspace/situation', |
| | | label: '个人工作台', |
| | | }; |
| | | const gis = { |
| | | path: '/gis/situation', |
| | | label: 'GIS系统', |
| | | }; |
| | | |
| | | switch (activeTopMenuStyle.value) { |
| | | case TopMenuStyle.Normal: |
| | | return [smartAssistant, personalWorkbench]; |
| | | case TopMenuStyle.Gis: |
| | | return [smartAssistant, gis]; |
| | | |
| | | default: |
| | | return [smartAssistant]; |
| | | } |
| | | }); |
| | | const firstToPath = computed(() => { |
| | | if (!activeChatRoom.value) |
| | | return { |