diff --git a/src/main/java/roomescape/auth/web/AuthDTO.kt b/src/main/java/roomescape/auth/web/AuthDTO.kt index 15a87d24..0fe3c31c 100644 --- a/src/main/java/roomescape/auth/web/AuthDTO.kt +++ b/src/main/java/roomescape/auth/web/AuthDTO.kt @@ -4,21 +4,18 @@ import io.swagger.v3.oas.annotations.media.Schema import jakarta.validation.constraints.Email import jakarta.validation.constraints.NotBlank -@JvmRecord data class TokenResponse( val accessToken: String ) @Schema(name = "로그인 체크 응답", description = "로그인 상태 체크 응답시 사용됩니다.") -@JvmRecord data class LoginCheckResponse( @field:Schema(description = "로그인된 회원의 이름") val name: String ) @Schema(name = "로그인 요청", description = "로그인 요청 시 사용됩니다.") -@JvmRecord data class LoginRequest( @Email(message = "이메일 형식이 일치하지 않습니다. 예시: abc123@gmail.com") @field:Schema(description = "필수 값이며, 이메일 형식으로 입력해야 합니다.", example = "abc123@gmail.com") diff --git a/src/main/java/roomescape/payment/infrastructure/client/TossPaymentErrorResponse.kt b/src/main/java/roomescape/payment/infrastructure/client/TossPaymentErrorResponse.kt index aebddc49..2f9f9801 100644 --- a/src/main/java/roomescape/payment/infrastructure/client/TossPaymentErrorResponse.kt +++ b/src/main/java/roomescape/payment/infrastructure/client/TossPaymentErrorResponse.kt @@ -1,6 +1,5 @@ package roomescape.payment.infrastructure.client -@JvmRecord data class TossPaymentErrorResponse( val code: String, val message: String diff --git a/src/main/java/roomescape/payment/web/PaymentDTO.kt b/src/main/java/roomescape/payment/web/PaymentDTO.kt index b346c20c..e60f9d93 100644 --- a/src/main/java/roomescape/payment/web/PaymentDTO.kt +++ b/src/main/java/roomescape/payment/web/PaymentDTO.kt @@ -9,44 +9,38 @@ import roomescape.reservation.web.toResponse import java.time.OffsetDateTime class PaymentApprove { - @JvmRecord data class Request( - @JvmField val paymentKey: String, - @JvmField val orderId: String, - @JvmField val amount: Long, - @JvmField val paymentType: String + val paymentKey: String, + val orderId: String, + val amount: Long, + val paymentType: String ) - @JvmRecord @JsonIgnoreProperties(ignoreUnknown = true) data class Response( - @JvmField val paymentKey: String, - @JvmField val orderId: String, - @JvmField val approvedAt: OffsetDateTime, - @JvmField val totalAmount: Long + val paymentKey: String, + val orderId: String, + val approvedAt: OffsetDateTime, + val totalAmount: Long ) } class PaymentCancel { - @JvmRecord data class Request( - @JvmField val paymentKey: String, - @JvmField val amount: Long, - @JvmField val cancelReason: String + val paymentKey: String, + val amount: Long, + val cancelReason: String ) - @JvmRecord @JsonDeserialize(using = PaymentCancelResponseDeserializer::class) data class Response( - @JvmField val cancelStatus: String, - @JvmField val cancelReason: String, - @JvmField val cancelAmount: Long, - @JvmField val canceledAt: OffsetDateTime + val cancelStatus: String, + val cancelReason: String, + val cancelAmount: Long, + val canceledAt: OffsetDateTime ) } - -@JvmRecord data class ReservationPaymentResponse( val id: Long, val orderId: String, diff --git a/src/main/java/roomescape/reservation/web/ReservationRequest.kt b/src/main/java/roomescape/reservation/web/ReservationRequest.kt index fa081bc9..9f2a3181 100644 --- a/src/main/java/roomescape/reservation/web/ReservationRequest.kt +++ b/src/main/java/roomescape/reservation/web/ReservationRequest.kt @@ -6,30 +6,26 @@ import roomescape.payment.web.PaymentApprove import java.time.LocalDate @Schema(name = "관리자 예약 저장 요청", description = "관리자의 예약 저장 요청시 사용됩니다.") -@JvmRecord data class AdminReservationRequest( - @JvmField @field:Schema(description = "예약 날짜. 지난 날짜는 지정할 수 없으며, yyyy-MM-dd 형식으로 입력해야 합니다.", type = "string", example = "2022-12-31") + @field:Schema(description = "예약 날짜. 지난 날짜는 지정할 수 없으며, yyyy-MM-dd 형식으로 입력해야 합니다.", type = "string", example = "2022-12-31") val date: LocalDate, - @JvmField @field:Schema(description = "예약 시간 ID.", example = "1") + @field:Schema(description = "예약 시간 ID.", example = "1") val timeId: Long, - @JvmField @field:Schema(description = "테마 ID", example = "1") + @field:Schema(description = "테마 ID", example = "1") val themeId: Long, - @JvmField @field:Schema(description = "회원 ID", example = "1") + @field:Schema(description = "회원 ID", example = "1") val memberId: Long ) @Schema(name = "회원의 예약 저장 요청", description = "회원의 예약 요청시 사용됩니다.") -@JvmRecord data class ReservationRequest( - @JvmField @field:Schema(description = "예약 날짜. 지난 날짜는 지정할 수 없으며, yyyy-MM-dd 형식으로 입력해야 합니다.", type = "string", example = "2022-12-31") val date: LocalDate, - @JvmField @field:Schema(description = "예약 시간 ID.", example = "1") val timeId: Long, - @JvmField @field:Schema(description = "테마 ID", example = "1") + @field:Schema(description = "테마 ID", example = "1") val themeId: Long, @field:Schema(description = "결제 위젯을 통해 받은 결제 키") @@ -50,17 +46,16 @@ data class ReservationRequest( } @Schema(name = "예약 대기 저장 요청", description = "회원의 예약 대기 요청시 사용됩니다.") -@JvmRecord data class WaitingRequest( - @JvmField + @field:Schema(description = "예약 날짜. 지난 날짜는 지정할 수 없으며, yyyy-MM-dd 형식으로 입력해야 합니다.", type = "string", example = "2022-12-31") val date: LocalDate, - @JvmField + @field:Schema(description = "예약 시간 ID", example = "1") val timeId: Long, - @JvmField + @field:Schema(description = "테마 ID", example = "1") val themeId: Long ) diff --git a/src/main/java/roomescape/reservation/web/ReservationResponse.kt b/src/main/java/roomescape/reservation/web/ReservationResponse.kt index 3776d150..6988a387 100644 --- a/src/main/java/roomescape/reservation/web/ReservationResponse.kt +++ b/src/main/java/roomescape/reservation/web/ReservationResponse.kt @@ -12,7 +12,6 @@ import java.time.LocalDate import java.time.LocalTime @Schema(name = "회원의 예약 및 대기 응답", description = "회원의 예약 및 대기 정보 응답시 사용됩니다.") -@JvmRecord data class MyReservationResponse( @field:Schema(description = "예약 번호. 예약을 식별할 때 사용합니다.") val id: Long, @@ -40,16 +39,14 @@ data class MyReservationResponse( ) @Schema(name = "회원의 예약 및 대기 목록 조회 응답", description = "회원의 예약 및 대기 목록 조회 응답시 사용됩니다.") -@JvmRecord data class MyReservationsResponse( @field:Schema(description = "현재 로그인한 회원의 예약 및 대기 목록") val reservations: List ) @Schema(name = "예약 정보", description = "예약 저장 및 조회 응답에 사용됩니다.") -@JvmRecord data class ReservationResponse( - @JvmField + @field:Schema(description = "예약 번호. 예약을 식별할 때 사용합니다.") val id: Long, @@ -96,7 +93,6 @@ fun ReservationEntity.toResponse(): ReservationResponse = ReservationResponse( ) @Schema(name = "예약 목록 조회 응답", description = "모든 예약 정보 조회 응답시 사용됩니다.") -@JvmRecord data class ReservationsResponse( @field:Schema(description = "모든 예약 및 대기 목록") val reservations: List diff --git a/src/main/java/roomescape/reservation/web/ReservationTimeDTO.kt b/src/main/java/roomescape/reservation/web/ReservationTimeDTO.kt index e0b06678..c0a5a23e 100644 --- a/src/main/java/roomescape/reservation/web/ReservationTimeDTO.kt +++ b/src/main/java/roomescape/reservation/web/ReservationTimeDTO.kt @@ -5,17 +5,13 @@ import roomescape.reservation.infrastructure.persistence.ReservationTimeEntity import java.time.LocalTime @Schema(name = "예약 시간 저장 요청", description = "예약 시간 저장 요청시 사용됩니다.") -@JvmRecord data class ReservationTimeRequest( - @JvmField @field:Schema(description = "예약 시간. HH:mm 형식으로 입력해야 합니다.", type = "string", example = "09:00") val startAt: LocalTime ) @Schema(name = "예약 시간 정보", description = "예약 시간 추가 및 조회 응답시 사용됩니다.") -@JvmRecord data class ReservationTimeResponse( - @JvmField @field:Schema(description = "예약 시간 번호. 예약 시간을 식별할 때 사용합니다.") val id: Long, @@ -36,7 +32,6 @@ fun ReservationTimeEntity.toResponse(): ReservationTimeResponse = ReservationTim ) @Schema(name = "예약 시간 정보 목록 응답", description = "모든 예약 시간 조회 응답시 사용됩니다.") -@JvmRecord data class ReservationTimesResponse( @field:Schema(description = "모든 시간 목록") val times: List @@ -47,7 +42,6 @@ fun List.toResponses(): ReservationTimesResponse = Reserv ) @Schema(name = "특정 테마, 날짜에 대한 시간 정보 응답", description = "특정 날짜와 테마에 대해, 예약 가능 여부를 포함한 시간 정보를 저장합니다.") -@JvmRecord data class ReservationTimeInfoResponse( @field:Schema(description = "예약 시간 번호. 예약 시간을 식별할 때 사용합니다.") val id: Long, @@ -66,7 +60,6 @@ fun ReservationTimeEntity.toInfoResponse(alreadyBooked: Boolean): ReservationTim ) @Schema(name = "예약 시간 정보 목록 응답", description = "특정 테마, 날짜에 대한 모든 예약 가능 시간 정보를 저장합니다.") -@JvmRecord data class ReservationTimeInfosResponse( @field:Schema(description = "특정 테마, 날짜에 대한 예약 가능 여부를 포함한 시간 목록") val times: List diff --git a/src/main/java/roomescape/theme/web/ThemeDTO.kt b/src/main/java/roomescape/theme/web/ThemeDTO.kt index b814a43a..bb7e4d2b 100644 --- a/src/main/java/roomescape/theme/web/ThemeDTO.kt +++ b/src/main/java/roomescape/theme/web/ThemeDTO.kt @@ -7,7 +7,6 @@ import org.hibernate.validator.constraints.URL import roomescape.theme.infrastructure.persistence.ThemeEntity @Schema(name = "테마 저장 요청", description = "테마 정보를 저장할 때 사용합니다.") -@JvmRecord data class ThemeRequest( @field:Schema(description = "필수 값이며, 최대 20글자까지 입력 가능합니다.") @NotBlank @@ -26,7 +25,6 @@ data class ThemeRequest( ) @Schema(name = "테마 정보", description = "테마 추가 및 조회 응답에 사용됩니다.") -@JvmRecord data class ThemeResponse( @field:Schema(description = "테마 번호. 테마를 식별할 때 사용합니다.") val id: Long, @@ -57,7 +55,6 @@ fun ThemeEntity.toResponse(): ThemeResponse = ThemeResponse( @Schema(name = "테마 목록 조회 응답", description = "모든 테마 목록 조회 응답시 사용됩니다.") -@JvmRecord data class ThemesResponse( @field:Schema(description = "모든 테마 목록") val themes: List