Merge pull request '콘텐츠 메인 시리즈 탭 - 장르별 시리즈' (#266) from test into main
Reviewed-on: #266
This commit is contained in:
		| @@ -58,7 +58,7 @@ class AudioContentMainTabSeriesService( | |||||||
|         ) |         ) | ||||||
|  |  | ||||||
|         // 시리즈 장르 |         // 시리즈 장르 | ||||||
|         val genreList = seriesService.getGenreList(isAdult = isAdult) |         val genreList = seriesService.getGenreList(memberId = memberId, isAdult = isAdult) | ||||||
|  |  | ||||||
|         // 장르별 추천 시리즈 |         // 장르별 추천 시리즈 | ||||||
|         val recommendSeriesList = if (genreList.isNotEmpty()) { |         val recommendSeriesList = if (genreList.isNotEmpty()) { | ||||||
|   | |||||||
| @@ -37,7 +37,7 @@ interface ContentSeriesQueryRepository { | |||||||
|     fun getRecommendSeriesList(isAuth: Boolean, contentType: ContentType, limit: Long): List<Series> |     fun getRecommendSeriesList(isAuth: Boolean, contentType: ContentType, limit: Long): List<Series> | ||||||
|     fun getOriginalAudioDramaList(memberId: Long, isAdult: Boolean, offset: Long = 0, limit: Long = 20): List<Series> |     fun getOriginalAudioDramaList(memberId: Long, isAdult: Boolean, offset: Long = 0, limit: Long = 20): List<Series> | ||||||
|     fun getOriginalAudioDramaTotalCount(memberId: Long, isAdult: Boolean): Int |     fun getOriginalAudioDramaTotalCount(memberId: Long, isAdult: Boolean): Int | ||||||
|     fun getGenreList(isAdult: Boolean): List<GetSeriesGenreListResponse> |     fun getGenreList(isAdult: Boolean, memberId: Long): List<GetSeriesGenreListResponse> | ||||||
|     fun findByCurationId(curationId: Long, memberId: Long, isAdult: Boolean): List<Series> |     fun findByCurationId(curationId: Long, memberId: Long, isAdult: Boolean): List<Series> | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -191,17 +191,36 @@ class ContentSeriesQueryRepositoryImpl( | |||||||
|             .size |             .size | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     override fun getGenreList(isAdult: Boolean): List<GetSeriesGenreListResponse> { |     override fun getGenreList(isAdult: Boolean, memberId: Long): List<GetSeriesGenreListResponse> { | ||||||
|  |         val blockMemberCondition = blockMember.member.id.eq(member.id) | ||||||
|  |             .and(blockMember.isActive.isTrue) | ||||||
|  |             .and(blockMember.blockedMember.id.eq(memberId)) | ||||||
|  |  | ||||||
|         var where = seriesGenre.isActive.isTrue |         var where = seriesGenre.isActive.isTrue | ||||||
|  |             .and(series.isActive.isTrue) | ||||||
|  |             .and(audioContent.isActive.isTrue) | ||||||
|  |             .and(member.isActive.isTrue) | ||||||
|  |             .and(member.isNotNull) | ||||||
|  |             .and(member.role.eq(MemberRole.CREATOR)) | ||||||
|  |             .and(audioContent.duration.isNotNull) | ||||||
|  |             .and(audioContent.limited.isNull) | ||||||
|  |             .and(blockMember.id.isNull) | ||||||
|  |  | ||||||
|         if (!isAdult) { |         if (!isAdult) { | ||||||
|             where = where.and(seriesGenre.isAdult.isFalse) |             where = where.and(seriesGenre.isAdult.isFalse) | ||||||
|  |                 .and(series.isAdult.isFalse) | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         return queryFactory |         return queryFactory | ||||||
|             .select(QGetSeriesGenreListResponse(seriesGenre.id, seriesGenre.genre)) |             .select(QGetSeriesGenreListResponse(seriesGenre.id, seriesGenre.genre)) | ||||||
|             .from(seriesGenre) |             .from(seriesContent) | ||||||
|  |             .innerJoin(seriesContent.series, series) | ||||||
|  |             .innerJoin(series.genre, seriesGenre) | ||||||
|  |             .innerJoin(seriesContent.content, audioContent) | ||||||
|  |             .innerJoin(series.member, member) | ||||||
|  |             .leftJoin(blockMember).on(blockMemberCondition) | ||||||
|             .where(where) |             .where(where) | ||||||
|  |             .groupBy(seriesGenre.id) | ||||||
|             .orderBy(seriesGenre.orders.asc()) |             .orderBy(seriesGenre.orders.asc()) | ||||||
|             .fetch() |             .fetch() | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -44,8 +44,8 @@ class ContentSeriesService( | |||||||
|         return seriesToSeriesListItem(originalAudioDramaList, isAdult) |         return seriesToSeriesListItem(originalAudioDramaList, isAdult) | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     fun getGenreList(isAdult: Boolean): List<GetSeriesGenreListResponse> { |     fun getGenreList(memberId: Long, isAdult: Boolean): List<GetSeriesGenreListResponse> { | ||||||
|         return repository.getGenreList(isAdult = isAdult) |         return repository.getGenreList(memberId = memberId, isAdult = isAdult) | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     fun getSeriesList( |     fun getSeriesList( | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user