123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- "use strict";
- const store_index = require("../store/index.js");
- function authPermission(permission) {
- const all_permission = "*:*:*";
- const permissions = store_index.store.getters && store_index.store.getters.permissions;
- if (permission && permission.length > 0) {
- return permissions.some((v) => {
- return all_permission === v || v === permission;
- });
- } else {
- return false;
- }
- }
- function authRole(role) {
- const super_admin = "admin";
- const roles = store_index.store.getters && store_index.store.getters.roles;
- if (role && role.length > 0) {
- return roles.some((v) => {
- return super_admin === v || v === role;
- });
- } else {
- return false;
- }
- }
- const Auth = {
- /**
- * 验证用户是否具备某权限
- * @param permission 权限符
- * @returns
- */
- hasPermi(permission) {
- return authPermission(permission);
- },
- /**
- * 验证用户是否含有指定权限,只需包含其中一个
- * @param permissions 权限符数组
- * @returns
- */
- hasPermiOr(permissions) {
- return permissions.some((item) => {
- return authPermission(item);
- });
- },
- /**
- * 验证用户是否含有指定权限,必须全部拥有
- * @param permissions 权限符数组
- * @returns
- */
- hasPermiAnd(permissions) {
- return permissions.every((item) => {
- return authPermission(item);
- });
- },
- /**
- * 验证用户是否具备某角色
- * @param role 角色
- * @returns
- */
- hasRole(role) {
- return authRole(role);
- },
- /**
- * 验证用户是否含有指定角色,只需包含其中一个
- * @param roles 角色数组
- * @returns
- */
- hasRoleOr(roles) {
- return roles.some((item) => {
- return authRole(item);
- });
- },
- /**
- * 验证用户是否含有指定角色,必须全部拥有
- * @param roles 角色数组
- * @returns
- */
- hasRoleAnd(roles) {
- return roles.every((item) => {
- return authRole(item);
- });
- }
- };
- exports.Auth = Auth;
|