|
@@ -409,7 +409,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
|
|
|
return pageInfo;
|
|
|
}
|
|
|
@Override
|
|
|
- public PageInfo<SysMusicScore> queryMusicScorePageInfoSimple(SysExamSongQueryInfo queryInfo) {
|
|
|
+ public PageInfo<MusicSheetWrapper.MusicSheetSimpleDto> queryMusicScorePageInfoSimple(SysExamSongQueryInfo queryInfo) {
|
|
|
this.initCategoryIds(queryInfo);
|
|
|
if(queryInfo.getSubjectId() != null){
|
|
|
if(queryInfo.getSubjectId() == 5){
|
|
@@ -430,48 +430,28 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
|
|
|
MapUtil.populateMap(params, queryInfo);
|
|
|
|
|
|
List<MusicSheetWrapper.MusicSheetSimpleDto> dataList = null;
|
|
|
- int count = this.findCount(params);
|
|
|
+ int count = sysMusicScoreDao.findCountSimple(params);
|
|
|
if (count > 0) {
|
|
|
pageInfo.setTotal(count);
|
|
|
params.put("offset", pageInfo.getOffset());
|
|
|
- dataList = this.getDAO().queryPage(params);
|
|
|
+ dataList = sysMusicScoreDao.queryPageSimple(params);
|
|
|
+ List<String> cbsMusicSheetIds = dataList.stream().map(MusicSheetWrapper.MusicSheetSimpleDto::getCbsMusicSheetId).collect(Collectors.toList());
|
|
|
+ List<CbsMusicSheetWrapper.MusicSheetApplicationSimple> applications = this.queryCbsMusicSheetApplicationSimple(cbsMusicSheetIds);
|
|
|
+ if(CollectionUtils.isNotEmpty(applications)){
|
|
|
+ Map<Long, CbsMusicSheetWrapper.MusicSheetApplicationSimple> musicSheetApplicationMap = applications
|
|
|
+ .stream().collect(Collectors.toMap(CbsMusicSheetWrapper.MusicSheetApplicationSimple::getId, Function.identity()));
|
|
|
+ for (MusicSheetWrapper.MusicSheetSimpleDto record : dataList) {
|
|
|
+ CbsMusicSheetWrapper.MusicSheetApplicationSimple simple = musicSheetApplicationMap.get(Long.parseLong(record.getCbsMusicSheetId()));
|
|
|
+ record.setAudioFileUrl(simple.getAudioFileUrl());
|
|
|
+ record.setName(simple.getName());
|
|
|
+ record.setTitleImg(simple.getTitleImg());
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
if (count == 0) {
|
|
|
dataList = new ArrayList<>();
|
|
|
}
|
|
|
pageInfo.setRows(dataList);
|
|
|
- Map<String,SysMusicScore> cbsMusicSheetIds = rows.stream().collect(Collectors.toMap(SysMusicScore::getCbsMusicSheetId, Function.identity()));
|
|
|
- List<CbsMusicSheetWrapper.MusicSheetApplicationSimple> applications = this.queryCbsMusicSheetApplicationSimple(cbsMusicSheetIds);
|
|
|
- if(CollectionUtils.isNotEmpty(applications)){
|
|
|
-
|
|
|
- }
|
|
|
- dealMusicScoreData(rows);
|
|
|
-
|
|
|
- // 根据用户会员判断是否锁定,免费曲目为试用
|
|
|
- List<Integer> categoryIds = new ArrayList<>();
|
|
|
- if (queryInfo.getUserType()!=null && ClientEnum.STUDENT==queryInfo.getUserType()) {
|
|
|
- // 查询有效的会员
|
|
|
- List<Integer> activationVipIds = cloudTeacherOrderDao.getActivationVipIds(queryInfo.getUserId());
|
|
|
-
|
|
|
- // 获取会员的曲目分类
|
|
|
- List<MemberRankCategoryMapper> categoryMapperList = memberRankCategoryMapperService.getByMemberRankId(activationVipIds);
|
|
|
- if (CollectionUtils.isEmpty(categoryMapperList)) {
|
|
|
- categoryMapperList = new ArrayList<>();
|
|
|
- }
|
|
|
- categoryIds = categoryMapperList.stream().map(MemberRankCategoryMapper::getCategoryId).distinct().collect(Collectors.toList());
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- // 判断曲目是否在分类中
|
|
|
- for (SysMusicScore row : rows) {
|
|
|
- if (StringUtils.isBlank(row.getRankIds())) {
|
|
|
- row.setUseStatus("FREE");
|
|
|
- } else if (categoryIds.contains(row.getCbsMusicCategoriesId())) {
|
|
|
- row.setUseStatus("UNLOCK");
|
|
|
- } else {
|
|
|
- row.setUseStatus("LOCK");
|
|
|
- }
|
|
|
- }
|
|
|
return pageInfo;
|
|
|
}
|
|
|
|