From 0fdfc486808ccb8172ceba8a4e5a0dd1e1b8489a Mon Sep 17 00:00:00 2001 From: Klaus Date: Mon, 1 Jun 2026 21:34:48 +0900 Subject: [PATCH] =?UTF-8?q?feat(home):=20AI=20=EC=BA=90=EB=A6=AD=ED=84=B0?= =?UTF-8?q?=20=ED=94=84=EB=A1=9C=ED=95=84=20=EC=9D=B4=EB=AF=B8=EC=A7=80?= =?UTF-8?q?=EB=A5=BC=20=EC=9D=91=EB=8B=B5=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v2/api/home/application/HomeRecommendationFacade.kt | 1 + .../v2/api/home/dto/HomeRecommendationResponse.kt | 1 + .../DefaultHomeRecommendationQueryRepository.kt | 9 ++++++++- .../v2/recommend/port/out/HomeRecommendationQueryPort.kt | 1 + 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/application/HomeRecommendationFacade.kt b/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/application/HomeRecommendationFacade.kt index 27997960..dbb8db98 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/application/HomeRecommendationFacade.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/application/HomeRecommendationFacade.kt @@ -278,6 +278,7 @@ class HomeRecommendationFacade( characterId = characterId, name = name, description = description, + profileImage = imageUrl(cloudFrontHost, profileImage), totalChatCount = totalChatCount, originalWorkTitle = originalWorkTitle ) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/dto/HomeRecommendationResponse.kt b/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/dto/HomeRecommendationResponse.kt index c55fa169..0ff4c8d4 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/dto/HomeRecommendationResponse.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/v2/api/home/dto/HomeRecommendationResponse.kt @@ -74,6 +74,7 @@ data class HomeAiCharacterItem( val characterId: Long, val name: String, val description: String, + val profileImage: String?, val totalChatCount: Long, val originalWorkTitle: String? ) 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 592cb225..0db0d797 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 @@ -711,6 +711,7 @@ class DefaultHomeRecommendationQueryRepository( chatCharacter.id, chatCharacter.name, chatCharacter.description, + chatCharacter.imagePath, chatMessage.id.count(), linkedOriginalWork.title ) @@ -727,7 +728,13 @@ class DefaultHomeRecommendationQueryRepository( chatMessage.isActive.isTrue ) .where(chatCharacter.isActive.isTrue, chatCharacter.id.`in`(characterIds)) - .groupBy(chatCharacter.id, chatCharacter.name, chatCharacter.description, linkedOriginalWork.title) + .groupBy( + chatCharacter.id, + chatCharacter.name, + chatCharacter.description, + chatCharacter.imagePath, + linkedOriginalWork.title + ) .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 1875d975..165c36a7 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 @@ -135,6 +135,7 @@ data class HomeAiCharacterRecommendationRecord( val characterId: Long, val name: String, val description: String, + val profileImage: String?, val totalChatCount: Long, val originalWorkTitle: String? )