|
|
@@ -2,10 +2,12 @@
|
|
|
import { useMenuStore } from '@/stores/menu'
|
|
|
import { useUserStore } from '@/stores/user'
|
|
|
import { useThemeStore } from '@/stores/theme'
|
|
|
+import { useOrg } from '@/hooks/useOrg'
|
|
|
import avatar from '@/assets/images/avatar.png'
|
|
|
import { ElMessageBox } from 'element-plus'
|
|
|
import { isAbsolutePath } from '@/utils/utils'
|
|
|
import router from '@/router'
|
|
|
+import config from '@/config/defaultSetting'
|
|
|
import type { RouteRecordRaw } from 'vue-router'
|
|
|
|
|
|
const themeStore = useThemeStore()
|
|
|
@@ -93,6 +95,9 @@ const buildMenu = (list: RouteRecordRaw[]) => {
|
|
|
}
|
|
|
buildMenu(menuStore.leftMenuList)
|
|
|
|
|
|
+// 多组织
|
|
|
+const { orgList, changeOrg } = config.multiTenant ? useOrg() : { orgList: [], changeOrg: () => {} }
|
|
|
+
|
|
|
// 搜索框
|
|
|
const searchVisible = ref(false)
|
|
|
const searchValue = ref('')
|
|
|
@@ -149,6 +154,21 @@ const handleSelect = (menu: any) => {
|
|
|
<Search />
|
|
|
</el-icon>
|
|
|
</el-button>
|
|
|
+ <el-dropdown class="ml-4 mr-4" :max-height="200" v-if="config.multiTenant">
|
|
|
+ <span class="el-dropdown-link">
|
|
|
+ {{ user.orgName }}
|
|
|
+ <el-icon class="el-icon--right" :color="headerStyle.color">
|
|
|
+ <arrow-down />
|
|
|
+ </el-icon>
|
|
|
+ </span>
|
|
|
+ <template #dropdown>
|
|
|
+ <el-dropdown-menu>
|
|
|
+ <el-dropdown-item v-for="item in orgList" :key="item.id" @click="changeOrg(item.id)">
|
|
|
+ <div>{{ item?.companyName }}</div>
|
|
|
+ </el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </template>
|
|
|
+ </el-dropdown>
|
|
|
<el-button link @click="toggleScreen">
|
|
|
<!-- <icon-off-screen :size="iconSize" :fill="headerStyle.color" v-if="isFullscreen" />
|
|
|
<icon-full-screen :size="iconSize" :fill="headerStyle.color" v-else /> -->
|
|
|
@@ -177,12 +197,12 @@ const handleSelect = (menu: any) => {
|
|
|
<template #dropdown>
|
|
|
<el-dropdown-menu>
|
|
|
<el-dropdown-item @click="goInfo">
|
|
|
- <el-icon><icon-setting-two></icon-setting-two></el-icon>
|
|
|
- <div>个人设置</div>
|
|
|
+ <el-icon :size="iconSize"><icon-setting-two></icon-setting-two></el-icon>
|
|
|
+ <div class="ml-2 mb-1 font-size-16px">个人设置</div>
|
|
|
</el-dropdown-item>
|
|
|
<el-dropdown-item @click="logout">
|
|
|
- <el-icon><icon-logout></icon-logout></el-icon>
|
|
|
- <div>退出登录</div>
|
|
|
+ <el-icon :size="iconSize"><icon-logout></icon-logout></el-icon>
|
|
|
+ <div class="ml-2 mb-1 font-size-16px">退出登录</div>
|
|
|
</el-dropdown-item>
|
|
|
</el-dropdown-menu>
|
|
|
</template>
|