diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/home/AudioContentMainTabHomeService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/home/AudioContentMainTabHomeService.kt index a748425..7179cd3 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/home/AudioContentMainTabHomeService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/home/AudioContentMainTabHomeService.kt @@ -83,6 +83,7 @@ class AudioContentMainTabHomeService( val contentRankCreatorList = rankingService.fetchCreatorBySellContentCountRankTop20( memberId = member.id!!, + isAdult = isAdult, contentType = contentType, startDate = startDate.minusDays(1), endDate = endDate diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingRepository.kt index 611f595..b0639c1 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingRepository.kt @@ -409,6 +409,7 @@ class RankingRepository( fun fetchCreatorBySellContentCountRankTop20( memberId: Long, + isAdult: Boolean, contentType: ContentType, startDate: LocalDateTime, endDate: LocalDateTime @@ -422,7 +423,7 @@ class RankingRepository( .and(order.createdAt.goe(startDate)) .and(order.createdAt.lt(endDate)) - var memberCondition = member.isActive.isTrue + val memberCondition = member.isActive.isTrue .and(member.role.eq(MemberRole.CREATOR)) .and(member.id.eq(audioContent.member.id)) @@ -432,18 +433,22 @@ class RankingRepository( .and(audioContent.limited.isNull) .and(blockMember.id.isNull) - if (contentType != ContentType.ALL) { - where = where.and( - audioContent.member.auth.isNull.or( - audioContent.member.auth.gender.eq( - if (contentType == ContentType.MALE) { - 0 - } else { - 1 - } + if (!isAdult) { + where = where.and(audioContent.isAdult.isFalse) + } else { + if (contentType != ContentType.ALL) { + where = where.and( + audioContent.member.auth.isNull.or( + audioContent.member.auth.gender.eq( + if (contentType == ContentType.MALE) { + 0 + } else { + 1 + } + ) ) ) - ) + } } return queryFactory diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingService.kt index e921c34..088fc7d 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingService.kt @@ -189,11 +189,12 @@ class RankingService( fun fetchCreatorBySellContentCountRankTop20( memberId: Long, + isAdult: Boolean, contentType: ContentType, startDate: LocalDateTime, endDate: LocalDateTime ): List { - return repository.fetchCreatorBySellContentCountRankTop20(memberId, contentType, startDate, endDate) + return repository.fetchCreatorBySellContentCountRankTop20(memberId, isAdult, contentType, startDate, endDate) } fun fetchCreatorContentBySalesCountTop4(