From 7c9208e7ebad8d4a83382d2b471eacea476228b4 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期二, 22 八月 2023 13:32:07 +0800
Subject: [PATCH] 1.班组管理
---
src/store/modules/permission.js | 54 ++++++++++--------------------------------------------
1 files changed, 10 insertions(+), 44 deletions(-)
diff --git a/src/store/modules/permission.js b/src/store/modules/permission.js
index 706fed9..f6d5d76 100644
--- a/src/store/modules/permission.js
+++ b/src/store/modules/permission.js
@@ -1,22 +1,12 @@
-import { asyncRoutes, asyncRoutesCloud, commonRoutes } from '@/router'
-import Layout from '@/layout'
-import { getCookie } from '@/utils/auth'
-
-// 鍒ゆ柇鏄惁鏈夋潈闄�
-function hasPermission(roles, route) {
- if (route.meta && route.meta.role) {
- return roles.some(role => route.meta.role.includes(role))
- } else {
- return true
- }
-}
-
+import { asyncRoutes, commonRoutes } from '@/router'
/**
* 鎶婂悗鍙拌繑鍥炶彍鍗曠粍瑁呮垚routes瑕佹眰鐨勬牸寮�
* @param {*} routes
* @param {*} menu
*/
export function getAsyncRoutes(routes, menu) {
+ // routes 鏄痳oute.js鐨勮矾鐢�
+ // menu 鏄帴鍙h繑鍥炵殑璺敱
// menu 涓璮lag "0" 琛ㄧず true "1"琛ㄧずfalse
const menuCode = []// 灏嗗悗绔痗ode鍙栧嚭瀛樻垚鏁扮粍褰㈠紡
const menuNameAndCode = []// 灏嗗悗绔痗ode涓巒ame鍙栧嚭瀛樻垚鏁扮粍褰㈠紡
@@ -28,7 +18,7 @@
item.children.forEach(it => {
if (it.flag === '0') {
menuCode.push(it.code)
- menuNameAndCode.push({ code: it.code, name: it.name })
+ menuNameAndCode.push({ code: it.code, name: it.name, buttoncode: it.buttoncode, datacode: it.datacode })
}
})
}
@@ -44,7 +34,10 @@
let flag = false// 鍒ゆ柇鏄惁鏈塩hildren瀛樿繘鍘�
item.children.forEach(it => {
if (menuCode.includes(it.code)) {
- it.meta.title = menuNameAndCode.find(item2 => item2.code === it.code).name
+ const t = menuNameAndCode.find(item2 => item2.code === it.code)
+ it.meta.title = t.name
+ it.meta.buttoncode = t.buttoncode
+ it.meta.datacode = t.datacode
children.push(it)
flag = true
}
@@ -68,22 +61,6 @@
return newRoutes
}
-
-// 杩囨护鍑烘湁鏉冮檺鐨勮矾鐢�
-export function filterAsyncRoutes(routes, roles) {
- const res = []
- routes.forEach(route => {
- const tmp = { ...route }
- if (hasPermission(roles, tmp)) {
- if (tmp.children) {
- tmp.children = filterAsyncRoutes(tmp.children, roles)
- }
- res.push(tmp)
- }
- })
- return res
-}
-
const state = {
routes: commonRoutes,
addRouters: []
@@ -99,19 +76,8 @@
const actions = {
generateRoutes({ commit }, menu) {
return new Promise(resolve => {
- // const newRoutes = getAsyncRoutes(asyncRoutes, menu)
- let newRoutes
- if (getCookie('cloud')) {
- const arr = menu.map(i => i.code)
- newRoutes = asyncRoutesCloud.filter(i => {
- if (arr.includes(i.code)) {
- return i
- }
- })
- newRoutes.push({ path: '*', redirect: '/404', hidden: true })
- } else {
- newRoutes = getAsyncRoutes(asyncRoutes, menu)
- }
+ const newRoutes = getAsyncRoutes(asyncRoutes, menu)
+
commit('SET_ROUTES', newRoutes)
resolve(newRoutes)
})
--
Gitblit v1.9.3