1.定义好指令
//自定义指令,用于权限控制
import customDirect from './store/modules/admin/modules/customDirect';
Vue.directive('getAuth', customDirect);
2.自定义指令内部逻辑
import store from "@/store"
import evaluationApi from "@/api/supplier-management/evaluation/index";
// [18 普通用户 20 供应商评价系统管理]
// 17 系统管理员角色暂不用
const getAuthDirective = {
inserted(el, binding) {
let userInfo = store._modules.root.state.admin.user.info.data;
// 面对面评审打分模块,判断当前用户是否为评委
if (binding.hasOwnProperty('value')) {
evaluationApi
.evaluatorList({ faceMainId: binding.value})
.then((res) => {
if (res.data.length > 0) {
//找到当前用户则给返回
res.data.forEach((data) => {
let pernr = data.pernr;
if (userInfo.pernr == pernr) {
el.disabled = false;
return;
}
});
}
});
}
}