From 6d399c48abd57e557f4f16a88b6fa569bc5ab3c2 Mon Sep 17 00:00:00 2001 From: Klaus Date: Mon, 1 Jun 2026 23:11:31 +0900 Subject: [PATCH] =?UTF-8?q?feat(recommend):=20=EC=9D=B8=EA=B8=B0=20?= =?UTF-8?q?=EC=BB=A4=EB=AE=A4=EB=8B=88=ED=8B=B0=20=EA=B2=8C=EC=8B=9C?= =?UTF-8?q?=EA=B8=80=20=EA=B0=80=EA=B2=A9=EC=9D=84=20=EC=A1=B0=ED=9A=8C?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../persistence/DefaultHomeRecommendationQueryRepository.kt | 2 ++ .../v2/recommend/port/out/HomeRecommendationQueryPort.kt | 1 + .../DefaultHomeRecommendationQueryRepositoryTest.kt | 2 ++ .../application/HomeRecommendationQueryServiceTest.kt | 4 ++++ 4 files changed, 9 insertions(+) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepository.kt index 65941901..87aefc9b 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepository.kt @@ -778,6 +778,7 @@ class DefaultHomeRecommendationQueryRepository( creatorCommunity.imagePath, creatorCommunity.audioPath, creatorCommunity.content, + creatorCommunity.price, creatorCommunity.createdAt, creatorCommunityLike.id.countDistinct(), creatorCommunityComment.id.countDistinct(), @@ -810,6 +811,7 @@ class DefaultHomeRecommendationQueryRepository( creatorCommunity.imagePath, creatorCommunity.audioPath, creatorCommunity.content, + creatorCommunity.price, creatorCommunity.createdAt ) .fetch() diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/port/out/HomeRecommendationQueryPort.kt b/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/port/out/HomeRecommendationQueryPort.kt index 47f1687c..191d1f58 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/port/out/HomeRecommendationQueryPort.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/v2/recommend/port/out/HomeRecommendationQueryPort.kt @@ -154,6 +154,7 @@ data class HomePopularCommunityRecommendationRecord( val imagePath: String?, val audioPath: String?, val content: String, + val price: Int, val createdAt: LocalDateTime, val likeCount: Long, val commentCount: Long, diff --git a/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepositoryTest.kt b/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepositoryTest.kt index c6ffda85..a061ff10 100644 --- a/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepositoryTest.kt +++ b/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/adapter/out/persistence/DefaultHomeRecommendationQueryRepositoryTest.kt @@ -1268,6 +1268,8 @@ class DefaultHomeRecommendationQueryRepositoryTest @Autowired constructor( assertEquals("content", detailById[eligible.id]!!.content) assertEquals("community/detail-image.png", detailById[eligible.id]!!.imagePath) assertEquals("community/detail-audio.mp3", detailById[eligible.id]!!.audioPath) + assertEquals(0, detailById[eligible.id]!!.price) + assertEquals(10, detailById[paid.id]!!.price) assertEquals(LocalDateTime.of(2026, 5, 29, 1, 0), detailById[eligible.id]!!.createdAt) assertEquals(2L, detailById[eligible.id]!!.likeCount) assertEquals(1L, detailById[eligible.id]!!.commentCount) diff --git a/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/application/HomeRecommendationQueryServiceTest.kt b/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/application/HomeRecommendationQueryServiceTest.kt index 12b2958f..ec449f62 100644 --- a/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/application/HomeRecommendationQueryServiceTest.kt +++ b/src/test/kotlin/kr/co/vividnext/sodalive/v2/recommend/application/HomeRecommendationQueryServiceTest.kt @@ -230,6 +230,7 @@ class HomeRecommendationQueryServiceTest { imagePath = "community-1.png", audioPath = "community-1.mp3", content = "content-1", + price = 10, createdAt = LocalDateTime.of(2026, 5, 29, 1, 0), likeCount = 3L, commentCount = 2L, @@ -243,6 +244,7 @@ class HomeRecommendationQueryServiceTest { imagePath = null, audioPath = null, content = "content-2", + price = 0, createdAt = LocalDateTime.of(2026, 5, 29, 2, 0), likeCount = 1L, commentCount = 1L, @@ -256,6 +258,7 @@ class HomeRecommendationQueryServiceTest { imagePath = null, audioPath = null, content = "content-3", + price = 0, createdAt = LocalDateTime.of(2026, 5, 29, 3, 0), likeCount = 0L, commentCount = 0L, @@ -296,6 +299,7 @@ class HomeRecommendationQueryServiceTest { imagePath = null, audioPath = null, content = "content-$communityId", + price = 0, createdAt = LocalDateTime.of(2026, 5, 29, 1, 0).plusMinutes(communityId), likeCount = 0L, commentCount = 0L,