Skip to content

Commit a940925

Browse files
authored
feat(be): dto 들을 캡슐화 시킴 (#55)
1 parent 9a8dad3 commit a940925

File tree

5 files changed

+50
-6
lines changed

5 files changed

+50
-6
lines changed

src/main/kotlin/com/back/koreaTravelGuide/domain/ai/aiChat/controller/AiChatController.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class AiChatController(
3030
): ResponseEntity<ApiResponse<List<SessionsResponse>>> {
3131
val sessions =
3232
aiChatService.getSessions(userId).map {
33-
SessionsResponse(it.id!!, it.sessionTitle)
33+
SessionsResponse.from(it)
3434
}
3535
return ResponseEntity.ok(ApiResponse("채팅방 목록을 성공적으로 조회했습니다.", sessions))
3636
}
@@ -40,7 +40,7 @@ class AiChatController(
4040
@RequestParam userId: Long,
4141
): ResponseEntity<ApiResponse<SessionsResponse>> {
4242
val session = aiChatService.createSession(userId)
43-
val response = SessionsResponse(session.id!!, session.sessionTitle)
43+
val response = SessionsResponse.from(session)
4444
return ResponseEntity.ok(ApiResponse("채팅방이 성공적으로 생성되었습니다.", response))
4545
}
4646

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,20 @@
11
package com.back.koreaTravelGuide.domain.ai.aiChat.dto
22

3+
import com.back.koreaTravelGuide.domain.ai.aiChat.entity.AiChatMessage
4+
35
data class AiChatResponse(
46
val userMessage: String,
57
val aiMessage: String,
6-
)
8+
) {
9+
companion object {
10+
fun from(
11+
userMessage: AiChatMessage,
12+
aiMessage: AiChatMessage,
13+
): AiChatResponse {
14+
return AiChatResponse(
15+
userMessage.content,
16+
aiMessage.content,
17+
)
18+
}
19+
}
20+
}
Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,18 @@
11
package com.back.koreaTravelGuide.domain.ai.aiChat.dto
22

3+
import com.back.koreaTravelGuide.domain.ai.aiChat.entity.AiChatMessage
34
import com.back.koreaTravelGuide.domain.ai.aiChat.entity.SenderType
45

56
data class SessionMessagesResponse(
67
val content: String,
78
val senderType: SenderType,
8-
)
9+
) {
10+
companion object {
11+
fun from(sessionMessage: AiChatMessage): SessionMessagesResponse {
12+
return SessionMessagesResponse(
13+
sessionMessage.content,
14+
sessionMessage.senderType,
15+
)
16+
}
17+
}
18+
}
Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
package com.back.koreaTravelGuide.domain.ai.aiChat.dto
22

3+
import com.back.koreaTravelGuide.domain.ai.aiChat.entity.AiChatSession
4+
35
data class SessionsResponse(
46
val sessionId: Long,
57
val sessionTitle: String,
6-
)
8+
) {
9+
companion object {
10+
fun from(sessionResponse: AiChatSession) =
11+
SessionsResponse(
12+
sessionResponse.id!!,
13+
sessionResponse.sessionTitle,
14+
)
15+
}
16+
}
Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
package com.back.koreaTravelGuide.domain.ai.aiChat.dto
22

3+
import com.back.koreaTravelGuide.domain.ai.aiChat.entity.AiChatSession
4+
35
data class UpdateSessionTitleResponse(
46
val newTitle: String,
5-
)
7+
) {
8+
companion object {
9+
fun from(session: AiChatSession): UpdateSessionTitleResponse {
10+
return UpdateSessionTitleResponse(
11+
newTitle = session.sessionTitle,
12+
)
13+
}
14+
}
15+
}

0 commit comments

Comments
 (0)