From 57ffebab5fded6f5236bd1b40c4b4e7a6d4ae07f Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期三, 31 七月 2024 09:50:09 +0800
Subject: [PATCH] 驱动下载

---
 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