From f53cecb12e2106ad10d66b194d455859caf2f330 Mon Sep 17 00:00:00 2001 From: frombunny Date: Fri, 15 Aug 2025 04:47:44 +0900 Subject: [PATCH 1/4] =?UTF-8?q?:sparkles:=20feat:=20=ED=94=BD=EC=97=85=20?= =?UTF-8?q?=EC=99=84=EB=A3=8C=20API=20=EA=B0=9C=EB=B0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Centralthon/domain/order/entity/Order.java | 4 ++++ .../order/exception/CodeNotCreatedException.java | 9 --------- .../exception/OrderCodeNotCreatedException.java | 9 +++++++++ .../domain/order/exception/OrderErrorCode.java | 3 ++- .../order/exception/OrderNotFoundException.java | 9 +++++++++ .../domain/order/service/OrderService.java | 2 ++ .../domain/order/service/OrderServiceImpl.java | 14 ++++++++++++-- .../order/web/controller/OrderController.java | 7 +++++++ .../domain/order/web/dto/CompleteOrderReq.java | 12 ++++++++++++ 9 files changed, 57 insertions(+), 12 deletions(-) delete mode 100644 src/main/java/com/example/Centralthon/domain/order/exception/CodeNotCreatedException.java create mode 100644 src/main/java/com/example/Centralthon/domain/order/exception/OrderCodeNotCreatedException.java create mode 100644 src/main/java/com/example/Centralthon/domain/order/exception/OrderNotFoundException.java create mode 100644 src/main/java/com/example/Centralthon/domain/order/web/dto/CompleteOrderReq.java diff --git a/src/main/java/com/example/Centralthon/domain/order/entity/Order.java b/src/main/java/com/example/Centralthon/domain/order/entity/Order.java index 7b12690..f02ad88 100644 --- a/src/main/java/com/example/Centralthon/domain/order/entity/Order.java +++ b/src/main/java/com/example/Centralthon/domain/order/entity/Order.java @@ -33,4 +33,8 @@ public static Order toEntity(String pickUpCode, int price){ .pickedUp(false) .build(); } + + public void completeOrder(){ + this.pickedUp = true; + } } diff --git a/src/main/java/com/example/Centralthon/domain/order/exception/CodeNotCreatedException.java b/src/main/java/com/example/Centralthon/domain/order/exception/CodeNotCreatedException.java deleted file mode 100644 index 3d83bec..0000000 --- a/src/main/java/com/example/Centralthon/domain/order/exception/CodeNotCreatedException.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.example.Centralthon.domain.order.exception; - -import com.example.Centralthon.global.exception.BaseException; - -public class CodeNotCreatedException extends BaseException { - public CodeNotCreatedException() { - super(OrderErrorCode.CODE_NOT_CREATED); - } -} diff --git a/src/main/java/com/example/Centralthon/domain/order/exception/OrderCodeNotCreatedException.java b/src/main/java/com/example/Centralthon/domain/order/exception/OrderCodeNotCreatedException.java new file mode 100644 index 0000000..aa29144 --- /dev/null +++ b/src/main/java/com/example/Centralthon/domain/order/exception/OrderCodeNotCreatedException.java @@ -0,0 +1,9 @@ +package com.example.Centralthon.domain.order.exception; + +import com.example.Centralthon.global.exception.BaseException; + +public class OrderCodeNotCreatedException extends BaseException { + public OrderCodeNotCreatedException() { + super(OrderErrorCode.ORDER_CODE_NOT_CREATED); + } +} diff --git a/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java b/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java index bf14a67..377399f 100644 --- a/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java +++ b/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java @@ -7,7 +7,8 @@ @Getter @AllArgsConstructor public enum OrderErrorCode implements BaseResponseCode { - CODE_NOT_CREATED("ORDER_500_1",500,"서버에서 유일한 픽업 코드를 생성하지 못했습니다."); + ORDER_NOT_FOUND("ORDER_404_1", 404, "존재하지 않는 주문입니다."), + ORDER_CODE_NOT_CREATED("ORDER_500_1",500,"서버에서 유일한 픽업 코드를 생성하지 못했습니다."); private final String code; private final int httpStatus; diff --git a/src/main/java/com/example/Centralthon/domain/order/exception/OrderNotFoundException.java b/src/main/java/com/example/Centralthon/domain/order/exception/OrderNotFoundException.java new file mode 100644 index 0000000..a072988 --- /dev/null +++ b/src/main/java/com/example/Centralthon/domain/order/exception/OrderNotFoundException.java @@ -0,0 +1,9 @@ +package com.example.Centralthon.domain.order.exception; + +import com.example.Centralthon.global.exception.BaseException; + +public class OrderNotFoundException extends BaseException { + public OrderNotFoundException() { + super(OrderErrorCode.ORDER_NOT_FOUND); + } +} diff --git a/src/main/java/com/example/Centralthon/domain/order/service/OrderService.java b/src/main/java/com/example/Centralthon/domain/order/service/OrderService.java index 03c0e30..28a50a9 100644 --- a/src/main/java/com/example/Centralthon/domain/order/service/OrderService.java +++ b/src/main/java/com/example/Centralthon/domain/order/service/OrderService.java @@ -1,8 +1,10 @@ package com.example.Centralthon.domain.order.service; +import com.example.Centralthon.domain.order.web.dto.CompleteOrderReq; import com.example.Centralthon.domain.order.web.dto.CreateOrderReq; import com.example.Centralthon.domain.order.web.dto.CreateOrderRes; public interface OrderService { CreateOrderRes orderMenus(CreateOrderReq orderReq); + void completePickUp(CompleteOrderReq completeOrderReq); } diff --git a/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java b/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java index 105cc24..72f7842 100644 --- a/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java +++ b/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java @@ -5,9 +5,11 @@ import com.example.Centralthon.domain.menu.repository.MenuRepository; import com.example.Centralthon.domain.order.entity.Order; import com.example.Centralthon.domain.order.entity.OrderItem; -import com.example.Centralthon.domain.order.exception.CodeNotCreatedException; +import com.example.Centralthon.domain.order.exception.OrderCodeNotCreatedException; +import com.example.Centralthon.domain.order.exception.OrderNotFoundException; import com.example.Centralthon.domain.order.repository.OrderItemRepository; import com.example.Centralthon.domain.order.repository.OrderRepository; +import com.example.Centralthon.domain.order.web.dto.CompleteOrderReq; import com.example.Centralthon.domain.order.web.dto.CreateOrderReq; import com.example.Centralthon.domain.order.web.dto.CreateOrderRes; import com.example.Centralthon.domain.order.web.dto.OrderItemListReq; @@ -71,6 +73,14 @@ public CreateOrderRes orderMenus(CreateOrderReq orderReq) { return CreateOrderRes.of(order, storeIdList); } + @Override + @Transactional + public void completePickUp(CompleteOrderReq completeOrderReq){ + Order order = orderRepository.findByPickUpCode(completeOrderReq.getCode()).orElseThrow(OrderNotFoundException::new); + order.completeOrder(); + } + + private Order createOrderWithUniqueCode(int totalPrice) { for(int i = 0; i < 10; i++) { String code = generatePickUpCode(); @@ -81,7 +91,7 @@ private Order createOrderWithUniqueCode(int totalPrice) { // 다음 실행 진행 } } - throw new CodeNotCreatedException(); + throw new OrderCodeNotCreatedException(); } /** diff --git a/src/main/java/com/example/Centralthon/domain/order/web/controller/OrderController.java b/src/main/java/com/example/Centralthon/domain/order/web/controller/OrderController.java index 94874b8..e8fedae 100644 --- a/src/main/java/com/example/Centralthon/domain/order/web/controller/OrderController.java +++ b/src/main/java/com/example/Centralthon/domain/order/web/controller/OrderController.java @@ -1,6 +1,7 @@ package com.example.Centralthon.domain.order.web.controller; import com.example.Centralthon.domain.order.service.OrderService; +import com.example.Centralthon.domain.order.web.dto.CompleteOrderReq; import com.example.Centralthon.domain.order.web.dto.CreateOrderReq; import com.example.Centralthon.domain.order.web.dto.CreateOrderRes; import com.example.Centralthon.global.response.SuccessResponse; @@ -22,4 +23,10 @@ public ResponseEntity> createOrder(@RequestBody CreateOrderRes createOrderRes = orderService.orderMenus(orderReq); return ResponseEntity.status(HttpStatus.CREATED).body(SuccessResponse.of(createOrderRes, SuccessResponseCode.SUCCESS_CREATED)); } + + @PutMapping("/complete") + public ResponseEntity> completePickUp(@RequestBody @Valid CompleteOrderReq completeOrderReq){ + orderService.completePickUp(completeOrderReq); + return ResponseEntity.status(HttpStatus.OK).body(SuccessResponse.empty()); + } } diff --git a/src/main/java/com/example/Centralthon/domain/order/web/dto/CompleteOrderReq.java b/src/main/java/com/example/Centralthon/domain/order/web/dto/CompleteOrderReq.java new file mode 100644 index 0000000..c61bfd8 --- /dev/null +++ b/src/main/java/com/example/Centralthon/domain/order/web/dto/CompleteOrderReq.java @@ -0,0 +1,12 @@ +package com.example.Centralthon.domain.order.web.dto; + +import jakarta.validation.constraints.NotBlank; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class CompleteOrderReq { + @NotBlank(message = "픽업 코드는 필수 값입니다.") + String code; +} From fcf04ea5fd49ced845ff61a96ceb8ef3cbbe9a92 Mon Sep 17 00:00:00 2001 From: frombunny Date: Fri, 15 Aug 2025 04:55:57 +0900 Subject: [PATCH 2/4] =?UTF-8?q?:sparkles:=20feat:=20=EC=9D=B4=EB=AF=B8=20?= =?UTF-8?q?=ED=94=BD=EC=97=85=20=EC=99=84=EB=A3=8C=EB=90=9C=20=EC=A3=BC?= =?UTF-8?q?=EB=AC=B8=EC=9D=BC=20=EA=B2=BD=EC=9A=B0=EC=9D=98=20=EC=98=88?= =?UTF-8?q?=EC=99=B8=20=EC=B2=98=EB=A6=AC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/order/exception/OrderErrorCode.java | 1 + .../domain/order/exception/OrderExpiredException.java | 9 +++++++++ .../domain/order/service/OrderServiceImpl.java | 2 ++ 3 files changed, 12 insertions(+) create mode 100644 src/main/java/com/example/Centralthon/domain/order/exception/OrderExpiredException.java diff --git a/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java b/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java index 377399f..b7a0d78 100644 --- a/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java +++ b/src/main/java/com/example/Centralthon/domain/order/exception/OrderErrorCode.java @@ -7,6 +7,7 @@ @Getter @AllArgsConstructor public enum OrderErrorCode implements BaseResponseCode { + ORDER_EXPIRED("ORDER_400_1", 400, "만료된 주문입니다."), ORDER_NOT_FOUND("ORDER_404_1", 404, "존재하지 않는 주문입니다."), ORDER_CODE_NOT_CREATED("ORDER_500_1",500,"서버에서 유일한 픽업 코드를 생성하지 못했습니다."); diff --git a/src/main/java/com/example/Centralthon/domain/order/exception/OrderExpiredException.java b/src/main/java/com/example/Centralthon/domain/order/exception/OrderExpiredException.java new file mode 100644 index 0000000..97df1c1 --- /dev/null +++ b/src/main/java/com/example/Centralthon/domain/order/exception/OrderExpiredException.java @@ -0,0 +1,9 @@ +package com.example.Centralthon.domain.order.exception; + +import com.example.Centralthon.global.exception.BaseException; + +public class OrderExpiredException extends BaseException { + public OrderExpiredException() { + super(OrderErrorCode.ORDER_EXPIRED); + } +} diff --git a/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java b/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java index 72f7842..1b7d7e0 100644 --- a/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java +++ b/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java @@ -6,6 +6,7 @@ import com.example.Centralthon.domain.order.entity.Order; import com.example.Centralthon.domain.order.entity.OrderItem; import com.example.Centralthon.domain.order.exception.OrderCodeNotCreatedException; +import com.example.Centralthon.domain.order.exception.OrderExpiredException; import com.example.Centralthon.domain.order.exception.OrderNotFoundException; import com.example.Centralthon.domain.order.repository.OrderItemRepository; import com.example.Centralthon.domain.order.repository.OrderRepository; @@ -77,6 +78,7 @@ public CreateOrderRes orderMenus(CreateOrderReq orderReq) { @Transactional public void completePickUp(CompleteOrderReq completeOrderReq){ Order order = orderRepository.findByPickUpCode(completeOrderReq.getCode()).orElseThrow(OrderNotFoundException::new); + if(order.isPickedUp()) throw new OrderExpiredException(); order.completeOrder(); } From ade81882228a5d4861d6d4fd7a3378b2451697ae Mon Sep 17 00:00:00 2001 From: frombunny Date: Sat, 16 Aug 2025 01:37:38 +0900 Subject: [PATCH 3/4] =?UTF-8?q?:recycle:=20refactor:=20=EC=A3=BC=EB=AC=B8?= =?UTF-8?q?=20=EC=8B=9C,=20=EC=98=88=EC=99=B8=EC=B2=98=EB=A6=AC=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Centralthon/domain/menu/entity/Menu.java | 1 + .../domain/menu/exception/MenuErrorCode.java | 4 +- .../menu/exception/MenuExpiredException.java | 7 +++ .../exception/MenuOutOfStockException.java | 7 +++ .../menu/repository/MenuRepository.java | 7 +++ .../order/service/OrderServiceImpl.java | 58 +++++++++++-------- 6 files changed, 58 insertions(+), 26 deletions(-) create mode 100644 src/main/java/com/example/Centralthon/domain/menu/exception/MenuExpiredException.java create mode 100644 src/main/java/com/example/Centralthon/domain/menu/exception/MenuOutOfStockException.java diff --git a/src/main/java/com/example/Centralthon/domain/menu/entity/Menu.java b/src/main/java/com/example/Centralthon/domain/menu/entity/Menu.java index cb15f39..4ea7225 100644 --- a/src/main/java/com/example/Centralthon/domain/menu/entity/Menu.java +++ b/src/main/java/com/example/Centralthon/domain/menu/entity/Menu.java @@ -30,6 +30,7 @@ public class Menu extends BaseEntity { @Column(nullable = false) private int salePrice; + @Setter @Column(nullable = false) private int quantity; diff --git a/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java index 3e53d4c..0a6a280 100644 --- a/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java +++ b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java @@ -7,7 +7,9 @@ @Getter @AllArgsConstructor public enum MenuErrorCode implements BaseResponseCode { - MENU_NOT_FOUND("MENU_NOT_FOUND_404_1",404,"존재하지 않는 메뉴 입니다."); + MENU_NOT_FOUND("MENU_NOT_FOUND_404_1",404,"존재하지 않는 메뉴 입니다."), + MENU_EXPIRED("MENU_EXPIRED_400_1", 400, "판매 마감된 메뉴입니다."), + MENU_OUT_OF_STOCK("MENU_OUT_OF_STOCK_400_2", 400, "재고가 부족합니다."); private final String code; private final int httpStatus; diff --git a/src/main/java/com/example/Centralthon/domain/menu/exception/MenuExpiredException.java b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuExpiredException.java new file mode 100644 index 0000000..33acc1c --- /dev/null +++ b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuExpiredException.java @@ -0,0 +1,7 @@ +package com.example.Centralthon.domain.menu.exception; + +import com.example.Centralthon.global.exception.BaseException; + +public class MenuExpiredException extends BaseException { + public MenuExpiredException() {super(MenuErrorCode.MENU_EXPIRED);} +} diff --git a/src/main/java/com/example/Centralthon/domain/menu/exception/MenuOutOfStockException.java b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuOutOfStockException.java new file mode 100644 index 0000000..b5dd350 --- /dev/null +++ b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuOutOfStockException.java @@ -0,0 +1,7 @@ +package com.example.Centralthon.domain.menu.exception; + +import com.example.Centralthon.global.exception.BaseException; + +public class MenuOutOfStockException extends BaseException { + public MenuOutOfStockException() {super(MenuErrorCode.MENU_OUT_OF_STOCK);} +} diff --git a/src/main/java/com/example/Centralthon/domain/menu/repository/MenuRepository.java b/src/main/java/com/example/Centralthon/domain/menu/repository/MenuRepository.java index 46b30a5..14c8eb6 100644 --- a/src/main/java/com/example/Centralthon/domain/menu/repository/MenuRepository.java +++ b/src/main/java/com/example/Centralthon/domain/menu/repository/MenuRepository.java @@ -6,6 +6,7 @@ import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; +import java.util.Collection; import java.util.List; import java.time.LocalDateTime; @Repository @@ -26,6 +27,12 @@ List findNearbyMenus( double maxLng ); + /** + * ids에 포함된 Menu와 연관된 Store를 한번에 가져옴 + */ + @Query(value = "SELECT m from Menu m join fetch m.store where m.id in :ids") + List findAllByIdWithStore(@Param("ids") Collection ids); + } diff --git a/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java b/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java index 1b7d7e0..16a98e8 100644 --- a/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java +++ b/src/main/java/com/example/Centralthon/domain/order/service/OrderServiceImpl.java @@ -1,7 +1,9 @@ package com.example.Centralthon.domain.order.service; import com.example.Centralthon.domain.menu.entity.Menu; +import com.example.Centralthon.domain.menu.exception.MenuExpiredException; import com.example.Centralthon.domain.menu.exception.MenuNotFoundException; +import com.example.Centralthon.domain.menu.exception.MenuOutOfStockException; import com.example.Centralthon.domain.menu.repository.MenuRepository; import com.example.Centralthon.domain.order.entity.Order; import com.example.Centralthon.domain.order.entity.OrderItem; @@ -22,10 +24,8 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.time.LocalDateTime; +import java.util.*; import java.util.concurrent.ThreadLocalRandom; @Service @@ -48,30 +48,39 @@ public CreateOrderRes orderMenus(CreateOrderReq orderReq) { } // 메뉴 id가 없을 경우 -> MenuNotFoundException - List menuList = menuRepository.findAllById(orderList.keySet()); - if(menuList.size() != orderList.keySet().size()) { - throw new MenuNotFoundException(); - } + List menuList = menuRepository.findAllByIdWithStore(orderList.keySet()); + if(menuList.size() != orderList.keySet().size()) throw new MenuNotFoundException(); // 최종 결제 금액 계산 int totalPrice = 0; + LocalDateTime now = LocalDateTime.now(); for (Menu menu : menuList) { + // 메뉴 마감 시간이 지났을 경우 -> MenuExpiredException + if(menu.getDeadline().isBefore(now)) throw new MenuExpiredException(); + + // 메뉴 재고가 부족할 경우 -> MenuOutOfStockException + if(menu.getQuantity() orderItemList = new ArrayList<>(); - List storeIdList = new ArrayList<>(); + Set storeIds = new LinkedHashSet<>(); for(Menu menu : menuList) { - OrderItem orderItem = OrderItem.toEntity(order, menu, orderList.get(menu.getId())); - orderItemList.add(orderItem); - if(!storeIdList.contains(menu.getStore().getId())) storeIdList.add(menu.getStore().getId()); + int count = orderList.get(menu.getId()); + orderItemList.add(OrderItem.toEntity(order, menu, count)); + storeIds.add(menu.getStore().getId()); // fetch join : 추가 쿼리 없음 + + // 재고 차감 + menu.setQuantity(menu.getQuantity()-count); } orderItemRepository.saveAll(orderItemList); - return CreateOrderRes.of(order, storeIdList); + return CreateOrderRes.of(order, new ArrayList<>(storeIds)); } @Override @@ -82,6 +91,17 @@ public void completePickUp(CompleteOrderReq completeOrderReq){ order.completeOrder(); } + /** + * 같은 트랙잭션에서 실패하면 rollback-only 상태로 인해 정상 커밋이 불가능하므로, + * 새 트랜잭션을 열어 새로운 픽업 코드를 저장하도록 시도 + * -> 새 트랜잭션을 열기 위해 @Transactional(propagation = Propagation.REQUIRES_NEW) 사용 + * -> @Transactional(propagation = Propagation.REQUIRES_NEW)는 기존 트랜잭션을 중지시키고, 새 트랜잭션 시작 + */ + @Transactional(propagation = Propagation.REQUIRES_NEW) + public Order saveOrder(String code, int totalPrice){ + Order order = Order.toEntity(code, totalPrice); + return orderRepository.save(order); + } private Order createOrderWithUniqueCode(int totalPrice) { for(int i = 0; i < 10; i++) { @@ -96,18 +116,6 @@ private Order createOrderWithUniqueCode(int totalPrice) { throw new OrderCodeNotCreatedException(); } - /** - * 같은 트랙잭션에서 실패하면 rollback-only 상태로 인해 정상 커밋이 불가능하므로, - * 새 트랜잭션을 열어 새로운 픽업 코드를 저장하도록 시도 - * -> 새 트랜잭션을 열기 위해 @Transactional(propagation = Propagation.REQUIRES_NEW) 사용 - * -> @Transactional(propagation = Propagation.REQUIRES_NEW)는 기존 트랜잭션을 중지시키고, 새 트랜잭션 시작 - */ - @Transactional(propagation = Propagation.REQUIRES_NEW) - public Order saveOrder(String code, int totalPrice){ - Order order = Order.toEntity(code, totalPrice); - return orderRepository.save(order); - } - /** * 픽업 코드(영문 두자리 + 숫자 네자리) 생성 메서드 */ From 0d56a0ebbf38c542d961e8a88f2268283fe28f5e Mon Sep 17 00:00:00 2001 From: frombunny Date: Sat, 16 Aug 2025 01:57:03 +0900 Subject: [PATCH 4/4] =?UTF-8?q?:recycle:=20refactor:=20MenuErrorCode=20?= =?UTF-8?q?=EC=BD=94=EB=93=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Centralthon/domain/menu/exception/MenuErrorCode.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java index 0a6a280..9cfadb4 100644 --- a/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java +++ b/src/main/java/com/example/Centralthon/domain/menu/exception/MenuErrorCode.java @@ -7,9 +7,9 @@ @Getter @AllArgsConstructor public enum MenuErrorCode implements BaseResponseCode { - MENU_NOT_FOUND("MENU_NOT_FOUND_404_1",404,"존재하지 않는 메뉴 입니다."), - MENU_EXPIRED("MENU_EXPIRED_400_1", 400, "판매 마감된 메뉴입니다."), - MENU_OUT_OF_STOCK("MENU_OUT_OF_STOCK_400_2", 400, "재고가 부족합니다."); + MENU_EXPIRED("MENU_400_1", 400, "판매 마감된 메뉴입니다."), + MENU_OUT_OF_STOCK("MENU_400_2", 400, "재고가 부족합니다."), + MENU_NOT_FOUND("MENU_404_1",404,"존재하지 않는 메뉴 입니다."); private final String code; private final int httpStatus;