Initial commit
This commit is contained in:
74
utils/permission.js
Normal file
74
utils/permission.js
Normal file
@@ -0,0 +1,74 @@
|
||||
import store from "@/store";
|
||||
|
||||
/**
|
||||
* @param {Array} value
|
||||
* @returns {Boolean}
|
||||
* @example see @/views/permission/directive.vue
|
||||
*/
|
||||
export const checkButtonPermission = (buttonCode, pageCode) => {
|
||||
console.log(store);
|
||||
let resources = store.state.resources;
|
||||
//console.log(resources);
|
||||
if (!resources) {
|
||||
return false;
|
||||
}
|
||||
if (!pageCode) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!buttonCode) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let pages = resources.filter(
|
||||
(item) => item.code == pageCode && item.type == 0
|
||||
);
|
||||
if (!pages) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let buttons = [];
|
||||
for (let key in pages) {
|
||||
buttons = resources.filter(
|
||||
(item) =>
|
||||
item.type == 1 && item.code == buttonCode && item.pid == pages[key].id
|
||||
);
|
||||
if (buttons.length > 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
export const checkPagePermission = (pageCode) => {
|
||||
let resources = store.state.resources;
|
||||
//console.log(resources);
|
||||
if (!Array.isArray(resources)) {
|
||||
resources = [];
|
||||
}
|
||||
|
||||
if (!pageCode) {
|
||||
return false;
|
||||
}
|
||||
let pages = resources.filter(
|
||||
(item) => item.code == pageCode && item.type == 0
|
||||
);
|
||||
if (pages.length < 1) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (
|
||||
[
|
||||
"truckOptBI",
|
||||
"hydrogenBill",
|
||||
"dailyHydrogenOrderBI",
|
||||
"weappMileageBi",
|
||||
"bi_ele_daily_summary",
|
||||
].includes(pages[0].code)
|
||||
) {
|
||||
return pages[0].link;
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
Reference in New Issue
Block a user