Просмотр исходного кода

update:查询机构老师已购买的专辑曲目

yonge 1 неделя назад
Родитель
Сommit
9cf2e7c4a1

+ 7 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumMusicServiceImpl.java

@@ -252,6 +252,13 @@ public class TenantAlbumMusicServiceImpl extends ServiceImpl<TenantAlbumMusicMap
 
     @Override
     public IPage<TenantAlbumMusicWrapper.MusicSheetSimpleDto> selectPageSimple(IPage<TenantAlbumMusicWrapper.MusicSheetSimpleDto> page, TenantAlbumMusicWrapper.StudentTenantAlbumMusicQuery query) {
+    	//查询购买了哪些专辑权限
+    	if(query.getClientType() == ClientEnum.TEACHER) {
+    		// 判断是否还在生效中
+            List<UserTenantAlbumRecord> albumRecordList = userTenantAlbumRecordService.getUseAlbumByUserId(query.getUserId(), query.getClientType());
+            List<Long> tenantAlbumIdList = albumRecordList.stream().map(UserTenantAlbumRecord :: getTenantAlbumId).collect(Collectors.toList());
+            query.setTenantAlbumIdList(tenantAlbumIdList);
+    	}
         List<TenantAlbumMusicWrapper.MusicSheetSimpleDto> musicSheets = tenantAlbumMusicMapper.selectPageSimple(page, query);
         if (CollectionUtils.isEmpty(musicSheets)) {
             return page.setRecords(musicSheets);

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

@@ -154,6 +154,9 @@ public class TenantAlbumMusicWrapper {
         @ApiModelProperty(value = "详情专辑id")
         @NotNull(message = "专辑id不能为空")
         private Long albumId;
+        
+        @ApiModelProperty(value = "详情专辑id 集合")
+        private List<Long> tenantAlbumIdList;
 
         @ApiModelProperty("当前页")
         private Integer page;

+ 6 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAlbumMusicMapper.xml

@@ -92,6 +92,12 @@
                     #{item}
                 </foreach>
             </if>
+            <if test="param.tenantAlbumIdList != null and param.tenantAlbumIdList.size() != 0">
+                and t.tenant_album_id_ in
+                <foreach collection="param.tenantAlbumIdList" item="item" index="index" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
 
             <if test="param.keyword != null and param.keyword != ''">
                 and m.music_sheet_name_ LIKE CONCAT('%',#{param.keyword},'%')