From 663878fdcd0d44c105888014f4cdf7fc926f609f Mon Sep 17 00:00:00 2001 From: yuxc <yuxc@vci-tech.com> Date: 星期三, 19 六月 2024 10:27:04 +0800 Subject: [PATCH] 1、去掉client包的相关更改。 2、修改登录鉴权修改。 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java | 29 ++++++++++++++++++++++------- 1 files changed, 22 insertions(+), 7 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 abc70d4..4fad0ab 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 @@ -3,6 +3,8 @@ import com.alibaba.fastjson.JSONObject; import com.vci.corba.common.PLException; import com.vci.corba.framework.data.FunctionInfo; +import com.vci.corba.framework.data.RoleRightInfo; +import com.vci.corba.omd.data.BusinessObject; import com.vci.corba.portal.data.PLUILayout; import com.vci.frameworkcore.compatibility.ISmFunctionQueryService; import com.vci.frameworkcore.enumpck.ResourceControlTypeEnum; @@ -10,6 +12,7 @@ import com.vci.frameworkcore.model.SmRoleForPlatform1; import com.vci.frameworkcore.pagemodel.MenuVO; import com.vci.frameworkcore.pagemodel.SmFunctionVO; +import com.vci.omd.utils.ObjectTool; import com.vci.starter.web.constant.QueryOptionConstant; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.*; @@ -18,6 +21,7 @@ import com.vci.web.service.UIEngineServiceI; import com.vci.web.service.WebBoServiceI; import com.vci.web.util.PlatformClientUtil; +import com.vci.web.util.RightControlUtil; import com.vci.web.util.WebUtil; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -74,6 +78,8 @@ @Autowired private PlatformClientUtil platformClientUtil; + @Autowired + RightControlUtil rightControlUtil; /** * 鏌ヨ鎵�鏈夌殑鍔熻兘 * @@ -208,12 +214,21 @@ @Override public List<MenuVO> treeCurrentUserMenu(TreeQueryObject treeQueryObject, ResourceControlTypeEnum resourceControlTypeEnum) throws PLException { SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfoNotException(); - if(resourceControlTypeEnum == null){ - resourceControlTypeEnum = ResourceControlTypeEnum.BS; + String parentId; + + if (rightControlUtil.isAdminOrDeveloperOrRoot(sessionInfo.getUserId())) { + // 绯荤粺鑿滃崟 + parentId = "systemManagmentNode" ; + } else if (rightControlUtil.isThreeAdminCurUser()) { + parentId = "systemManagmentNode" ; + } else { + parentId = "modelManagmentNode" ; } - FunctionInfo[] menus = platformClientUtil.getFrameworkService().getModuleListByParentId("modelManagmentNode", true); + RoleRightInfo[] userRoleRights = rightControlUtil.getRoleRightByUserName(sessionInfo.getUserId()); + Map<String, List<FunctionInfo>> map = rightControlUtil.getAllChildrenFunctionsByUserName( + parentId, sessionInfo.getUserId(), userRoleRights); List<MenuVO> functionVOList = new ArrayList<>(); - for (FunctionInfo menu : menus) { + for (FunctionInfo menu : map.get(parentId)) { if(!menu.isValid){ continue; } @@ -512,12 +527,12 @@ if(!CollectionUtils.isEmpty(functionVOS)){ functionVOList.addAll(functionVOS); String sql = "select plfuncoid,plroleoid from plroleright where plroleoid in (" + WebUtil.toInSql(roleOids.toArray(new String[0])) + ")"; - List<com.vci.client.bof.ClientBusinessObject> cbos = boService.queryBySql(sql, null); + List<BusinessObject> cbos = boService.queryBySql(sql, null); if(!CollectionUtils.isEmpty(cbos)){ cbos.stream().forEach(cbo->{ - String roleOid = cbo.getAttributeValue("plroleoid"); + String roleOid = ObjectTool.getBOAttributeValue(cbo,"plroleoid"); List<String> functionOids = roleFunctionOidMap.getOrDefault(roleOid,new ArrayList<>()); - functionOids.add(cbo.getAttributeValue("plfuncoid")); + functionOids.add(ObjectTool.getBOAttributeValue(cbo,"plfuncoid")); roleFunctionOidMap.put(roleOid,functionOids); }); } -- Gitblit v1.9.3