diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/AudioContentMainTabContentService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/AudioContentMainTabContentService.kt index 22d67c7..c38ad2c 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/AudioContentMainTabContentService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/AudioContentMainTabContentService.kt @@ -5,6 +5,8 @@ import kr.co.vividnext.sodalive.content.ContentType import kr.co.vividnext.sodalive.content.main.GetAudioContentMainItem import kr.co.vividnext.sodalive.content.main.GetAudioContentRankingItem import kr.co.vividnext.sodalive.content.main.banner.AudioContentBannerService +import kr.co.vividnext.sodalive.content.main.curation.AudioContentCurationQueryRepository +import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse import kr.co.vividnext.sodalive.content.theme.AudioContentThemeQueryRepository import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member @@ -18,7 +20,8 @@ class AudioContentMainTabContentService( private val audioContentRepository: AudioContentRepository, private val audioContentThemeRepository: AudioContentThemeQueryRepository, private val rankingService: RankingService, - private val eventService: EventService + private val eventService: EventService, + private val curationRepository: AudioContentCurationQueryRepository ) { fun fetchData( isAdultContentVisible: Boolean, @@ -27,10 +30,11 @@ class AudioContentMainTabContentService( ): GetContentMainTabContentResponse { val memberId = member.id!! val isAdult = member.auth != null + val tabId = 3L // 단편 배너 val contentBannerList = bannerService.getBannerList( - tabId = 3, + tabId = tabId, memberId = memberId, isAdult = isAdult ) @@ -83,6 +87,18 @@ class AudioContentMainTabContentService( emptyList() } + val curationList = curationRepository.findByContentMainTabId(tabId = tabId, isAdult = isAdult) + .map { + GetContentCurationResponse( + title = it.title, + items = audioContentRepository.findAudioContentByCurationIdV2( + curationId = it.id!!, + memberId = memberId, + isAdult = isAdult + ) + ) + } + return GetContentMainTabContentResponse( bannerList = contentBannerList, contentThemeList = themeOfContentList, @@ -91,7 +107,8 @@ class AudioContentMainTabContentService( rankContentList = rankContentList, contentRankCreatorList = contentRankCreatorList, salesCountRankContentList = salesCountRankContentList, - eventBannerList = eventBannerList + eventBannerList = eventBannerList, + curationList = curationList ) } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/GetContentMainTabContentResponse.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/GetContentMainTabContentResponse.kt index 649363e..7451491 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/GetContentMainTabContentResponse.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/content/GetContentMainTabContentResponse.kt @@ -4,6 +4,7 @@ import kr.co.vividnext.sodalive.content.main.ContentCreatorResponse import kr.co.vividnext.sodalive.content.main.GetAudioContentMainItem 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.event.GetEventResponse data class GetContentMainTabContentResponse( @@ -15,5 +16,6 @@ data class GetContentMainTabContentResponse( val rankContentList: List, val contentRankCreatorList: List, val salesCountRankContentList: List, - val eventBannerList: GetEventResponse + val eventBannerList: GetEventResponse, + val curationList: List )