From c4d25912d11ab9059f8165c25a161634bb9b5e97 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 16 六月 2026 09:45:33 +0800
Subject: [PATCH] proapp 1.工作台分类修改
---
src/utils/permission.ts | 40 +++++++++++++++++++++++++++++++++++++---
1 files changed, 37 insertions(+), 3 deletions(-)
diff --git a/src/utils/permission.ts b/src/utils/permission.ts
index 68d3b84..3d6c5cd 100644
--- a/src/utils/permission.ts
+++ b/src/utils/permission.ts
@@ -1,10 +1,28 @@
+import useUserStore from '@/store/modules/user'
+
/**
* 瀛楃鏉冮檺鏍¢獙
* @param {Array} value 鏍¢獙鍊�
* @returns {Boolean}
*/
export function checkPermi(value:Array<string>) {
- return true
+ if (value && value instanceof Array && value.length > 0) {
+ const permissions:Array<string> = useUserStore().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
+ }
}
/**
@@ -13,5 +31,21 @@
* @returns {Boolean}
*/
export function checkRole(value:Array<string>) {
- return true
-}
+ if (value && value instanceof Array && value.length > 0) {
+ const roles:Array<string> = useUserStore().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
+ }
+}
\ No newline at end of file
--
Gitblit v1.9.3