YD_SmartSports.Web/src/api/permission.js
2025-06-06 15:31:45 +08:00

43 lines
1.3 KiB
JavaScript

import http from '@/../src/api/http.js'
import buttons from '@/../config/buttons.js'
import store from '../store/index'
import { useRouter } from 'vue-router'
let permission = {
getMenu() {
return http.get("/api/getTreeMenu");
}, getButtons(path, extra, table, tableName) {//extra自定额外按钮
//table获取指定表的权限
if (table) { table = '/' + table; }
let permission = store.getters.getPermission(table || path);
if (!permission) {
permission = store.getters.getPermission(path.substring(1));
if (!permission) {
permission = store.getters.getPermission("/" + tableName);
if (!permission) {
to401();
return;
}
}
}
let permissions = permission.permission;//.split(',');
let gridButtons = buttons.filter(item => {
return !item.value || permissions.indexOf(item.value) != -1
});
if (extra && extra instanceof Array) {
gridButtons.push(...extra)
}
return gridButtons;
}, to401() {
to401();
}
}
function to401() {
const router = useRouter();
router.push({
path: '/401'
});
}
export default permission;