From 1ee4a5341215f94128b66cee4893c7c937df509a Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期一, 08 七月 2024 09:05:20 +0800 Subject: [PATCH] bug修改 --- src/layout/menuSider.vue | 47 +++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 41 insertions(+), 6 deletions(-) diff --git a/src/layout/menuSider.vue b/src/layout/menuSider.vue index 53b9b33..03155a8 100644 --- a/src/layout/menuSider.vue +++ b/src/layout/menuSider.vue @@ -21,21 +21,56 @@ </template> <script> -import menuData from './menu' +import menu from './menu' +import { getUserInfo } from "@/util/storage"; export default { name: "menu-sider", data() { return { - navData: menuData, - openKeys: ['1','2','3','4'] + userInfo: {}, + navData: [], + openKeys: ['1'] }; + }, + created() { + const t = this + t.userInfo = getUserInfo() + if(t.userInfo.role.id == 1){ + t.navData = menu.adminMenu + }else if(t.userInfo.role.id == 3){ + if(t.userInfo.unittype == 1){ + t.navData = menu.workerMenu + }else{ + t.navData = menu.workerMenu.map((i)=>{ + // if(i.Children.find(item=>item.MenuTitle == '常规群发')){ + // i.Children = i.Children.filter(j=>j.MenuTitle !== '常规群发') + // } + if(i.Children.find(item=>item.MenuTitle == '短信记录')){ + i.Children = i.Children.filter(j=>j.MenuTitle !== '短信记录') + } + if(i.Children.find(item=>item.MenuTitle == '原通讯录')){ + i.Children = i.Children.filter(j=>j.MenuTitle !== '原通讯录') + } + return i + }) + } + }else{ + t.navData = menu.leaderMenu + } }, methods: { onOpenChange(openKeys) { - if (openKeys.length !== 0) { - this.openKeys = [openKeys[1]] + // if (openKeys.length !== 0) { + // this.openKeys = [openKeys[1]] + // } else { + // this.openKeys = [''] + // } + const rootSubmenuKeys = this.navData.map(i=>i.MenuID) + const latestOpenKey = openKeys.find(key => this.openKeys.indexOf(key) === -1); + if (rootSubmenuKeys.indexOf(latestOpenKey) === -1) { + this.openKeys = openKeys; } else { - this.openKeys = [''] + this.openKeys = latestOpenKey ? [latestOpenKey] : []; } }, } -- Gitblit v1.9.2