// +---------------------------------------------------------------------- // | CRMEB [ CRMEB赋能开发者,助力企业发展 ] // +---------------------------------------------------------------------- // | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved. // +---------------------------------------------------------------------- // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 // +---------------------------------------------------------------------- // | Author: CRMEB Team // +---------------------------------------------------------------------- import store from '@/store'; /** * 字符权限校验 * @param {Array} value 校验值 * @returns {Boolean} */ export function checkPermi(value) { if (value && value instanceof Array && value.length > 0) { const permissions = store.getters && store.getters.permissions; const permissionDatas = value; const all_permission = '*:*:*'; const hasPermission = permissions.some((permission) => { return all_permission === permission || permissionDatas.includes(permission); }); if (!hasPermission) { return false; } return true; } else { console.error(`need roles! Like checkPermi="['system:user:add','system:user:edit']"`); return false; } } /** * 角色权限校验 * @param {Array} value 校验值 * @returns {Boolean} */ export function checkRole(value) { if (value && value instanceof Array && value.length > 0) { const roles = store.getters && store.getters.roles; const permissionRoles = value; const super_admin = 'admin'; const hasRole = roles.some((role) => { return super_admin === role || permissionRoles.includes(role); }); if (!hasRole) { return false; } return true; } else { console.error(`need roles! Like checkRole="['admin','editor']"`); return false; } }