해당 포스팅에서는 장바구니 수정 기능의 흐름에 대해서 정리해 보고자 한다.
- Controller: 장바구니 삭제 요청을 처리합니다.
- CartService: 장바구니와 관련된 비즈니스 로직을 처리합니다.
@DeleteMapping("/cartItem/{cartItemId}")
public ResponseEntity<Object> deleteCartItem(@PathVariable("cartItemId") Long cartItemId, @CurrentAccount Account account) {
if (cartService.validateCartItem(cartItemId, account.getUserIdentifier())) {
return ResponseEntity.status(HttpStatus.FORBIDDEN).body("수정 권한이 없습니다.");
}
cartService.deleteCartItem(cartItemId);
return ResponseEntity.ok().body(cartItemId);
}
public void deleteCartItem(Long cartItemId) {
CartItem cartItem = cartItemRepository.findById(cartItemId).orElseThrow(EntityNotFoundException::new);
cartItemRepository.delete(cartItem);
}