From 149a3ad2f1208818ef0121bec2d2263eef62f260 Mon Sep 17 00:00:00 2001 From: Klaus <klaus@vividnext.co.kr> Date: Sun, 15 Oct 2023 03:38:26 +0900 Subject: [PATCH] =?UTF-8?q?=EC=BD=98=ED=85=90=EC=B8=A0=20=EB=9E=AD?= =?UTF-8?q?=ED=82=B9=20=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EC=A0=84=EC=B2=B4?= =?UTF-8?q?=EB=B3=B4=EA=B8=B0=20API=20-=20=ED=8E=98=EC=9D=B4=EC=A7=95=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/content/AudioContentController.kt | 11 +++++++++-- .../sodalive/content/AudioContentRepository.kt | 2 ++ .../vividnext/sodalive/content/AudioContentService.kt | 9 +++++++-- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentController.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentController.kt index c83d903..286f232 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentController.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentController.kt @@ -151,10 +151,17 @@ class AudioContentController(private val service: AudioContentService) { @GetMapping("/ranking") fun getAudioContentRanking( - @AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member? + @AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member?, + pageable: Pageable ) = run { if (member == null) throw SodaException("로그인 정보를 확인해주세요.") - ApiResponse.ok(service.getAudioContentRanking(member = member)) + ApiResponse.ok( + service.getAudioContentRanking( + member = member, + offset = pageable.offset, + limit = pageable.pageSize.toLong() + ) + ) } } 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 5bbb47b..3bf9362 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentRepository.kt @@ -88,6 +88,7 @@ interface AudioContentQueryRepository { isAdult: Boolean, startDate: LocalDateTime, endDate: LocalDateTime, + offset: Long = 0, limit: Long = 12 ): List<GetAudioContentRankingItem> } @@ -442,6 +443,7 @@ class AudioContentQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) isAdult: Boolean, startDate: LocalDateTime, endDate: LocalDateTime, + offset: Long, limit: Long ): List<GetAudioContentRankingItem> { var where = audioContent.isActive.isTrue diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentService.kt index cf05527..40c2adb 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentService.kt @@ -577,7 +577,11 @@ class AudioContentService( } } - fun getAudioContentRanking(member: Member): GetAudioContentRanking { + fun getAudioContentRanking( + member: Member, + offset: Long, + limit: Long + ): GetAudioContentRanking { val currentDateTime = LocalDateTime.now() val startDate = currentDateTime .withHour(15) @@ -597,7 +601,8 @@ class AudioContentService( startDate = startDate, endDate = endDate, isAdult = member.auth != null, - limit = 50 + offset = offset, + limit = limit ) return GetAudioContentRanking(