From 889842eb8b64a0b72c449ce23ff21e4e8c935cae Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期五, 26 七月 2024 16:06:49 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java | 39 +++++++++++++++++++++++---------------- 1 files changed, 23 insertions(+), 16 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 4fad0ab..1414528 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 @@ -8,16 +8,17 @@ import com.vci.corba.portal.data.PLUILayout; import com.vci.frameworkcore.compatibility.ISmFunctionQueryService; import com.vci.frameworkcore.enumpck.ResourceControlTypeEnum; -import com.vci.frameworkcore.model.SmFunctionForPlatform1; -import com.vci.frameworkcore.model.SmRoleForPlatform1; -import com.vci.frameworkcore.pagemodel.MenuVO; -import com.vci.frameworkcore.pagemodel.SmFunctionVO; +import com.vci.model.SmFunctionForPlatform1; +import com.vci.model.SmRoleForPlatform1; +import com.vci.pagemodel.MenuVO; +import com.vci.pagemodel.SmFunctionVO; import com.vci.omd.utils.ObjectTool; +import com.vci.pagemodel.SmFunctionVO; import com.vci.starter.web.constant.QueryOptionConstant; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.*; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; -import com.vci.web.pageModel.UIContentVO; +import com.vci.pagemodel.UIContentVO; import com.vci.web.service.UIEngineServiceI; import com.vci.web.service.WebBoServiceI; import com.vci.web.util.PlatformClientUtil; @@ -228,6 +229,9 @@ Map<String, List<FunctionInfo>> map = rightControlUtil.getAllChildrenFunctionsByUserName( parentId, sessionInfo.getUserId(), userRoleRights); List<MenuVO> functionVOList = new ArrayList<>(); + if(CollectionUtils.isEmpty(map.get(parentId))){ + return functionVOList; + } for (FunctionInfo menu : map.get(parentId)) { if(!menu.isValid){ continue; @@ -235,9 +239,9 @@ MenuVO functionVO = new MenuVO(); functionVO.setId(menu.id); functionVO.setSource(menu.image); - if(StringUtils.isBlank(menu.resourceB)){ - continue; - } +// if(StringUtils.isBlank(menu.resourceB)){ +// continue; +// } functionVO.setPath(menu.resourceB); functionVO.setParentId(menu.parentId); functionVO.setCode(menu.aliasName); @@ -245,7 +249,7 @@ functionVO.setName(menu.name); functionVO.getMeta().put("keepAlive",false); functionVO.setSort((int) menu.seq); - functionVO.setChildren(findChildFunctionVO(menu.id)); + functionVO.setChildren(findChildFunctionVO(menu.id, map)); if(functionVO.getChildren().size() > 0){ functionVO.setHasChildren(true); }else { @@ -256,9 +260,12 @@ return functionVOList.stream().sorted(Comparator.comparing(s -> s.getSort())).collect(Collectors.toList()); } - public List<MenuVO> findChildFunctionVO(String parentOid) throws PLException { - FunctionInfo[] menus = platformClientUtil.getFrameworkService().getModuleListByParentId(parentOid, true); + public List<MenuVO> findChildFunctionVO(String parentOid,Map<String, List<FunctionInfo>> map) throws PLException { + List<FunctionInfo> menus = map.get(parentOid); List<MenuVO> functionVOList = new ArrayList<>(); + if(menus == null){ + return functionVOList; + } for (FunctionInfo menu : menus) { if(!menu.isValid){ continue; @@ -266,9 +273,9 @@ MenuVO functionVO = new MenuVO(); functionVO.setId(menu.id); functionVO.setSource(menu.image); - if(StringUtils.isBlank(menu.resourceB) ){ - continue; - } +// if(StringUtils.isBlank(menu.resourceB) ){ +// continue; +// } functionVO.setPath(menu.resourceB); functionVO.setCode(menu.aliasName); functionVO.setAlias(menu.aliasName); @@ -276,7 +283,7 @@ functionVO.setName(menu.name); functionVO.getMeta().put("keepAlive",false); functionVO.setSort((int) menu.seq); - functionVO.setChildren(findChildFunctionVO(menu.id)); + functionVO.setChildren(findChildFunctionVO(menu.id,map)); if(functionVO.getChildren().size() > 0){ functionVO.setHasChildren(true); }else { @@ -475,7 +482,7 @@ conditionMap.put(key,value); }); conditionMap.put("ploid", notIn ? QueryOptionConstant.NOTIN : QueryOptionConstant.IN + "select plfuncoid from plroleright where plroleoid in (" + WebUtil.toInSql(roleOids.toArray(new String[0])) + ")"); - VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(conditionMap,SmRoleForPlatform1.class); + VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(conditionMap, SmRoleForPlatform1.class); List<SmFunctionForPlatform1> functionForPlatform1s = boService.selectByQueryWrapper(queryWrapper, SmFunctionForPlatform1.class); if(!CollectionUtils.isEmpty(functionForPlatform1s)){ functions.addAll(functionForPlatform1s); -- Gitblit v1.9.3