mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 10:18:42 +08:00 
			
		
		
		
	
		
			
	
	
		
			61 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			61 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|   | 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) | ||
|  |     }) | ||
|  |   } | ||
|  | } |