diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/api/home/GetHomeResponse.kt b/src/main/kotlin/kr/co/vividnext/sodalive/api/home/GetHomeResponse.kt index 671ae98..6db81ca 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/api/home/GetHomeResponse.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/api/home/GetHomeResponse.kt @@ -3,6 +3,7 @@ package kr.co.vividnext.sodalive.api.home import kr.co.vividnext.sodalive.audition.GetAuditionListItem import kr.co.vividnext.sodalive.content.AudioContentMainItem import kr.co.vividnext.sodalive.content.main.GetAudioContentRankingItem +import kr.co.vividnext.sodalive.content.main.banner.GetAudioContentBannerResponse import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse import kr.co.vividnext.sodalive.content.series.GetSeriesListResponse import kr.co.vividnext.sodalive.event.GetEventResponse @@ -15,6 +16,7 @@ data class GetHomeResponse( val creatorRanking: List, val latestContentThemeList: List, val latestContentList: List, + val bannerList: List, val eventBannerList: GetEventResponse, val originalAudioDramaList: List, val auditionList: List, diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/api/home/HomeService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/api/home/HomeService.kt index 10cb898..fb30d96 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/api/home/HomeService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/api/home/HomeService.kt @@ -4,12 +4,13 @@ import kr.co.vividnext.sodalive.audition.AuditionService import kr.co.vividnext.sodalive.content.AudioContentMainItem import kr.co.vividnext.sodalive.content.AudioContentService import kr.co.vividnext.sodalive.content.ContentType +import kr.co.vividnext.sodalive.content.main.banner.AudioContentBannerService import kr.co.vividnext.sodalive.content.main.curation.AudioContentCurationService import kr.co.vividnext.sodalive.content.series.ContentSeriesService import kr.co.vividnext.sodalive.content.series.GetSeriesListResponse import kr.co.vividnext.sodalive.content.theme.AudioContentThemeService import kr.co.vividnext.sodalive.creator.admin.content.series.SeriesPublishedDaysOfWeek -import kr.co.vividnext.sodalive.event.EventService +import kr.co.vividnext.sodalive.event.GetEventResponse import kr.co.vividnext.sodalive.explorer.ExplorerQueryRepository import kr.co.vividnext.sodalive.live.room.LiveRoomService import kr.co.vividnext.sodalive.live.room.LiveRoomStatus @@ -28,12 +29,12 @@ import java.time.temporal.TemporalAdjusters @Service class HomeService( - private val eventService: EventService, private val memberService: MemberService, private val liveRoomService: LiveRoomService, private val auditionService: AuditionService, private val seriesService: ContentSeriesService, private val contentService: AudioContentService, + private val bannerService: AudioContentBannerService, private val curationService: AudioContentCurationService, private val contentThemeService: AudioContentThemeService, private val recommendChannelService: RecommendChannelQueryService, @@ -95,7 +96,16 @@ class HomeService( } } - val eventBannerList = eventService.getEventList(isAdult = isAdult) + val eventBannerList = GetEventResponse( + totalCount = 0, + eventList = emptyList() + ) + + val bannerList = bannerService.getBannerList( + tabId = 1, + memberId = member?.id, + isAdult = isAdult + ) val originalAudioDramaList = seriesService.getOriginalAudioDramaList( isAdult = isAdult, @@ -167,6 +177,7 @@ class HomeService( creatorRanking = creatorRanking, latestContentThemeList = latestContentThemeList, latestContentList = latestContentList, + bannerList = bannerList, eventBannerList = eventBannerList, originalAudioDramaList = originalAudioDramaList, auditionList = auditionList, diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentRepository.kt index 7b046e4..1ee6a50 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentRepository.kt @@ -1336,10 +1336,8 @@ class AudioContentQueryRepositoryImpl( where = where.and(audioContentTheme.theme.`in`(theme)) } - where = if (isFree) { - where.and(audioContent.price.loe(0)) - } else { - where.and(audioContent.price.gt(0)) + if (isFree) { + where = where.and(audioContent.price.loe(0)) } return queryFactory diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/theme/AudioContentThemeQueryRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/theme/AudioContentThemeQueryRepository.kt index d637431..2eeb2ad 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/theme/AudioContentThemeQueryRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/theme/AudioContentThemeQueryRepository.kt @@ -55,10 +55,8 @@ class AudioContentThemeQueryRepository( } } - where = if (isFree) { - where.and(audioContent.price.loe(0)) - } else { - where.and(audioContent.price.gt(0)) + if (isFree) { + where = where.and(audioContent.price.loe(0)) } return queryFactory diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryRepository.kt index fadfdc2..295ed6a 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryRepository.kt @@ -60,7 +60,13 @@ class RecommendChannelQueryRepository( .fetch() } - fun getContentsByCreatorIdLikeDesc(creatorId: Long): List { + fun getContentsByCreatorIdLikeDesc(creatorId: Long, isAdult: Boolean): List { + var where = audioContent.member.id.eq(creatorId) + + if (!isAdult) { + where = where.and(audioContent.isAdult.isFalse) + } + return queryFactory .select( QRecommendChannelContentItem( @@ -82,7 +88,7 @@ class RecommendChannelQueryRepository( audioContentComment.audioContent.id.eq(audioContent.id) .and(audioContentComment.isActive.isTrue) ) - .where(audioContent.member.id.eq(creatorId)) + .where(where) .groupBy(audioContent.id) .orderBy(audioContentLike.id.countDistinct().desc()) .limit(3) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryService.kt index 716ec47..2ad1bc8 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/query/recommend/RecommendChannelQueryService.kt @@ -23,7 +23,11 @@ class RecommendChannelQueryService(private val repository: RecommendChannelQuery ) return recommendChannelList.map { - it.contentList = repository.getContentsByCreatorIdLikeDesc(it.channelId) + it.contentList = repository.getContentsByCreatorIdLikeDesc( + creatorId = it.channelId, + isAdult = isAdult + ) + it } }