Compare commits

..

No commits in common. "39eb3d48a866bd6b74d8233d59b79ec1cf3b4333" and "dce1abaeff9839c7d2a818d37431c056cf51e87c" have entirely different histories.

6 changed files with 13 additions and 29 deletions

View File

@ -7,6 +7,5 @@ data class GetRecommendSeriesListResponse @QueryProjection constructor(
val title: String, val title: String,
val imageUrl: String, val imageUrl: String,
val creatorId: Long, val creatorId: Long,
val creatorNickname: String, val creatorNickname: String
val creatorProfileImageUrl: String
) )

View File

@ -30,8 +30,7 @@ class RecommendSeriesRepository(
series.title, series.title,
recommendSeries.imagePath.prepend("/").prepend(imageHost), recommendSeries.imagePath.prepend("/").prepend(imageHost),
member.id, member.id,
member.nickname, member.nickname
member.profileImage.prepend("/").prepend(imageHost)
) )
) )
.from(recommendSeries) .from(recommendSeries)
@ -58,8 +57,7 @@ class RecommendSeriesRepository(
series.title, series.title,
recommendSeries.imagePath.prepend("/").prepend(imageHost), recommendSeries.imagePath.prepend("/").prepend(imageHost),
member.id, member.id,
member.nickname, member.nickname
member.profileImage.prepend("/").prepend(imageHost)
) )
) )
.from(recommendSeries) .from(recommendSeries)

View File

