generated from pricelees/issue-pr-template
fix: 회원의 예약 확정 여부를 확인하는 쿼리에서, 입력된 id가 없으면 예외를 던지는 문제 해결(-> false 반환)
This commit is contained in:
parent
036947153d
commit
c2d4e10160
@ -201,7 +201,7 @@ class ReservationService(
|
|||||||
|
|
||||||
fun approveWaiting(reservationId: Long, memberId: Long) {
|
fun approveWaiting(reservationId: Long, memberId: Long) {
|
||||||
validateIsMemberAdmin(memberId)
|
validateIsMemberAdmin(memberId)
|
||||||
if (reservationRepository. isExistConfirmedReservation(reservationId)) {
|
if (reservationRepository.isExistConfirmedReservation(reservationId)) {
|
||||||
throw RoomescapeException(ErrorType.RESERVATION_DUPLICATED, HttpStatus.CONFLICT)
|
throw RoomescapeException(ErrorType.RESERVATION_DUPLICATED, HttpStatus.CONFLICT)
|
||||||
}
|
}
|
||||||
reservationRepository.updateStatusByReservationId(reservationId, ReservationStatus.CONFIRMED_PAYMENT_REQUIRED)
|
reservationRepository.updateStatusByReservationId(reservationId, ReservationStatus.CONFIRMED_PAYMENT_REQUIRED)
|
||||||
|
|||||||
@ -28,11 +28,17 @@ interface ReservationRepository
|
|||||||
@Query("""
|
@Query("""
|
||||||
SELECT EXISTS (
|
SELECT EXISTS (
|
||||||
SELECT 1
|
SELECT 1
|
||||||
FROM ReservationEntity r
|
FROM ReservationEntity r2
|
||||||
WHERE r.id = :id
|
WHERE r2.id = :id
|
||||||
AND r.reservationStatus != 'WAITING'
|
AND EXISTS (
|
||||||
)
|
SELECT 1 FROM ReservationEntity r
|
||||||
""")
|
WHERE r.theme.id = r2.theme.id
|
||||||
|
AND r.reservationTime.id = r2.reservationTime.id
|
||||||
|
AND r.date = r2.date
|
||||||
|
AND r.reservationStatus != 'WAITING'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
""")
|
||||||
fun isExistConfirmedReservation(@Param("id") reservationId: Long): Boolean
|
fun isExistConfirmedReservation(@Param("id") reservationId: Long): Boolean
|
||||||
|
|
||||||
@Query("""
|
@Query("""
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user