7.5提交

This commit is contained in:
zoujiandong
2023-07-05 10:57:07 +08:00
parent 616519e0f0
commit 8b6b373803
20 changed files with 456 additions and 333 deletions
+31 -28
View File
@@ -1,7 +1,7 @@
import { defineStore } from 'pinia';
import { getUserMenuRole } from '@/api/admin/login';
import { getUserMenuRole,getUserButtonRole } from '@/api/admin/login';
// import { getCurrentInstance} from 'vue';
// const { proxy } = getCurrentInstance();
const modules = import.meta.glob('../views/**/*.vue');
export const usePermissionStore = defineStore('permisson', {
@@ -9,6 +9,7 @@ export const usePermissionStore = defineStore('permisson', {
return {
addRouters: [],
menuList: [],
buttonPermissions:[]
};
},
getters: {
@@ -19,43 +20,45 @@ export const usePermissionStore = defineStore('permisson', {
this.menuList = menus;
},
GenerateRoutes(routeList) {
try {
const routes = [];
const buttons=[];
routeList.forEach((item) => {
const route = {};
route.path = item.path;
route.name = item.menu_title;
if (item.parent_id==0) {
route.component = modules[`../views/index.vue`];
} else{
route.component = modules[`../views${item.component}.vue`] || modules['../views/error-page/888.vue'];
if (item.menu_type ==1 || item.menu_type ==2) {
route.path = item.path;
route.name = item.menu_name;
if (item.menu_type ==1) {
route.component = modules[`../views/index.vue`];
} else if (item.menu_type ==2) {
route.component = modules[`../views${item.component}.vue`] || modules['../views/error-page/888.vue'];
}
route.meta = {
title: item.menu_title,
permission: item.permission,
};
}
if (item.children) {
route.children = this.GenerateRoutes(item.children);
}
route.meta = {
title: item.menu_name,
permission: item.permission,
};
if (item.children) {
route.children = this.GenerateRoutes(item.children);
}
routes.push(route);
// }
});
return routes;
} catch (error) {
}
},
async getMenuRole() {
const res = await getUserMenuRole();
console.log(res.data);
this.setMenuList(res.data);
this.addRouters = await this.GenerateRoutes(res.data);
console.log("--------this.addRouters");
console.log(this.addRouters);
this.addRouters =await this.GenerateRoutes(res.data);
},
async getButtonRole() {
const {code,data,message} = await getUserButtonRole();
if(code==200){
this.buttonPermissions=data;
}else{
//proxy.$notification.error(message);
}
},
ClearMenuList() {
this.menuList = [];
+10 -4
View File
@@ -1,5 +1,6 @@
import { defineStore } from 'pinia';
import { setLocalStorage, getLocalStorage } from '@/utils/storage';
import {logout} from '@/api/admin/login'
import { getInfo } from '@/api/admin/sys-user';
import { getAppConfig } from '@/api/admin/login';
@@ -9,6 +10,7 @@ export const useUserStore = defineStore('user', {
token: window.sessionStorage.getItem('token') || '',
uid: window.sessionStorage.getItem('uid') || '',
sysConfig: getLocalStorage('sysConfig'),
buttonPermissions:[],
userInfo:window.sessionStorage.getItem('manage-userInfo')?JSON.parse(window.sessionStorage.getItem('manage-userInfo')):''
}
},
@@ -46,10 +48,14 @@ export const useUserStore = defineStore('user', {
} catch (err) {
console.error(err);
}
},
async userLogut() {
const {code} = await logout();
if(code==200){
this.token = null;
this.userInfo = null;
}
},
userLogout() {
this.token = null;
this.userInfo = null;
}
}
})