From b9a0e8541f0959db5d848f7b893c8838851ce411 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 09 四月 2020 13:29:49 +0800
Subject: [PATCH] 2020-04-09

---
 src/components/header/index.jsx |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/src/components/header/index.jsx b/src/components/header/index.jsx
index f12f87e..c32acd7 100644
--- a/src/components/header/index.jsx
+++ b/src/components/header/index.jsx
@@ -15,6 +15,7 @@
   resetEditState,
   resetEditLevel,
   initPermission,
+  initMenuPermission,
   logout
 } from '@/store/action'
 import Api from '@/api'
@@ -371,6 +372,32 @@
     this.getRolesMenu()
   }
 
+  componentDidMount () {
+    // 鑾峰彇瑙掕壊鑿滃崟鏉冮檺
+    Api.getSystemConfig({func: 's_Get_TrdMenu_Role'}).then(result => {
+      if (!result) return
+      if (result.status) {
+        let _permMenus = {}
+        if (result.UserRoles) {
+          result.UserRoles.forEach(role => {
+            role.RoleMenu.forEach(menu => {
+              if (!menu.MenuID) return
+              _permMenus[menu.MenuID] = true
+            })
+          })
+        }
+  
+        this.props.initMenuPermission(_permMenus)
+      } else {
+        notification.error({
+          top: 92,
+          message: result.message,
+          duration: 15
+        })
+      }
+    })
+  }
+
   shouldComponentUpdate (nextProps, nextState) {
     return !is(fromJS(this.props), fromJS(nextProps)) || !is(fromJS(this.state), fromJS(nextState))
   }
@@ -480,6 +507,7 @@
     resetEditState: (state) => dispatch(resetEditState(state)),
     resetEditLevel: (level) => dispatch(resetEditLevel(level)),
     initPermission: (permRoles, permAction, permFuncField) => dispatch(initPermission(permRoles, permAction, permFuncField)),
+    initMenuPermission: (permMenus) => dispatch(initMenuPermission(permMenus)),
     resetState: () => dispatch(resetState()),
     resetDebug: () => dispatch(resetDebug()),
     logout: () => dispatch(logout())

--
Gitblit v1.8.0