|
@@ -82,34 +82,15 @@ public class CbsMusicScoreCategoriesServiceImpl implements CbsMusicScoreCategori
|
|
|
public List<SysMusicScoreCategories> queryCategoriesTreeList(String categoryIds, Boolean isQueryEnable) {
|
|
|
categoryIds = categoryIds.endsWith(",") ? categoryIds.substring(0, categoryIds.length() - 1) : categoryIds;
|
|
|
List<SysMusicScoreCategories> categoryList = this.queryByIds(categoryIds);
|
|
|
- List<SysMusicScoreCategories> rows = new ArrayList<SysMusicScoreCategories>();
|
|
|
- SysMusicScoreCategories parentCategory = null;
|
|
|
- SysMusicScoreCategories subCategory = null;
|
|
|
- for(SysMusicScoreCategories smsc : categoryList){
|
|
|
-
|
|
|
- if(smsc == null){
|
|
|
- continue;
|
|
|
- }
|
|
|
- if(isQueryEnable == null){
|
|
|
- isQueryEnable = true;
|
|
|
- }
|
|
|
- if(isQueryEnable && !smsc.getEnable()){
|
|
|
- continue;
|
|
|
- }
|
|
|
- parentCategory = getParentTree(smsc);
|
|
|
- subCategory = getChildTree(smsc);
|
|
|
-
|
|
|
- if(parentCategory == null){
|
|
|
- insertSubToParent(rows, subCategory);
|
|
|
- }else{
|
|
|
- parentCategory.getSysMusicScoreCategoriesList().add(subCategory);
|
|
|
- insertSubToParent(rows, parentCategory);
|
|
|
+ if(CollectionUtils.isNotEmpty(categoryList)){
|
|
|
+ List<Integer> collect = categoryList.stream().map(SysMusicScoreCategories::getParentId).distinct().collect(Collectors.toList());
|
|
|
+ List<SysMusicScoreCategories> rows = new ArrayList<SysMusicScoreCategories>();
|
|
|
+ for (Integer i : collect) {
|
|
|
+ rows.add(this.getChildTreeById(i.longValue()));
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
+ return rows;
|
|
|
}
|
|
|
-
|
|
|
- return rows;
|
|
|
+ return new ArrayList<>();
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -131,6 +112,19 @@ public class CbsMusicScoreCategoriesServiceImpl implements CbsMusicScoreCategori
|
|
|
return musicSheetCategories.stream().map(this::convertMusicSheetCategoryToSysMusicScoreCategory).collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public SysMusicScoreCategories getChildTreeById(Long var1) {
|
|
|
+ R<MusicSheetCategoriesWrapper.MusicSheetCategories> childTreeById = musicFeignClientService.getChildTreeById(var1);
|
|
|
+ if (childTreeById.getCode() != 200) {
|
|
|
+ throw new BizException("查询曲目分类失败,{}", childTreeById.getMessage());
|
|
|
+ }
|
|
|
+ MusicSheetCategoriesWrapper.MusicSheetCategories musicSheetCategories = childTreeById.feignData();
|
|
|
+ if (musicSheetCategories != null) {
|
|
|
+ return convertMusicSheetCategoryToSysMusicScoreCategory(musicSheetCategories);
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
public SysMusicScoreCategories getParentTree(SysMusicScoreCategories sysMusicScoreCategories) {
|
|
|
if (sysMusicScoreCategories != null && sysMusicScoreCategories.getParentId() > 0) {
|
|
|
List<SysMusicScoreCategories> categories = this.queryByIds(sysMusicScoreCategories.getParentId().toString());
|