diff --git a/src/main/java/mpms/permission/BaseDynamicService.java b/src/main/java/mpms/permission/BaseDynamicService.java index 161770d224da9e9eff40bfa459e68dc50cab2e73..83d3727bb1ffeec95710901bbcdb62a8bbdb7202 100644 --- a/src/main/java/mpms/permission/BaseDynamicService.java +++ b/src/main/java/mpms/permission/BaseDynamicService.java @@ -227,4 +227,29 @@ public interface BaseDynamicService { return list; } + /** + * 转换子级 + * + * @param classFeature 功能 + * @param jsonArray array + * @return list + */ + default List parserChildren(ClassFeature classFeature, JSONArray jsonArray) { + Set children = DynamicData.getChildren(classFeature); + if (children == null) { + return null; + } + List list = new ArrayList<>(); + Map jsonArrayMap = this.convertArray(jsonArray); + for (ClassFeature child : children) { + JSONArray jsonArray1 = jsonArrayMap.get(child); + List lists = parserValue(child, jsonArray1); + if (lists != null) { + list.addAll(lists); + } +// classFeatureListMap.put(child, list); + } + return list; + } + }