From 3b22191e50b2e5ba3bb8794f1dd7141a4616e6e1 Mon Sep 17 00:00:00 2001 From: fengchenchen Date: Tue, 26 Apr 2022 14:05:37 +0800 Subject: [PATCH] =?UTF-8?q?[update]=20-=20=E5=A2=9E=E5=8A=A0=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E6=98=AF=E5=86=85=E9=83=A8=E4=BC=81=E4=B8=9A=E7=9A=84?= =?UTF-8?q?=E6=9D=83=E9=99=90=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/hasPermission.js | 66 +++++++++++++++++++ .../businessManagement/BusinessManagement.vue | 23 +++++-- 2 files changed, 82 insertions(+), 7 deletions(-) diff --git a/src/utils/hasPermission.js b/src/utils/hasPermission.js index 4f4691b..11944ba 100644 --- a/src/utils/hasPermission.js +++ b/src/utils/hasPermission.js @@ -134,4 +134,70 @@ export function filterGlobalPermission(el, binding, vnode) { } } +/* +* 导出一个可以在js中做是否有权限判断的方法 +* */ +export function judgeGlobalPermission(bindingValue) { + let permissionList = [] + let allPermissionList = [] + + //let authList = Vue.ls.get(USER_AUTH); + let authList = JSON.parse(sessionStorage.getItem(USER_AUTH) || '[]') + for (let auth of authList) { + if(auth.type != '2') { + permissionList.push(auth) + } + } + let allAuthList = JSON.parse(sessionStorage.getItem(SYS_BUTTON_AUTH) || '[]') + for (let gauth of allAuthList) { + if(gauth.type != '2') { + allPermissionList.push(gauth) + } + } + //设置全局配置是否有命中 + let invalidFlag = false//无效命中 + if(allPermissionList != null && allPermissionList != '' && allPermissionList != undefined && allPermissionList.length > 0){ + for (let itemG of allPermissionList) { + if(bindingValue === itemG.action){ + if(itemG.status == '0'){ + invalidFlag = true + break + } + } + } + } + if(invalidFlag){ + return true + } + if (permissionList === null || permissionList === '' || permissionList === undefined||permissionList.length<=0) { + return false + } + let permissions = [] + for (let item of permissionList) { + //权限策略1显示2禁用 + if(item.type != '2'){ + //update--begin--autor:wangshuai-----date:20200729------for:按钮权限,授权标识的提示信息是多个用逗号分隔逻辑处理 gitee#I1OUGU------- + if(item.action){ + if(item.action.includes(',')){ + let split = item.action.split(',') + for (let i = 0; i { this.isLoading = false }) + }, + // 加载数据字典的方法,此处做其他数据的处理 + initDictConfig() { + let hasPermission = judgeGlobalPermission('company:updateInternalEnterprise') + if(hasPermission) { + this.columns.splice(this.columns.length - 1, 0, otherColumnItem) + } } } }