From 6e783f279e7b1dd1f0fc243d7d8504ede0b25870 Mon Sep 17 00:00:00 2001 From: jyy <jyy> Date: Sun, 27 Jun 2021 15:47:57 +0800 Subject: [PATCH] 修复业绩bug1 --- zq-erp/src/main/java/com/matrix/system/common/authority/DefaultAuthorityManager.java | 40 +++++++++++++++++++++++++++------------- 1 files changed, 27 insertions(+), 13 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/common/authority/DefaultAuthorityManager.java b/zq-erp/src/main/java/com/matrix/system/common/authority/DefaultAuthorityManager.java index 4329524..db8c386 100644 --- a/zq-erp/src/main/java/com/matrix/system/common/authority/DefaultAuthorityManager.java +++ b/zq-erp/src/main/java/com/matrix/system/common/authority/DefaultAuthorityManager.java @@ -79,24 +79,33 @@ SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); Map<String, SysFunction> userFunction = WebUtil.getSessionAttribute(USERFUNCTION); + + // 企业管理员不校验按钮权限 if (AppConstance.USER_TYPE_DEVELOPER.equals(user.getSuUserType()) || AppConstance.USER_TYPE_SUPER.equals(user.getSuUserType()) || AppConstance.USER_TYPE_ADMIN.equals(user.getSuUserType())) { return true; } - String[] strs = matchStr.split("-"); - if (strs.length != DEFAULT_2) { - throw new IllegalArgumentException("权限matchStr格式错误,需要fnCode:btnValue"); - } - SysFunction fn = userFunction.get(strs[0].trim()); - // 功能是否存在 - if (fn == null) { + if (userFunction == null) { return false; } else { - return StringUtils.isContentSet(strs[1].trim(), fn.getRpfBns()); + + String[] strs = matchStr.split("-"); + if (strs.length != DEFAULT_2) { + throw new IllegalArgumentException("权限matchStr格式错误,需要fnCode:btnValue"); + } + + SysFunction fn = userFunction.get(strs[0].trim()); + // 功能是否存在 + if (fn == null) { + return false; + } else { + return StringUtils.isContentSet(strs[1].trim(), fn.getRpfBns()); + } } + } /** @@ -113,8 +122,13 @@ return true; } Map<String, SysFunction> userFunction = WebUtil.getSessionAttribute(USERFUNCTION); - SysFunction fn = userFunction.get(fnCode); - return fn == null ? false : true; + if (userFunction == null) { + return false; + } else { + SysFunction fn = userFunction.get(fnCode); + return fn == null ? false : true; + } + } /** @@ -141,7 +155,7 @@ SysUsers sysUser = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); - String redisKey = USER_POWER_REDISKEY_PC + SecureUtil.md5(sysUser.getSuId()+""); + String redisKey = USER_POWER_REDISKEY_PC + SecureUtil.md5(sysUser.getSuId() + ""); String cachedValue = redisClient.getCachedValue(redisKey); if (StringUtils.isNotBlank(cachedValue)) { //从缓存中获取用户权限 @@ -169,11 +183,11 @@ // 组装菜单 assembleMenu(menuFunction, menuFunctionMap); - Map<String ,Object> powerMap=new HashMap<>(); + Map<String, Object> powerMap = new HashMap<>(); powerMap.put(USERFUNCTION, userFunction); powerMap.put(MENUSFUNCTION, menuFunction); powerMap.put(USER_URL_MAPPING, userUrlMapping); - redisClient.saveValue(redisKey,JSONUtil.parseObj(powerMap,true)); + redisClient.saveValue(redisKey, JSONUtil.parseObj(powerMap, true)); } -- Gitblit v1.9.1