Kaynağa Gözat

获取选择的上级角色对应的菜单/操作权限树接口的入参调整

v_HuilingDeng 4 yıl önce
ebeveyn
işleme
7c7e110716

+ 3 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/ListResourceTreeBySelectRoleCodeReq.java

@@ -15,6 +15,9 @@ import java.io.Serializable;
 @ApiModel
 public class ListResourceTreeBySelectRoleCodeReq  implements Serializable {
 
+    @ApiModelProperty("是否需要转成树形结构 1-需要")
+    private Integer isTree;
+
     @ApiModelProperty(value = "角色code")
     private String roleCode;
 

+ 19 - 15
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/RoleManagerServiceImpl.java

@@ -283,22 +283,26 @@ public class RoleManagerServiceImpl implements RoleManagerService {
         List<ListResourceTreeBySelectRoleCodeRes.ResourceBean> resourceBeanList = new ArrayList<>();
 
         //2-转树形
-        //放一个map,用于快捷查找到list  key为父resourceCode
-        Map<String,List<ListResourceTreeBySelectRoleCodeRes.ResourceBean>> resourceListMap = new HashMap<>();
-        //如果父类code为null,那么父list就是顶层list
-        resourceListMap.put(null,resourceBeanList);
-        //开始循环放入,因为查询语句排过序,所以查到的顺序,一定是先父后子
-        for(UserResource resource:userResourceList){
-            //先获取父类列表
-            List<ListResourceTreeBySelectRoleCodeRes.ResourceBean> parentList = resourceListMap.get(resource.getParentResourceCode());
-            //然后放入自己
-            ListResourceTreeBySelectRoleCodeRes.ResourceBean resourceBean = PojoConverterUtils.copy(resource, ListResourceTreeBySelectRoleCodeRes.ResourceBean.class);
-            parentList.add(resourceBean);
-            //如果resourceCode是3位or6位,则需要创建子list
-            if(resourceBean.getResourceCode().length()<=6){
-                resourceBean.setResourceBeanList(new ArrayList<>());
-                resourceListMap.put(resourceBean.getResourceCode(),resourceBean.getResourceBeanList());
+        if (listResourceTreeBySelectRoleCodeReq.getIsTree() != null && listResourceTreeBySelectRoleCodeReq.getIsTree() == 1) {
+            //放一个map,用于快捷查找到list  key为父resourceCode
+            Map<String, List<ListResourceTreeBySelectRoleCodeRes.ResourceBean>> resourceListMap = new HashMap<>();
+            //如果父类code为null,那么父list就是顶层list
+            resourceListMap.put(null, resourceBeanList);
+            //开始循环放入,因为查询语句排过序,所以查到的顺序,一定是先父后子
+            for (UserResource resource : userResourceList) {
+                //先获取父类列表
+                List<ListResourceTreeBySelectRoleCodeRes.ResourceBean> parentList = resourceListMap.get(resource.getParentResourceCode());
+                //然后放入自己
+                ListResourceTreeBySelectRoleCodeRes.ResourceBean resourceBean = PojoConverterUtils.copy(resource, ListResourceTreeBySelectRoleCodeRes.ResourceBean.class);
+                parentList.add(resourceBean);
+                //如果resourceCode是3位or6位,则需要创建子list
+                if (resourceBean.getResourceCode().length() <= 6) {
+                    resourceBean.setResourceBeanList(new ArrayList<>());
+                    resourceListMap.put(resourceBean.getResourceCode(), resourceBean.getResourceBeanList());
+                }
             }
+        }else {
+            resourceBeanList = PojoConverterUtils.copyList(userResourceList, ListResourceTreeBySelectRoleCodeRes.ResourceBean.class);
         }
 
         //放入出参