diff --git a/nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/exception/GlobalExceptionHandler.java b/nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/exception/GlobalExceptionHandler.java index 730d9ab..ad81fbf 100644 --- a/nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/exception/GlobalExceptionHandler.java +++ b/nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/exception/GlobalExceptionHandler.java @@ -72,6 +72,7 @@ import com.nowait.domaincorerdb.token.exception.BusinessException; import com.nowait.domaincorerdb.user.exception.UserNotFoundException; import com.nowait.domaincoreredis.rank.exception.MenuCounterUpdateException; +import com.nowait.domaincoreredis.reservation.exception.ReservationDataInconsistencyException; import io.swagger.v3.oas.annotations.Hidden; import lombok.RequiredArgsConstructor; @@ -562,6 +563,14 @@ public ErrorResponse menuCounterUpdateException(MenuCounterUpdateException e, We return new ErrorResponse(e.getMessage(), MENU_COUNTER_UPDATE.getCode()); } + @ResponseStatus(NOT_FOUND) + @ExceptionHandler(ReservationDataInconsistencyException.class) + public ErrorResponse reservationDataInconsistencyException(ReservationDataInconsistencyException e, WebRequest request) { + alarm(e, request); + log.error("reservationDataInconsistencyException", e); + return new ErrorResponse(e.getMessage(), RESERVATION_DATA_INCONSISTENCY.getCode()); + } + /** * * 그 외 예외처리 */ diff --git a/nowait-domain/domain-redis/src/main/java/com/nowait/domaincoreredis/reservation/repository/WaitingRedisRepository.java b/nowait-domain/domain-redis/src/main/java/com/nowait/domaincoreredis/reservation/repository/WaitingRedisRepository.java index f9eb921..1af5b52 100644 --- a/nowait-domain/domain-redis/src/main/java/com/nowait/domaincoreredis/reservation/repository/WaitingRedisRepository.java +++ b/nowait-domain/domain-redis/src/main/java/com/nowait/domaincoreredis/reservation/repository/WaitingRedisRepository.java @@ -82,9 +82,7 @@ public void deleteWaiting(Long storeId, String userId) { redisTemplate.opsForHash().delete(numberMapKey, userId); // reservationNumber → userId 삭제 - if (reservationNumber != null) { - redisTemplate.opsForHash().delete(userMapKey, reservationNumber); - } + redisTemplate.opsForHash().delete(userMapKey, reservationNumber); String statusKey = RedisKeyUtils.buildWaitingStatusKeyPrefix() + storeId; redisTemplate.opsForHash().delete(statusKey, userId);