@ -23,17 +23,15 @@ class AudioContentMainTabSeriesService(
) { ) {
fun fetchData(member: Member): GetContentMainTabSeriesResponse { fun fetchData(member: Member): GetContentMainTabSeriesResponse {
val isAdult = member.auth != null val isAdult = member.auth != null
val memberId = member.id!!
// 메인 배너 (시리즈) // 메인 배너 (시리즈)
val contentBannerList = bannerService.getBannerList( val contentBannerList = bannerService.getBannerList(
tabId = 2, tabId = 2,
memberId = memberId, memberId = member.id!!,
isAdult = isAdult isAdult = isAdult
) )
val originalAudioDrama = seriesService.getOriginalAudioDramaList( val originalAudioDrama = seriesService.getOriginalAudioDramaList(
memberId = memberId,
isAdult = isAdult, isAdult = isAdult,
offset = 0, offset = 0,
limit = 20 limit = 20
@ -50,7 +48,7 @@ class AudioContentMainTabSeriesService(
.plusDays(1) .plusDays(1)
val rankSeriesList = rankingService.getSeriesRanking( val rankSeriesList = rankingService.getSeriesRanking(
memberId = memberId, memberId = member.id!!,
isAdult = isAdult, isAdult = isAdult,
startDate = dailyRankingStartDate, startDate = dailyRankingStartDate,
endDate = dailyRankingEndDate endDate = dailyRankingEndDate
@ -62,7 +60,7 @@ class AudioContentMainTabSeriesService(
// 장르별 추천 시리즈 // 장르별 추천 시리즈
val recommendSeriesList = if (genreList.isNotEmpty()) { val recommendSeriesList = if (genreList.isNotEmpty()) {
rankingService.getSeriesAllRankingByGenre( rankingService.getSeriesAllRankingByGenre(
memberId = memberId, memberId = member.id!!,
isAdult = isAdult, isAdult = isAdult,
genreId = genreList[0].id genreId = genreList[0].id
) )
@ -84,7 +82,7 @@ class AudioContentMainTabSeriesService(
.plusMonths(1) .plusMonths(1)
val rankCompleteSeriesList = rankingService.getCompleteSeriesRanking( val rankCompleteSeriesList = rankingService.getCompleteSeriesRanking(
memberId = memberId, memberId = member.id!!,
isAdult = isAdult, isAdult = isAdult,
startDate = monthlyRankingStartDate, startDate = monthlyRankingStartDate,
endDate = monthlyRankingEndDate endDate = monthlyRankingEndDate
@ -100,7 +98,7 @@ class AudioContentMainTabSeriesService(
.plusDays(6) .plusDays(6)
val seriesRankCreatorList = rankingService.fetchCreatorBySeriesRevenueRankTop20( val seriesRankCreatorList = rankingService.fetchCreatorBySeriesRevenueRankTop20(
memberId = memberId, memberId = member.id!!,
startDate = startDate.minusDays(1), startDate = startDate.minusDays(1),
endDate = endDate endDate = endDate
) )
@ -124,7 +122,7 @@ class AudioContentMainTabSeriesService(
title = it.title, title = it.title,
items = seriesService.fetchSeriesByCurationId( items = seriesService.fetchSeriesByCurationId(
curationId = it.id!!, curationId = it.id!!,
memberId = memberId, memberId = member.id!!,
isAdult = isAdult isAdult = isAdult
) )
) )

View File

@ -35,7 +35,7 @@ interface ContentSeriesQueryRepository {
fun getKeywordList(seriesId: Long): List<String> fun getKeywordList(seriesId: Long): List<String>
fun getSeriesContentMinMaxPrice(seriesId: Long): GetSeriesContentMinMaxPriceResponse fun getSeriesContentMinMaxPrice(seriesId: Long): GetSeriesContentMinMaxPriceResponse
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(isAdult: Boolean, offset: Long = 0, limit: Long = 20): List<Series>
fun getGenreList(isAdult: Boolean): List<GetSeriesGenreListResponse> fun getGenreList(isAdult: Boolean): List<GetSeriesGenreListResponse>
fun findByCurationId(curationId: Long, memberId: Long, isAdult: Boolean): List<Series> fun findByCurationId(curationId: Long, memberId: Long, isAdult: Boolean): List<Series>
} }
@ -143,14 +143,9 @@ class ContentSeriesQueryRepositoryImpl(
.fetch() .fetch()
} }
override fun getOriginalAudioDramaList(memberId: Long, isAdult: Boolean, offset: Long, limit: Long): List<Series> { override fun getOriginalAudioDramaList(isAdult: Boolean, offset: Long, limit: Long): List<Series> {
val blockMemberCondition = blockMember.member.id.eq(member.id)
.and(blockMember.isActive.isTrue)
.and(blockMember.blockedMember.id.eq(memberId))
var where = series.isOriginal.isTrue var where = series.isOriginal.isTrue
.and(series.isActive.isTrue) .and(series.isActive.isTrue)
.and(blockMember.id.isNull)
if (!isAdult) { if (!isAdult) {
where = where.and(series.isAdult.isFalse) where = where.and(series.isAdult.isFalse)
@ -158,8 +153,6 @@ class ContentSeriesQueryRepositoryImpl(
return queryFactory return queryFactory
.selectFrom(series) .selectFrom(series)
.innerJoin(series.member, member)
.leftJoin(blockMember).on(blockMemberCondition)
.where(where) .where(where)
.orderBy(Expressions.numberTemplate(Double::class.java, "function('rand')").asc()) .orderBy(Expressions.numberTemplate(Double::class.java, "function('rand')").asc())
.offset(offset) .offset(offset)

View File

@ -31,12 +31,11 @@ class ContentSeriesService(
private val coverImageHost: String private val coverImageHost: String
) { ) {
fun getOriginalAudioDramaList( fun getOriginalAudioDramaList(
memberId: Long,
isAdult: Boolean, isAdult: Boolean,
offset: Long = 0, offset: Long = 0,
limit: Long = 20 limit: Long = 20
): List<GetSeriesListResponse.SeriesListItem> { ): List<GetSeriesListResponse.SeriesListItem> {
val originalAudioDramaList = repository.getOriginalAudioDramaList(memberId, isAdult, offset, limit) val originalAudioDramaList = repository.getOriginalAudioDramaList(isAdult, offset, limit)
return seriesToSeriesListItem(originalAudioDramaList, isAdult) return seriesToSeriesListItem(originalAudioDramaList, isAdult)
} }
@ -220,9 +219,6 @@ class ContentSeriesService(
it it
} }
.filter {
it.numberOfContent > 0
}
.map { .map {
val nowDateTime = LocalDateTime.now() val nowDateTime = LocalDateTime.now()

View File

@ -289,7 +289,7 @@ class RankingRepository(
.where(where) .where(where)
.groupBy(series.id) .groupBy(series.id)
.orderBy( .orderBy(
order.id.countDistinct().desc(), order.can.sum().desc(),
Expressions.numberTemplate(Double::class.java, "function('rand')").asc() Expressions.numberTemplate(Double::class.java, "function('rand')").asc()
) )
.offset(0) .offset(0)