From 13821a33ea7ed82a5231a455c7658ebdf9c9674d Mon Sep 17 00:00:00 2001 From: Klaus Date: Thu, 17 Sep 2026 20:18:17 +0900 Subject: [PATCH] =?UTF-8?q?refactor(content-main):=20=EC=95=8C=EB=9E=8C?= =?UTF-8?q?=C2=B7ASMR=C2=B7=EC=BD=98=ED=85=90=EC=B8=A0=C2=B7=EB=AC=B4?= =?UTF-8?q?=EB=A3=8C=20=ED=83=AD=20=EC=A0=95=EC=B1=85=20=ED=98=B8=EC=B6=9C?= =?UTF-8?q?=EC=9D=84=20=ED=86=B5=ED=95=A9=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tab/alarm/AudioContentMainTabAlarmService.kt | 9 +++++---- .../main/tab/asmr/AudioContentMainTabAsmrService.kt | 7 ++++--- .../content/AudioContentMainTabContentService.kt | 9 +++++---- .../main/tab/free/AudioContentMainTabFreeService.kt | 13 +++++++------ 4 files changed, 21 insertions(+), 17 deletions(-) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/alarm/AudioContentMainTabAlarmService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/alarm/AudioContentMainTabAlarmService.kt index d9b2fce2..b803e7a3 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/alarm/AudioContentMainTabAlarmService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/alarm/AudioContentMainTabAlarmService.kt @@ -8,7 +8,7 @@ import kr.co.vividnext.sodalive.content.main.curation.AudioContentCurationQueryR import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member -import kr.co.vividnext.sodalive.member.contentpreference.isAdultVisibleByPolicy +import kr.co.vividnext.sodalive.member.contentpreference.MemberContentPreferenceService import kr.co.vividnext.sodalive.rank.RankingService import org.springframework.stereotype.Service import java.time.DayOfWeek @@ -21,14 +21,15 @@ class AudioContentMainTabAlarmService( private val contentRepository: AudioContentRepository, private val rankingService: RankingService, private val eventService: EventService, - private val curationRepository: AudioContentCurationQueryRepository + private val curationRepository: AudioContentCurationQueryRepository, + private val memberContentPreferenceService: MemberContentPreferenceService ) { fun fetchData( isAdultContentVisible: Boolean, contentType: ContentType, member: Member ): GetContentMainTabAlarmResponse { - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val memberId = member.id!! val contentBannerList = bannerService.getBannerList( @@ -106,7 +107,7 @@ class AudioContentMainTabAlarmService( } val memberId = member.id!! - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val totalCount = contentRepository.totalAlarmCountByTheme( memberId = memberId, 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 dd136862..14fd3530 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 @@ -9,7 +9,7 @@ import kr.co.vividnext.sodalive.content.main.tab.AudioContentMainTabRepository import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse import kr.co.vividnext.sodalive.event.EventService import kr.co.vividnext.sodalive.member.Member -import kr.co.vividnext.sodalive.member.contentpreference.isAdultVisibleByPolicy +import kr.co.vividnext.sodalive.member.contentpreference.MemberContentPreferenceService import kr.co.vividnext.sodalive.rank.RankingService import org.springframework.stereotype.Service @@ -20,14 +20,15 @@ class AudioContentMainTabAsmrService( private val contentRepository: AudioContentRepository, private val rankingService: RankingService, private val eventService: EventService, - private val curationRepository: AudioContentCurationQueryRepository + private val curationRepository: AudioContentCurationQueryRepository, + private val memberContentPreferenceService: MemberContentPreferenceService ) { fun fetchData( isAdultContentVisible: Boolean, contentType: ContentType, member: Member ): GetContentMainTabAsmrResponse { - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val memberId = member.id!! val theme = "ASMR" val tabId = 5L 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 a019fcbe..8b0e8273 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 @@ -10,7 +10,7 @@ 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 -import kr.co.vividnext.sodalive.member.contentpreference.isAdultVisibleByPolicy +import kr.co.vividnext.sodalive.member.contentpreference.MemberContentPreferenceService import kr.co.vividnext.sodalive.rank.RankingService import org.springframework.stereotype.Service import java.time.LocalDateTime @@ -23,7 +23,8 @@ class AudioContentMainTabContentService( private val rankingService: RankingService, private val eventService: EventService, private val tagCurationService: ContentMainTabTagCurationService, - private val curationRepository: AudioContentCurationQueryRepository + private val curationRepository: AudioContentCurationQueryRepository, + private val memberContentPreferenceService: MemberContentPreferenceService ) { fun fetchData( isAdultContentVisible: Boolean, @@ -31,7 +32,7 @@ class AudioContentMainTabContentService( member: Member ): GetContentMainTabContentResponse { val memberId = member.id!! - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val tabId = 3L // 단편 배너 @@ -191,7 +192,7 @@ class AudioContentMainTabContentService( contentType: ContentType, member: Member ): List { - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val themeList = if (theme.isBlank()) { audioContentThemeRepository.getActiveThemeOfContent(isAdult = isAdult, contentType = contentType) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/free/AudioContentMainTabFreeService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/free/AudioContentMainTabFreeService.kt index ede888ed..2e77d46e 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/free/AudioContentMainTabFreeService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/main/tab/free/AudioContentMainTabFreeService.kt @@ -11,7 +11,7 @@ import kr.co.vividnext.sodalive.content.main.tab.GetContentCurationResponse import kr.co.vividnext.sodalive.content.main.tab.RecommendSeriesRepository import kr.co.vividnext.sodalive.content.theme.AudioContentThemeQueryRepository import kr.co.vividnext.sodalive.member.Member -import kr.co.vividnext.sodalive.member.contentpreference.isAdultVisibleByPolicy +import kr.co.vividnext.sodalive.member.contentpreference.MemberContentPreferenceService import kr.co.vividnext.sodalive.rank.RankingService import org.springframework.stereotype.Service @@ -24,14 +24,15 @@ class AudioContentMainTabFreeService( private val contentRepository: AudioContentRepository, private val rankingService: RankingService, private val audioContentRepository: AudioContentRepository, - private val audioContentThemeRepository: AudioContentThemeQueryRepository + private val audioContentThemeRepository: AudioContentThemeQueryRepository, + private val memberContentPreferenceService: MemberContentPreferenceService ) { fun fetchData( isAdultContentVisible: Boolean, contentType: ContentType, member: Member ): GetContentMainTabFreeResponse { - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val memberId = member.id!! val tabId = 7L @@ -135,7 +136,7 @@ class AudioContentMainTabFreeService( offset: Long, limit: Long ): List { - val isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible) + val isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible) val memberId = member.id!! val introduceCreatorCuration = curationRepository.findByContentMainTabIdAndTitle( @@ -172,7 +173,7 @@ class AudioContentMainTabFreeService( listOf(theme) } else { audioContentThemeRepository.getActiveThemeOfContent( - isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible), + isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible), isFree = true, contentType = contentType ).filter { @@ -186,7 +187,7 @@ class AudioContentMainTabFreeService( it != "자기소개" } }, - isAdult = isAdultVisibleByPolicy(member, isAdultContentVisible), + isAdult = memberContentPreferenceService.isAdultVisibleForQuery(member, isAdultContentVisible), contentType = contentType, offset = offset, limit = limit,