2022-04-08 02:42:44 +00:00
|
|
|
import { Module } from 'vuex'
|
|
|
|
|
import { RouteRecordRaw } from 'vue-router'
|
|
|
|
|
import { apiConfigGetAuth } from '@/api/auth'
|
|
|
|
|
export interface PermissionModule {
|
|
|
|
|
sidebar: Array<RouteRecordRaw>
|
|
|
|
|
permission: any[] | null
|
|
|
|
|
isAdmin: number
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const permission: Module<PermissionModule, any> = {
|
|
|
|
|
namespaced: true,
|
|
|
|
|
state: {
|
|
|
|
|
// 左侧菜单
|
|
|
|
|
sidebar: [],
|
|
|
|
|
// 权限列表
|
|
|
|
|
permission: null,
|
|
|
|
|
// 是否是管理员
|
|
|
|
|
isAdmin: 0
|
|
|
|
|
},
|
|
|
|
|
getters: {},
|
|
|
|
|
mutations: {
|
|
|
|
|
setSidebar(state, data) {
|
|
|
|
|
state.sidebar = data
|
|
|
|
|
},
|
|
|
|
|
setPermission(state, data) {
|
|
|
|
|
state.permission = data.auth
|
|
|
|
|
state.isAdmin = data.root
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
actions: {
|
|
|
|
|
getPermission({ commit }) {
|
|
|
|
|
return new Promise((resolve, reject) => {
|
2022-04-12 02:33:06 +00:00
|
|
|
apiConfigGetAuth()
|
|
|
|
|
.then(data => {
|
|
|
|
|
commit('setPermission', data)
|
|
|
|
|
resolve(data)
|
|
|
|
|
})
|
|
|
|
|
.catch(err => {
|
|
|
|
|
reject(err)
|
|
|
|
|
})
|
2022-04-08 02:42:44 +00:00
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default permission
|