From 37d730454255d0680c2bc4f1e15dc5cd1a55e6a9 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期三, 30 十月 2024 09:58:36 +0800 Subject: [PATCH] 部门分配成员接口和界面传参修改,枚举修改报错修复提交 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java | 43 ++++++++++++++++++++++++++++++++++--------- 1 files changed, 34 insertions(+), 9 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java index a420aad..d065a32 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java @@ -12,6 +12,7 @@ import com.vci.corba.framework.data.*; import com.vci.corba.omd.data.BusinessObject; import com.vci.corba.portal.data.PLUILayout; +import com.vci.dto.RoleInfoDTO; import com.vci.dto.RoleRightDTO; import com.vci.dto.RoleRightParamDTO; import com.vci.frameworkcore.compatibility.ISmFunctionQueryService; @@ -531,6 +532,7 @@ menuVO.setSort((int) funcObj.seq); findChildAuthFunctionVO(menuVO, isAll); functionVO.getChildren().add(menuVO); + functionVO.setHasChildren(true); } }else if(type == 2){ FuncOperationInfo[] infos = platformClientUtil.getFrameworkService().getFuncOperationByModule(functionVO.getId(), "", true); @@ -549,6 +551,7 @@ menuVO.setIsValid(info.isValid); menuVO.setHasChildren(false); functionVO.getChildren().add(menuVO); + functionVO.setHasChildren(true); } }else{ functionVO.setHasChildren(false); @@ -580,15 +583,13 @@ public List<String> getSysModelAuth(String roleId) throws PLException { RoleRightInfo[] roleRightList = platformClientUtil.getFrameworkService().getRoleRightList(roleId, WebUtil.getCurrentUserId()); - Map<String, Long> authMap = Arrays.stream(roleRightList).collect(Collectors.toMap(e -> e.funcId, e -> e.rightValue)); + Map<String, Long> authMap = Arrays.stream(roleRightList).collect(Collectors.toMap(e -> e.funcId, e -> e.rightValue, + (existing, replacement) -> existing)); String parentId; SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfoNotException(); boolean adminOrDeveloperOrRoot = rightControlUtil.isAdminOrDeveloperOrRoot(sessionInfo.getUserId()); if (adminOrDeveloperOrRoot) { //绯荤粺鑿滃崟 - parentId = SYSTEMMANAGMENTNODE; - } else if (rightControlUtil.isThreeAdminCurUser()) { - //涓夊憳杩斿洖绠$悊鍔熻兘妯″潡鐩稿叧鐨勮彍鍗� parentId = SYSTEMMANAGMENTNODE; } else { //鏅�氱敤鎴峰彧杩斿洖涓氬姟鍔熻兘妯″潡鐩稿叧鐨勮彍鍗� @@ -598,7 +599,7 @@ List<String> authList = new ArrayList<>(); for (FunctionInfo functionInfo : moduleListByParentId) { if(authMap.containsKey(functionInfo.id)){ - authList.add(functionInfo.id); +// authList.add(functionInfo.id); getChildAuthNode(functionInfo, authMap, authList); } } @@ -685,6 +686,33 @@ return BaseResult.success(); } + /** + * 鑾峰彇鎵�鎺堟潈鐨勬ā鍧楁潈闄� + * @param roleName 鎼滅储鐨勮鑹� + * @return 瑙掕壊鍒楄〃 + */ + @Override + public List<RoleInfoDTO> getRoleList(String roleName) throws PLException { + RoleInfo[] roleInfos = platformClientUtil.getFrameworkService().fetchRoleInfoByUserType(WebUtil.getCurrentUserId()); + List<RoleInfoDTO> dtos = new ArrayList<>(); + for (RoleInfo roleInfo : roleInfos) { + if(StringUtils.isBlank(roleName) || roleInfo.name.indexOf(roleName) != -1) { + RoleInfoDTO dto = new RoleInfoDTO(); + dto.setName(roleInfo.name); + dto.setDescription(roleInfo.description); + dto.setId(roleInfo.id); + dto.setGrantor(roleInfo.grantor); + dto.setType(roleInfo.type); + dto.setCreateTime(roleInfo.createTime); + dto.setCreateUser(roleInfo.createUser); + dto.setUpdateTime(roleInfo.updateTime); + dto.setUpdateUser(roleInfo.updateUser); + dtos.add(dto); + } + } + return dtos; + } + private long countRightValue(List<RoleRightParamDTO> dtos){ long value = 0; for (RoleRightParamDTO dto : dtos) { @@ -707,7 +735,7 @@ FunctionInfo[] funcInfos = platformClientUtil.getFrameworkService().getModuleListByParentId(funcObj.id, false); for(int i=0;i<funcInfos.length;i++){ if(authMap.containsKey(funcInfos[i].id)){ - authList.add(funcInfos[i].id); +// authList.add(funcInfos[i].id); getChildAuthNode(funcInfos[i], authMap, authList); } } @@ -1075,9 +1103,6 @@ String parentId; if (adminOrDeveloperOrRoot) { //绯荤粺鑿滃崟 - parentId = SYSTEMMANAGMENTNODE; - } else if (rightControlUtil.isThreeAdminCurUser()) { - //涓夊憳杩斿洖绠$悊鍔熻兘妯″潡鐩稿叧鐨勮彍鍗� parentId = SYSTEMMANAGMENTNODE; } else { //鏅�氱敤鎴峰彧杩斿洖涓氬姟鍔熻兘妯″潡鐩稿叧鐨勮彍鍗� -- Gitblit v1.9.3