mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-09-20 18:15:56 +08:00
add 顶部栏租户下拉切换功能 ;
This commit is contained in:
parent
4bfeebef0f
commit
23b11ebeea
@ -5,8 +5,24 @@
|
|||||||
<breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/>
|
<breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/>
|
||||||
<top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>
|
<top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>
|
||||||
|
|
||||||
<div class="right-menu">
|
<div class="right-menu flex align-center">
|
||||||
<template v-if="device!=='mobile'">
|
<template v-if="device!=='mobile' ">
|
||||||
|
<el-select v-model="companyName"
|
||||||
|
clearable
|
||||||
|
filterable
|
||||||
|
reserve-keyword
|
||||||
|
placeholder="请选择租户"
|
||||||
|
v-if="userId === 1"
|
||||||
|
@change="dynamicTenantEvent"
|
||||||
|
@clear="dynamicClearEvent">
|
||||||
|
<el-option
|
||||||
|
v-for="item in tenantList"
|
||||||
|
:key="item.tenantId"
|
||||||
|
:label="item.companyName"
|
||||||
|
:value="item.tenantId">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
|
||||||
<search id="header-search" class="right-menu-item" />
|
<search id="header-search" class="right-menu-item" />
|
||||||
|
|
||||||
<el-tooltip content="源码地址" effect="dark" placement="bottom">
|
<el-tooltip content="源码地址" effect="dark" placement="bottom">
|
||||||
@ -56,8 +72,18 @@ import SizeSelect from '@/components/SizeSelect'
|
|||||||
import Search from '@/components/HeaderSearch'
|
import Search from '@/components/HeaderSearch'
|
||||||
import RuoYiGit from '@/components/RuoYi/Git'
|
import RuoYiGit from '@/components/RuoYi/Git'
|
||||||
import RuoYiDoc from '@/components/RuoYi/Doc'
|
import RuoYiDoc from '@/components/RuoYi/Doc'
|
||||||
|
import { tenantList } from "@/api/login";
|
||||||
|
import { dynamicClear, dynamicTenant } from "@/api/system/tenant";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
userId: this.$store.getters.userId,
|
||||||
|
tenantId: undefined,
|
||||||
|
companyName: undefined,
|
||||||
|
tenantList: []
|
||||||
|
}
|
||||||
|
},
|
||||||
components: {
|
components: {
|
||||||
Breadcrumb,
|
Breadcrumb,
|
||||||
TopNav,
|
TopNav,
|
||||||
@ -92,6 +118,23 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 动态切换
|
||||||
|
dynamicTenantEvent(tenantId) {
|
||||||
|
dynamicTenant(tenantId).then(res => {
|
||||||
|
this.$router.push("/index");
|
||||||
|
});
|
||||||
|
},
|
||||||
|
dynamicClearEvent(tenantId) {
|
||||||
|
dynamicClear(tenantId).then(res => {
|
||||||
|
this.$router.push("/index");
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 租户列表
|
||||||
|
getTenantList() {
|
||||||
|
tenantList().then(res => {
|
||||||
|
this.tenantList = res.data;
|
||||||
|
});
|
||||||
|
},
|
||||||
toggleSideBar() {
|
toggleSideBar() {
|
||||||
this.$store.dispatch('app/toggleSideBar')
|
this.$store.dispatch('app/toggleSideBar')
|
||||||
},
|
},
|
||||||
@ -111,6 +154,15 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|
||||||
|
.flex {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-center {
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
.navbar {
|
.navbar {
|
||||||
height: 50px;
|
height: 50px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
<sidebar v-if="!sidebar.hide" class="sidebar-container" />
|
<sidebar v-if="!sidebar.hide" class="sidebar-container" />
|
||||||
<div :class="{hasTagsView:needTagsView,sidebarHide:sidebar.hide}" class="main-container">
|
<div :class="{hasTagsView:needTagsView,sidebarHide:sidebar.hide}" class="main-container">
|
||||||
<div :class="{'fixed-header':fixedHeader}">
|
<div :class="{'fixed-header':fixedHeader}">
|
||||||
<navbar />
|
<navbar ref="navbar"/>
|
||||||
<tags-view v-if="needTagsView" />
|
<tags-view v-if="needTagsView" />
|
||||||
</div>
|
</div>
|
||||||
<app-main />
|
<app-main />
|
||||||
@ -54,6 +54,11 @@ export default {
|
|||||||
return variables;
|
return variables;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.navbar.getTenantList();
|
||||||
|
});
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleClickOutside() {
|
handleClickOutside() {
|
||||||
this.$store.dispatch('app/closeSideBar', { withoutAnimation: false })
|
this.$store.dispatch('app/closeSideBar', { withoutAnimation: false })
|
||||||
|
|||||||
@ -7,6 +7,7 @@ const getters = {
|
|||||||
cachedViews: state => state.tagsView.cachedViews,
|
cachedViews: state => state.tagsView.cachedViews,
|
||||||
token: state => state.user.token,
|
token: state => state.user.token,
|
||||||
avatar: state => state.user.avatar,
|
avatar: state => state.user.avatar,
|
||||||
|
userId: state => state.user.userId,
|
||||||
name: state => state.user.name,
|
name: state => state.user.name,
|
||||||
introduction: state => state.user.introduction,
|
introduction: state => state.user.introduction,
|
||||||
roles: state => state.user.roles,
|
roles: state => state.user.roles,
|
||||||
|
|||||||
@ -7,10 +7,14 @@ const user = {
|
|||||||
name: '',
|
name: '',
|
||||||
avatar: '',
|
avatar: '',
|
||||||
roles: [],
|
roles: [],
|
||||||
permissions: []
|
permissions: [],
|
||||||
|
userId: null
|
||||||
},
|
},
|
||||||
|
|
||||||
mutations: {
|
mutations: {
|
||||||
|
SET_USERID: (state, userId) => {
|
||||||
|
state.userId = userId
|
||||||
|
},
|
||||||
SET_TOKEN: (state, token) => {
|
SET_TOKEN: (state, token) => {
|
||||||
state.token = token
|
state.token = token
|
||||||
},
|
},
|
||||||
@ -61,6 +65,7 @@ const user = {
|
|||||||
}
|
}
|
||||||
commit('SET_NAME', user.userName)
|
commit('SET_NAME', user.userName)
|
||||||
commit('SET_AVATAR', avatar)
|
commit('SET_AVATAR', avatar)
|
||||||
|
commit('SET_USERID', user.userId)
|
||||||
resolve(res)
|
resolve(res)
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
reject(error)
|
reject(error)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user