From 905c08fb2c190435e2a6771cae8e4bf29edf3a79 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Tue, 19 Mar 2024 16:38:37 +0800
Subject: [PATCH] 升级oshi到最新版本6.5.0
---
ruoyi-ui/src/utils/permission.js | 45 ++++++++++++++++++++++++++++++++++-----------
1 files changed, 34 insertions(+), 11 deletions(-)
diff --git a/ruoyi-ui/src/utils/permission.js b/ruoyi-ui/src/utils/permission.js
index efb4cc8..0fc5515 100644
--- a/ruoyi-ui/src/utils/permission.js
+++ b/ruoyi-ui/src/utils/permission.js
@@ -1,24 +1,47 @@
import store from '@/store'
/**
- * @param {Array} value
+ * 字符权限校验
+ * @param {Array} value 校验值
* @returns {Boolean}
*/
-export default function checkPermission(value) {
+export function checkPermi(value) {
if (value && value instanceof Array && value.length > 0) {
- const roles = store.getters && store.getters.roles
- const permissionRoles = value
+ const permissions = store.getters && store.getters.permissions
+ const permissionDatas = value
+ const all_permission = "*:*:*";
- const hasPermission = roles.some(role => {
- return permissionRoles.includes(role)
+ const hasPermission = permissions.some(permission => {
+ return all_permission === permission || permissionDatas.includes(permission)
})
- if (!hasPermission) {
- return false
- }
- return true
+ return hasPermission;
+
} else {
- console.error(`need roles! Like v-permission="['admin','editor']"`)
+ 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)
+ })
+
+ return hasRole;
+
+ } else {
+ console.error(`need roles! Like checkRole="['admin','editor']"`)
+ return false
+ }
+}
\ No newline at end of file
--
Gitblit v1.9.2