You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							60 lines
						
					
					
						
							1.5 KiB
						
					
					
				
			
		
		
	
	
							60 lines
						
					
					
						
							1.5 KiB
						
					
					
				import store from '@/store' | 
						|
 | 
						|
function authPermission(permission) { | 
						|
  const all_permission = "*:*:*"; | 
						|
  const permissions = store.getters && 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.getters && store.getters.roles | 
						|
  if (role && role.length > 0) { | 
						|
    return roles.some(v => { | 
						|
      return super_admin === v || v === role | 
						|
    }) | 
						|
  } else { | 
						|
    return false | 
						|
  } | 
						|
} | 
						|
 | 
						|
export default { | 
						|
  // 验证用户是否具备某权限 | 
						|
  hasPermi(permission) { | 
						|
    return authPermission(permission); | 
						|
  }, | 
						|
  // 验证用户是否含有指定权限,只需包含其中一个 | 
						|
  hasPermiOr(permissions) { | 
						|
    return permissions.some(item => { | 
						|
      return authPermission(item) | 
						|
    }) | 
						|
  }, | 
						|
  // 验证用户是否含有指定权限,必须全部拥有 | 
						|
  hasPermiAnd(permissions) { | 
						|
    return permissions.every(item => { | 
						|
      return authPermission(item) | 
						|
    }) | 
						|
  }, | 
						|
  // 验证用户是否具备某角色 | 
						|
  hasRole(role) { | 
						|
    return authRole(role); | 
						|
  }, | 
						|
  // 验证用户是否含有指定角色,只需包含其中一个 | 
						|
  hasRoleOr(roles) { | 
						|
    return roles.some(item => { | 
						|
      return authRole(item) | 
						|
    }) | 
						|
  }, | 
						|
  // 验证用户是否含有指定角色,必须全部拥有 | 
						|
  hasRoleAnd(roles) { | 
						|
    return roles.every(item => { | 
						|
      return authRole(item) | 
						|
    }) | 
						|
  } | 
						|
}
 | 
						|
 |