From 1ba63e2cab22aecc98bcf9bd5ed70e1af2dc6ed4 Mon Sep 17 00:00:00 2001 From: Klaus Date: Fri, 18 Jul 2025 17:13:37 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=B5=9C=EA=B7=BC=20=EC=A2=85=EB=A3=8C?= =?UTF-8?q?=ED=95=9C=20=EB=9D=BC=EC=9D=B4=EB=B8=8C=20API=20=EC=98=A4?= =?UTF-8?q?=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/live/room/LiveRoomRepository.kt | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/live/room/LiveRoomRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/live/room/LiveRoomRepository.kt index d2e20f4..5bb40f2 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/live/room/LiveRoomRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/live/room/LiveRoomRepository.kt @@ -4,6 +4,7 @@ import com.querydsl.core.types.Projections import com.querydsl.core.types.dsl.CaseBuilder import com.querydsl.core.types.dsl.Expressions import com.querydsl.core.types.dsl.NumberExpression +import com.querydsl.jpa.JPAExpressions import com.querydsl.jpa.impl.JPAQueryFactory import kr.co.vividnext.sodalive.can.use.CanUsage import kr.co.vividnext.sodalive.can.use.QUseCan.useCan @@ -383,6 +384,9 @@ class LiveRoomQueryRepositoryImpl( } override fun getLatestFinishedLive(offset: Long): List { + val liveRoom = liveRoom + val subLiveRoom = QLiveRoom.liveRoom + return queryFactory .select( QGetLatestFinishedLiveQueryResponse( @@ -396,7 +400,13 @@ class LiveRoomQueryRepositoryImpl( .from(liveRoom) .innerJoin(liveRoom.member, member) .where( - liveRoom.isActive.isFalse + liveRoom.updatedAt + .eq( + JPAExpressions.select(subLiveRoom.updatedAt.max()) + .from(subLiveRoom) + .where(subLiveRoom.member.eq(liveRoom.member)) + ) + .and(liveRoom.isActive.isFalse) .and(liveRoom.channelName.isNotNull) ) .groupBy(member.id)