Skip to content

Commit

Permalink
feat: 선택 가능한 어조를 조회한다 (#14)
Browse files Browse the repository at this point in the history
* feat: 선택 가능한 어조를 조회한다

* refactor: Enum 요소를 가져오는 방법을 수정한다
  • Loading branch information
inpink committed Jan 30, 2025
1 parent 2a8bfb6 commit 366958d
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 2 deletions.
15 changes: 13 additions & 2 deletions src/main/kotlin/me/misik/api/api/ReviewController.kt
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
package me.misik.api.api

import me.misik.api.domain.request.CreateReviewRequest
import me.misik.api.api.request.CreateReviewRequest
import me.misik.api.api.response.ReviewStyleResponse
import me.misik.api.api.response.ReviewStylesResponse
import me.misik.api.app.CreateReviewFacade
import me.misik.api.app.ReCreateReviewFacade
import me.misik.api.domain.ReviewStyle
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.PathVariable
import org.springframework.web.bind.annotation.PostMapping
import org.springframework.web.bind.annotation.RequestBody
Expand All @@ -12,7 +16,7 @@ import org.springframework.web.bind.annotation.RestController
@RestController
class ReviewController(
private val createReviewFacade: CreateReviewFacade,
private val reCreateReviewFacade: ReCreateReviewFacade,
private val reCreateReviewFacade: ReCreateReviewFacade
) {

@PostMapping("reviews")
Expand All @@ -26,4 +30,11 @@ class ReviewController(
@RequestHeader("device-id") deviceId: String,
@PathVariable("id") id: Long,
) = reCreateReviewFacade.reCreateReviewInBackground(deviceId, id)

@GetMapping("reviews/styles")
fun getReviewStyles() : ReviewStylesResponse {
val reviewStyles = ReviewStyle.entries.toList()

return ReviewStylesResponse.from(reviewStyles)
}
}
17 changes: 17 additions & 0 deletions src/main/kotlin/me/misik/api/api/response/ReviewStyleResponse.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package me.misik.api.api.response

import me.misik.api.domain.ReviewStyle

data class ReviewStyleResponse(
val icon: String,
val style: String
) {
companion object {
fun from(reviewStyle: ReviewStyle): ReviewStyleResponse {
return ReviewStyleResponse(
icon = reviewStyle.iconUrl,
style = reviewStyle.name,
)
}
}
}
15 changes: 15 additions & 0 deletions src/main/kotlin/me/misik/api/api/response/ReviewStylesResponse.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package me.misik.api.api.response

import me.misik.api.domain.ReviewStyle

data class ReviewStylesResponse(
val reviewStyles: List<ReviewStyleResponse>
) {
companion object {
fun from(reviewStyles: List<ReviewStyle>) : ReviewStylesResponse {
return ReviewStylesResponse(
reviewStyles.map { ReviewStyleResponse.from(it) }.toList()
)
}
}
}

0 comments on commit 366958d

Please sign in to comment.