From cec4cd0d2852ebd9d70d81ce2862e5be24e89126 Mon Sep 17 00:00:00 2001 From: Klaus Date: Sat, 27 Jan 2024 02:43:41 +0900 Subject: [PATCH] =?UTF-8?q?=EC=BD=98=ED=85=90=EC=B8=A0=20=EA=B3=A0?= =?UTF-8?q?=EC=A0=95=20-=20=EA=B3=A0=EC=A0=95=20=EC=BD=98=ED=85=90?= =?UTF-8?q?=EC=B8=A0=20=EA=B0=9C=EC=88=98=20=ED=91=9C=EC=8B=9C=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/content/AudioContentService.kt | 2 +- .../sodalive/content/pin/PinContentRepository.kt | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) 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 aff1863..7ca0de6 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/AudioContentService.kt @@ -566,7 +566,7 @@ class AudioContentService( false } - val pinContentListCount = pinContentRepository.getPinContentList(memberId = member.id!!).size + val pinContentListCount = pinContentRepository.getPinContentList(memberId = member.id!!, active = true).size val isAvailablePin = if (member.id!! == audioContent.member!!.id!!) { pinContentListCount < 3 } else { diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/content/pin/PinContentRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/content/pin/PinContentRepository.kt index 9b089e2..836628f 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/content/pin/PinContentRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/content/pin/PinContentRepository.kt @@ -7,16 +7,22 @@ import org.springframework.data.jpa.repository.JpaRepository interface PinContentRepository : JpaRepository, PinContentQueryRepository interface PinContentQueryRepository { - fun getPinContentList(memberId: Long): List + fun getPinContentList(memberId: Long, active: Boolean? = null): List fun findByContentIdAndMemberId(contentId: Long, memberId: Long, active: Boolean? = null): PinContent? } class PinContentQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : PinContentQueryRepository { - override fun getPinContentList(memberId: Long): List { + override fun getPinContentList(memberId: Long, active: Boolean?): List { + var where = pinContent.member.id.eq(memberId) + + if (active != null) { + where = where.and(pinContent.isActive.eq(active)) + } + return queryFactory .selectFrom(pinContent) - .where(pinContent.member.id.eq(memberId)) + .where(where) .orderBy(pinContent.updatedAt.asc()) .fetch() }