From f9c34d14c37f6833661f50441f335c4266d8af37 Mon Sep 17 00:00:00 2001 From: Klaus Date: Mon, 17 Feb 2025 12:15:02 +0900 Subject: [PATCH] =?UTF-8?q?=EC=BD=98=ED=85=90=EC=B8=A0=20=EB=A9=94?= =?UTF-8?q?=EC=9D=B8=20-=20=EC=B1=84=EB=84=90=EB=B3=84=20**=20=EC=BD=98?= =?UTF-8?q?=ED=85=90=EC=B8=A0=20-=20=EB=A7=A4=EC=B6=9C=20=EC=88=9C?= =?UTF-8?q?=EC=9C=84=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tab/GetPopularContentByCreatorResponse.kt | 8 ---- .../asmr/AudioContentMainTabAsmrService.kt | 31 ++---------- .../tab/asmr/GetContentMainTabAsmrResponse.kt | 1 - .../AudioContentMainTabContentService.kt | 25 +--------- .../GetContentMainTabContentResponse.kt | 1 - .../home/AudioContentMainTabHomeService.kt | 16 ++----- .../AudioContentMainTabLiveReplayService.kt | 31 ++---------- .../GetContentMainTabLiveReplayResponse.kt | 1 - .../sodalive/rank/RankingRepository.kt | 48 ------------------- .../vividnext/sodalive/rank/RankingService.kt | 8 ---- 10 files changed, 13 insertions(+), 157 deletions(-) delete mode 100644 src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/GetPopularContentByCreatorResponse.kt diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/GetPopularContentByCreatorResponse.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/GetPopularContentByCreatorResponse.kt deleted file mode 100644 index 6f8cdc8..0000000 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/GetPopularContentByCreatorResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package kr.co.vividnext.sodalive.content.main.tab - -import kr.co.vividnext.sodalive.content.main.GetAudioContentRankingItem - -data class GetPopularContentByCreatorResponse( - val salesRankContentList: List, - val salesCountRankContentList: List -) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/AudioContentMainTabAsmrService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/AudioContentMainTabAsmrService.kt index bbb3a6e..70eb0b0 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/AudioContentMainTabAsmrService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/AudioContentMainTabAsmrService.kt @@ -2,11 +2,11 @@ package kr.co.vividnext.sodalive.content.main.tab.asmr import kr.co.vividnext.sodalive.content.AudioContentRepository import kr.co.vividnext.sodalive.content.ContentType +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.AudioContentMainTabRepository import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse -import kr.co.vividnext.sodalive.content.main.tab.GetPopularContentByCreatorResponse import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member import kr.co.vividnext.sodalive.rank.RankingService @@ -68,16 +68,6 @@ class AudioContentMainTabAsmrService( minCount = 4 ) - val salesRankContentList = if (creatorList.isNotEmpty()) { - rankingService.fetchCreatorContentBySalesTop2( - creatorId = creatorList[0].creatorId, - isAdult = isAdult, - theme = theme - ) - } else { - emptyList() - } - val salesCountRankContentList = if (creatorList.isNotEmpty()) { rankingService.fetchCreatorContentBySalesCountTop4( creatorId = creatorList[0].creatorId, @@ -107,30 +97,17 @@ class AudioContentMainTabAsmrService( newAsmrContentList = newAsmrContentList, rankAsmrContentList = rankAsmrContentList, creatorList = creatorList, - salesRankContentList = salesRankContentList, salesCountRankContentList = salesCountRankContentList, eventBannerList = eventBannerList, curationList = curationList ) } - fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): GetPopularContentByCreatorResponse { - val theme = "ASMR" - val salesRankContentList = rankingService.fetchCreatorContentBySalesTop2( + fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): List { + return rankingService.fetchCreatorContentBySalesCountTop4( creatorId = creatorId, isAdult = isAdult, - theme = theme - ) - - val salesCountRankContentList = rankingService.fetchCreatorContentBySalesCountTop4( - creatorId = creatorId, - isAdult = isAdult, - theme = theme - ) - - return GetPopularContentByCreatorResponse( - salesRankContentList = salesRankContentList, - salesCountRankContentList = salesCountRankContentList + theme = "ASMR" ) } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/GetContentMainTabAsmrResponse.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/GetContentMainTabAsmrResponse.kt index 9162e40..5e324f5 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/GetContentMainTabAsmrResponse.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/asmr/GetContentMainTabAsmrResponse.kt @@ -13,7 +13,6 @@ data class GetContentMainTabAsmrResponse( val newAsmrContentList: List, val rankAsmrContentList: List, val creatorList: List, - val salesRankContentList: List, val salesCountRankContentList: List, val eventBannerList: GetEventResponse, val curationList: List 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 c800664..22d67c7 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,7 +5,6 @@ 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.tab.GetPopularContentByCreatorResponse import kr.co.vividnext.sodalive.content.theme.AudioContentThemeQueryRepository import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member @@ -75,15 +74,6 @@ class AudioContentMainTabContentService( endDate = dailyRankingEndDate ) - val salesRankContentList = if (contentRankCreatorList.isNotEmpty()) { - rankingService.fetchCreatorContentBySalesTop2( - creatorId = contentRankCreatorList[0].creatorId, - isAdult = member.auth != null - ) - } else { - emptyList() - } - val salesCountRankContentList = if (contentRankCreatorList.isNotEmpty()) { rankingService.fetchCreatorContentBySalesCountTop4( creatorId = contentRankCreatorList[0].creatorId, @@ -100,7 +90,6 @@ class AudioContentMainTabContentService( rankSortTypeList = listOf("매출", "댓글", "좋아요"), rankContentList = rankContentList, contentRankCreatorList = contentRankCreatorList, - salesRankContentList = salesRankContentList, salesCountRankContentList = salesCountRankContentList, eventBannerList = eventBannerList ) @@ -144,20 +133,10 @@ class AudioContentMainTabContentService( ) } - fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): GetPopularContentByCreatorResponse { - val salesRankContentList = rankingService.fetchCreatorContentBySalesTop2( + fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): List { + return rankingService.fetchCreatorContentBySalesCountTop4( creatorId = creatorId, isAdult = isAdult ) - - val salesCountRankContentList = rankingService.fetchCreatorContentBySalesCountTop4( - creatorId = creatorId, - isAdult = isAdult - ) - - return GetPopularContentByCreatorResponse( - salesRankContentList = salesRankContentList, - salesCountRankContentList = salesCountRankContentList - ) } } 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 721e960..649363e 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 @@ -14,7 +14,6 @@ data class GetContentMainTabContentResponse( val rankSortTypeList: List, val rankContentList: List, val contentRankCreatorList: List, - val salesRankContentList: List, val salesCountRankContentList: List, val eventBannerList: GetEventResponse ) 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 820b2e5..9eb9f3b 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 @@ -1,7 +1,7 @@ package kr.co.vividnext.sodalive.content.main.tab.home +import kr.co.vividnext.sodalive.content.main.GetAudioContentRankingItem import kr.co.vividnext.sodalive.content.main.banner.AudioContentBannerService -import kr.co.vividnext.sodalive.content.main.tab.GetPopularContentByCreatorResponse import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member import kr.co.vividnext.sodalive.notice.ServiceNoticeService @@ -105,20 +105,10 @@ class AudioContentMainTabHomeService( ) } - fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): GetPopularContentByCreatorResponse { - val salesRankContentList = rankingService.fetchCreatorContentBySalesTop2( + fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): List { + return rankingService.fetchCreatorContentBySalesCountTop4( creatorId = creatorId, isAdult = isAdult ) - - val salesCountRankContentList = rankingService.fetchCreatorContentBySalesCountTop4( - creatorId = creatorId, - isAdult = isAdult - ) - - return GetPopularContentByCreatorResponse( - salesRankContentList = salesRankContentList, - salesCountRankContentList = salesCountRankContentList - ) } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/AudioContentMainTabLiveReplayService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/AudioContentMainTabLiveReplayService.kt index 80ba8c2..daecdfb 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/AudioContentMainTabLiveReplayService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/AudioContentMainTabLiveReplayService.kt @@ -2,11 +2,11 @@ package kr.co.vividnext.sodalive.content.main.tab.replay import kr.co.vividnext.sodalive.content.AudioContentRepository import kr.co.vividnext.sodalive.content.ContentType +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.AudioContentMainTabRepository import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse -import kr.co.vividnext.sodalive.content.main.tab.GetPopularContentByCreatorResponse import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member import kr.co.vividnext.sodalive.rank.RankingService @@ -68,16 +68,6 @@ class AudioContentMainTabLiveReplayService( minCount = 4 ) - val salesRankContentList = if (creatorList.isNotEmpty()) { - rankingService.fetchCreatorContentBySalesTop2( - creatorId = creatorList[0].creatorId, - isAdult = isAdult, - theme = theme - ) - } else { - emptyList() - } - val salesCountRankContentList = if (creatorList.isNotEmpty()) { rankingService.fetchCreatorContentBySalesCountTop4( creatorId = creatorList[0].creatorId, @@ -107,30 +97,17 @@ class AudioContentMainTabLiveReplayService( newLiveReplayContentList = newLiveReplayContentList, rankLiveReplayContentList = rankLiveReplayContentList, creatorList = creatorList, - salesRankContentList = salesRankContentList, salesCountRankContentList = salesCountRankContentList, eventBannerList = eventBannerList, curationList = curationList ) } - fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): GetPopularContentByCreatorResponse { - val theme = "다시듣기" - val salesRankContentList = rankingService.fetchCreatorContentBySalesTop2( + fun getPopularContentByCreator(creatorId: Long, isAdult: Boolean): List { + return rankingService.fetchCreatorContentBySalesCountTop4( creatorId = creatorId, isAdult = isAdult, - theme = theme - ) - - val salesCountRankContentList = rankingService.fetchCreatorContentBySalesCountTop4( - creatorId = creatorId, - isAdult = isAdult, - theme = theme - ) - - return GetPopularContentByCreatorResponse( - salesRankContentList = salesRankContentList, - salesCountRankContentList = salesCountRankContentList + theme = "다시듣기" ) } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/GetContentMainTabLiveReplayResponse.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/GetContentMainTabLiveReplayResponse.kt index 05860b2..6991faf 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/GetContentMainTabLiveReplayResponse.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/replay/GetContentMainTabLiveReplayResponse.kt @@ -13,7 +13,6 @@ data class GetContentMainTabLiveReplayResponse( val newLiveReplayContentList: List, val rankLiveReplayContentList: List, val creatorList: List, - val salesRankContentList: List, val salesCountRankContentList: List, val eventBannerList: GetEventResponse, val curationList: List 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 a7a4d44..9c3714d 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingRepository.kt @@ -381,54 +381,6 @@ class RankingRepository( .fetch() } - fun fetchCreatorContentBySalesTop2( - creatorId: Long, - isAdult: Boolean, - theme: String - ): List { - var where = member.isActive.isTrue - .and(member.role.eq(MemberRole.CREATOR)) - .and(audioContent.isActive.isTrue) - .and(audioContent.duration.isNotNull) - .and(audioContent.limited.isNull) - .and(audioContentTheme.isActive.isTrue) - .and(order.isActive.isTrue) - .and(member.id.eq(creatorId)) - - if (!isAdult) { - where = where.and(series.isAdult.isFalse) - } - - if (theme.isNotBlank()) { - where = where.and(audioContentTheme.theme.eq(theme)) - } - - return queryFactory - .select( - QGetAudioContentRankingItem( - audioContent.id, - audioContent.title, - audioContent.coverImage.prepend("/").prepend(imageHost), - audioContentTheme.theme, - audioContent.price, - audioContent.duration, - member.id, - member.nickname, - member.profileImage.prepend("/").prepend(imageHost) - ) - ) - .from(order) - .innerJoin(order.audioContent, audioContent) - .innerJoin(audioContent.theme, audioContentTheme) - .innerJoin(audioContent.member, member) - .where(where) - .groupBy(audioContent.id) - .orderBy(order.can.sum().desc()) - .offset(0) - .limit(2) - .fetch() - } - fun fetchCreatorContentBySalesCountTop4( creatorId: Long, isAdult: Boolean, 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 2c98024..f7e907c 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/rank/RankingService.kt @@ -189,14 +189,6 @@ class RankingService( return repository.fetchCreatorBySellContentCountRankTop20(memberId, startDate, endDate) } - fun fetchCreatorContentBySalesTop2( - creatorId: Long, - isAdult: Boolean, - theme: String = "" - ): List { - return repository.fetchCreatorContentBySalesTop2(creatorId, isAdult, theme) - } - fun fetchCreatorContentBySalesCountTop4( creatorId: Long, isAdult: Boolean,