liujc 7 bulan lalu
induk
melakukan
37cd9e998d

+ 69 - 7
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/TenantAlbumController.java

@@ -4,7 +4,9 @@ import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.dayaedu.cbs.common.enums.school.ECourseType;
 import com.dayaedu.cbs.openfeign.client.CoursewareFeignService;
+import com.dayaedu.cbs.openfeign.client.MusicFeignClientService;
 import com.dayaedu.cbs.openfeign.wrapper.courseware.CbsLessonCoursewareWrapper;
+import com.dayaedu.cbs.openfeign.wrapper.music.MusicSheetCategoriesWrapper;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
 import com.yonge.cooleshow.admin.io.request.TenantAlbumVo;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
@@ -14,6 +16,7 @@ import com.yonge.cooleshow.biz.dal.enums.SubjectTypeEnum;
 import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.vo.MusicSheetVo;
 import com.yonge.cooleshow.biz.dal.wrapper.TenantAlbumWrapper;
+import com.yonge.cooleshow.common.constant.SysConfigConstant;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.page.PageInfo;
@@ -57,15 +60,14 @@ public class TenantAlbumController {
     @Autowired
     private MusicSheetService musicSheetService;
 
-    @Autowired
-    private SubjectService subjectService;
-
-    @Autowired
-    private MusicTagService musicTagService;
 
     @Autowired
     private CoursewareFeignService coursewareFeignService;
 
+    @Autowired
+    private MusicFeignClientService musicFeignClientService;
+    @Autowired
+    private SysConfigService sysConfigService;
     /**
      * 查询分页
      *
@@ -120,6 +122,10 @@ public class TenantAlbumController {
                 return tenantAlbumSheet;
             }).collect(Collectors.toList()));
         } else {
+
+            String cbsTenantAppId = sysConfigService.findConfigValue(SysConfigConstant.CBS_TENANT_APP_ID);
+            Long categoryId = getCategoryId(subjectType);
+
             List<Long> musicSheetIdlist = tenantAlbumMusics.stream().map(TenantAlbumMusic::getMusicSheetId).collect(Collectors.toList());
             StudentMusicSheetSearch search = new StudentMusicSheetSearch();
             search.setMusicSheetIdlist(musicSheetIdlist);
@@ -127,7 +133,16 @@ public class TenantAlbumController {
             search.setPage(1);
             search.setRows(9999);
             IPage<MusicSheetVo> records = musicSheetService.selectStudentPage(PageUtil.getPage(search), search, null);
-            return HttpResponseResult.succeed(records.getRecords().stream().map(o -> {
+
+            // 获取分类ID
+            List<MusicSheetVo> records1 = records.getRecords();
+            if (CollectionUtils.isEmpty(records1)) {
+                return HttpResponseResult.succeed();
+            }
+
+            List<MusicSheetCategoriesWrapper.MusicSheetCategories> musicSheetCategories = musicFeignClientService.queryTreeByAppId(Long.parseLong(cbsTenantAppId)).feignData();
+
+            return HttpResponseResult.succeed(records1.stream().map(o -> {
                 TenantAlbumWrapper.TenantAlbumSheet tenantAlbumSheet = new TenantAlbumWrapper.TenantAlbumSheet();
                 tenantAlbumSheet.setId(o.getId().toString());
                 tenantAlbumSheet.setMusicSheetName(o.getMusicSheetName());
@@ -135,7 +150,9 @@ public class TenantAlbumController {
                 tenantAlbumSheet.setComposer(o.getComposer());
                 tenantAlbumSheet.setMusicSubject(o.getMusicSubject());
                 tenantAlbumSheet.setMusicSubjectName(o.getSubjectNames());
-                tenantAlbumSheet.setMusicTagName(o.getMusicTagNames());
+                tenantAlbumSheet.setErrFlag(true);
+                tenantAlbumSheet.setMusicTagName(updateCategory(musicSheetCategories, categoryId, o.getTenantCategoryId(),true,tenantAlbumSheet.getErrFlag()));
+
                 return tenantAlbumSheet;
             }).collect(Collectors.toList()));
         }
@@ -143,6 +160,51 @@ public class TenantAlbumController {
 
     }
 
+    private String updateCategory(List<MusicSheetCategoriesWrapper.MusicSheetCategories> musicSheetCategories,
+                                Long categoryId, String tenantCategoryId,Boolean loop,Boolean success) {
+
+        if (StringUtils.isBlank(tenantCategoryId)) {
+            return "";
+        }
+        for (MusicSheetCategoriesWrapper.MusicSheetCategories o : musicSheetCategories) {
+            if (o.getId().equals(Long.parseLong(tenantCategoryId))) {
+                return o.getName();
+            }
+            if (CollectionUtils.isNotEmpty(o.getMusicSheetCategoriesList())) {
+                String s = updateCategory( o.getMusicSheetCategoriesList(), categoryId, tenantCategoryId,loop,success);
+                if (Boolean.FALSE.equals(loop)) {
+                    return s;
+                }
+                if (Boolean.TRUE.equals(success)) {
+                    success = o.getId().equals(categoryId);
+                }
+                if (o.getId().equals(categoryId)) {
+                    loop = false;
+                    return s;
+                }
+                if (StringUtils.isBlank(s)) {
+                    return "";
+                }
+                return o.getName() + "/" + s;
+            }
+        }
+        return "";
+    }
+
+    private Long getCategoryId(String subjectType) {
+        if (StringUtils.isBlank(subjectType)) {
+            return null;
+        }
+        if (SubjectTypeEnum.SUBJECT.name().equals(subjectType)) {
+            return Long.parseLong(sysConfigService.findConfigValue(SysConfigConstant.TENANT_ALBUM_SUBJECT_TYPE_CATEGORY));
+        } else if (SubjectTypeEnum.ENSEMBLE.name().equals(subjectType)) {
+            return Long.parseLong(sysConfigService.findConfigValue(SysConfigConstant.TENANT_ALBUM_ENSEMBLE_TYPE_CATEGORY));
+        } if (SubjectTypeEnum.MUSIC.name().equals(subjectType)) {
+            return Long.parseLong(sysConfigService.findConfigValue(SysConfigConstant.TENANT_ALBUM_MUSIC_TYPE_CATEGORY));
+        }
+        return null;
+    }
+
     /**
      * 查询详情
      *

+ 0 - 7
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/TenantMusicSheetApplicationExtendController.java

@@ -39,13 +39,6 @@ public class TenantMusicSheetApplicationExtendController {
     @Autowired
     private MusicFeignClientService musicFeignClientService;
 
-
-    @Autowired
-    private CbsMusicSheetService cbsMusicSheetService;
-
-    @Autowired
-    private OpenFeignClientConfigProperties openFeignClientConfigProperties;
-
     @Autowired
     private MusicSheetService musicSheetService;
 

+ 3 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantAlbumWrapper.java

@@ -381,6 +381,9 @@ public class TenantAlbumWrapper {
 
         @ApiModelProperty(value = "上传人")
         private String userName;
+
+        @ApiModelProperty(value = "是否错误")
+        private Boolean errFlag;
     }