|
@@ -84,11 +84,19 @@ public class CbsMusicScoreCategoriesServiceImpl implements CbsMusicScoreCategori
|
|
|
List<SysMusicScoreCategories> categoryList = this.queryByIds(categoryIds);
|
|
|
if(CollectionUtils.isNotEmpty(categoryList)){
|
|
|
String collect = categoryList.stream().map(SysMusicScoreCategories::getParentId).distinct().map(Object::toString).collect(Collectors.joining(","));
|
|
|
+ List<Integer> categoryListIds = categoryList.stream().map(SysMusicScoreCategories::getParentId).collect(Collectors.toList());
|
|
|
List<SysMusicScoreCategories> sysMusicScoreCategories = this.queryByIds(collect);
|
|
|
List<SysMusicScoreCategories> rows = new ArrayList<SysMusicScoreCategories>();
|
|
|
for (SysMusicScoreCategories musicScoreCategories : sysMusicScoreCategories) {
|
|
|
rows.add(this.getChildTree(musicScoreCategories));
|
|
|
}
|
|
|
+ for (SysMusicScoreCategories row : rows) {
|
|
|
+ //剔除子集不包含在categoryListIds中的数据
|
|
|
+ List<SysMusicScoreCategories> sysMusicScoreCategoriesList = row.getSysMusicScoreCategoriesList();
|
|
|
+ if(CollectionUtils.isNotEmpty(sysMusicScoreCategoriesList)){
|
|
|
+ sysMusicScoreCategoriesList.removeIf(e -> !categoryListIds.contains(e.getId()));
|
|
|
+ }
|
|
|
+ }
|
|
|
return rows;
|
|
|
}
|
|
|
return new ArrayList<>();
|