diff --git a/src/main/java/mpms/permission/BaseDynamicService.java b/src/main/java/mpms/permission/BaseDynamicService.java index 4638aab93f3f1f6e48035e4f80367807f44d8b4d..a3a0a6e08c0a53b4ce684ee43212318d991c3533 100644 --- a/src/main/java/mpms/permission/BaseDynamicService.java +++ b/src/main/java/mpms/permission/BaseDynamicService.java @@ -160,4 +160,41 @@ public interface BaseDynamicService { return jsonArray; } + /** + * 处理子级数据 + * + * @param classFeature 功能 + * @param roleId 角色id + * @param dataId 数据id + * @param jsonObject parent + * @return 是否包含子级 + */ + default boolean doChildren(ClassFeature classFeature, String roleId, String dataId, JSONObject jsonObject) { + Set children = DynamicData.getChildren(classFeature); + if (children == null) { + return false; + } + JSONArray childrens = new JSONArray(); + children.forEach(classFeature1 -> { + RoleService bean = SpringUtil.getBean(RoleService.class); + JSONArray jsonArray1 = bean.listDynamic(roleId, classFeature1, dataId); + if (jsonArray1 == null || jsonArray1.isEmpty()) { + return; + } + JSONObject jsonObject1 = new JSONObject(); + jsonObject1.put("children", jsonArray1); + jsonObject1.put("title", classFeature1.getName()); + jsonObject1.put("id", classFeature1.name()); + childrens.add(jsonObject1); + }); + if (!childrens.isEmpty()) { + jsonObject.put("children", childrens); + } + return true; + } + + // -------------------------------------- 转换数据为tree end + + // -------------------------------------- 前端接收选中 + }