From 6db8730764ab270f7ffc0c70accbeaabd36bf507 Mon Sep 17 00:00:00 2001 From: pricelees Date: Thu, 31 Jul 2025 16:52:51 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20ReservationEntity=EC=9D=98=20not=20?= =?UTF-8?q?null=20=EC=BB=AC=EB=9F=BC=20=EC=A7=80=EC=A0=95=20=EB=B0=8F=20re?= =?UTF-8?q?servationStatus=20->=20status=20=EC=BB=AC=EB=9F=BC=EB=AA=85=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roomescape/reservation/business/ReservationService.kt | 8 ++++---- .../infrastructure/persistence/ReservationEntity.kt | 6 ++++-- .../infrastructure/persistence/ReservationRepository.kt | 6 +++--- .../roomescape/reservation/web/ReservationResponse.kt | 2 +- .../persistence/ReservationRepositoryTest.kt | 2 +- .../reservation/web/ReservationControllerTest.kt | 6 +++--- 6 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/main/kotlin/roomescape/reservation/business/ReservationService.kt b/src/main/kotlin/roomescape/reservation/business/ReservationService.kt index a5374f75..5f17450f 100644 --- a/src/main/kotlin/roomescape/reservation/business/ReservationService.kt +++ b/src/main/kotlin/roomescape/reservation/business/ReservationService.kt @@ -79,7 +79,7 @@ class ReservationService( createEntity(timeId, themeId, date, memberId, ReservationStatus.CONFIRMED) return reservationRepository.save(reservation) - .also { log.info { "[ReservationService.createConfirmedReservation] 예약 추가 완료: reservationId=${it.id}, status=${it.reservationStatus}" } } + .also { log.info { "[ReservationService.createConfirmedReservation] 예약 추가 완료: reservationId=${it.id}, status=${it.status}" } } } fun createReservationByAdmin(request: AdminReservationCreateRequest): ReservationRetrieveResponse { @@ -192,7 +192,7 @@ class ReservationService( time = time, theme = theme, member = member, - reservationStatus = status + status = status ) } @@ -259,7 +259,7 @@ class ReservationService( if (!reservation.isWaiting()) { log.warn { "[ReservationService.deleteWaiting] 대기 취소 실패(대기 예약이 아님): reservationId=$reservationId" + - ", currentStatus=${reservation.reservationStatus} memberId=$memberId" + ", currentStatus=${reservation.status} memberId=$memberId" } throw ReservationException(ReservationErrorCode.ALREADY_CONFIRMED) } @@ -284,7 +284,7 @@ class ReservationService( if (!reservation.isWaiting()) { log.warn { "[ReservationService.rejectWaiting] 대기 예약 삭제 실패(이미 확정 상태): reservationId=$reservationId" + - ", status=${reservation.reservationStatus}" + ", status=${reservation.status}" } throw ReservationException(ReservationErrorCode.ALREADY_CONFIRMED) } diff --git a/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationEntity.kt b/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationEntity.kt index 53939054..0ae9d2fa 100644 --- a/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationEntity.kt +++ b/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationEntity.kt @@ -14,6 +14,7 @@ class ReservationEntity( @GeneratedValue(strategy = GenerationType.IDENTITY) var id: Long? = null, + @Column(name = "date", nullable = false) var date: LocalDate, @ManyToOne(fetch = FetchType.LAZY) @@ -29,10 +30,11 @@ class ReservationEntity( var member: MemberEntity, @Enumerated(value = EnumType.STRING) - var reservationStatus: ReservationStatus + @Column(name = "status", nullable = false) + var status: ReservationStatus ) { @JsonIgnore - fun isWaiting(): Boolean = reservationStatus == ReservationStatus.WAITING + fun isWaiting(): Boolean = status == ReservationStatus.WAITING @JsonIgnore fun isReservedBy(memberId: Long): Boolean { diff --git a/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepository.kt b/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepository.kt index c11891a7..e9f6c053 100644 --- a/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepository.kt +++ b/src/main/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepository.kt @@ -19,7 +19,7 @@ interface ReservationRepository @Query( """ UPDATE ReservationEntity r - SET r.reservationStatus = :status + SET r.status = :status WHERE r.id = :id """ ) @@ -39,7 +39,7 @@ interface ReservationRepository WHERE r.theme.id = r2.theme.id AND r.time.id = r2.time.id AND r.date = r2.date - AND r.reservationStatus != 'WAITING' + AND r.status != 'WAITING' ) ) """ @@ -53,7 +53,7 @@ interface ReservationRepository t.name, r.date, r.time.startAt, - r.reservationStatus, + r.status, (SELECT COUNT (r2) * 1L FROM ReservationEntity r2 WHERE r2.theme = r.theme AND r2.date = r.date AND r2.time = r.time AND r2.id < r.id), p.paymentKey, p.totalAmount diff --git a/src/main/kotlin/roomescape/reservation/web/ReservationResponse.kt b/src/main/kotlin/roomescape/reservation/web/ReservationResponse.kt index 5e4ea6c0..7b733dac 100644 --- a/src/main/kotlin/roomescape/reservation/web/ReservationResponse.kt +++ b/src/main/kotlin/roomescape/reservation/web/ReservationResponse.kt @@ -54,7 +54,7 @@ fun ReservationEntity.toRetrieveResponse(): ReservationRetrieveResponse = Reserv member = this.member.toRetrieveResponse(), time = this.time.toCreateResponse(), theme = this.theme.toResponse(), - status = this.reservationStatus + status = this.status ) data class ReservationRetrieveListResponse( diff --git a/src/test/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepositoryTest.kt b/src/test/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepositoryTest.kt index d1c095ab..055ed019 100644 --- a/src/test/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepositoryTest.kt +++ b/src/test/kotlin/roomescape/reservation/infrastructure/persistence/ReservationRepositoryTest.kt @@ -106,7 +106,7 @@ class ReservationRepositoryTest( entityManager.clear() reservationRepository.findByIdOrNull(reservationId)?.also { updated -> - updated.reservationStatus shouldBe it + updated.status shouldBe it } } } diff --git a/src/test/kotlin/roomescape/reservation/web/ReservationControllerTest.kt b/src/test/kotlin/roomescape/reservation/web/ReservationControllerTest.kt index 054ffe3b..0ebaad3b 100644 --- a/src/test/kotlin/roomescape/reservation/web/ReservationControllerTest.kt +++ b/src/test/kotlin/roomescape/reservation/web/ReservationControllerTest.kt @@ -331,7 +331,7 @@ class ReservationControllerTest( ReservationEntity::class.java, reservationId ) - reservation.reservationStatus = ReservationStatus.CONFIRMED_PAYMENT_REQUIRED + reservation.status = ReservationStatus.CONFIRMED_PAYMENT_REQUIRED entityManager.persist(reservation) entityManager.flush() entityManager.clear() @@ -443,7 +443,7 @@ class ReservationControllerTest( test("대기 중인 예약 목록을 조회한다.") { login(MemberFixture.create(role = Role.ADMIN)) val expected = reservations.values.flatten() - .count { it.reservationStatus == ReservationStatus.WAITING } + .count { it.status == ReservationStatus.WAITING } Given { port(port) @@ -601,7 +601,7 @@ class ReservationControllerTest( ReservationEntity::class.java, reservation.id )?.also { - it.reservationStatus shouldBe ReservationStatus.CONFIRMED_PAYMENT_REQUIRED + it.status shouldBe ReservationStatus.CONFIRMED_PAYMENT_REQUIRED } ?: throw AssertionError("Reservation not found") } }