- order1PayPrice: 장바구니에 담은 물품의 총 가격
restCash: 충전 후 남아있는 금액 - 환불
member2의 환불 -> 환불 시 주문자의 주문을 확인 환불 금액을 product_option의 refund_price에 등록시키고 예치금 +시켜줘!
//order public void setRefundDone() { for (OrderItem orderItem : OrderItems) { orderItem.setRefundDone(); } } public int getPayPrice() { int payPrice = 0; for(OrderItem orderItem : OrderItems) { payPrice += orderItem.getPayPrice(); } return payPrice; } //orderItem public void setRefundDone() { if(refundQuantity == quantity) return; this.refundQuantity = quantity; this.refundPrice = payPrice; } //orderService @Transactional public void refund(Order order) { int payPrice = order.getPayPrice(); memberService.addCash(order.getMember(),payPrice,"주문환불__예치금환불"); order.setRefundDone(); orderRepository.save(order); }
- 주문 4개 만들기 - Helper 이용
class Helper { public Order order(Member member, List<ProductOption> productOptions) { for (int i = 0; i < productOptions.size(); i++) { ProductOption productOption = productOptions.get(i); cartService.addItem(member, productOption, i + 1); } return orderService.createFromCart(member); } } Helper helper = new Helper(); Order order1 = helper.order(member1,Arrays.asList(product1Option__RED_95,product1Option__RED_95,product1Option__BLUE_95)); Order order2 = helper.order(member2,Arrays.asList(product2Option__Black_95,product2Option__Black_95,product2Option__White_95)); Order order3 = helper.order(member2,Arrays.asList(product1Option__RED_95,product1Option__RED_100,product2Option__Black_95,product2Option__White_95)); Order order4 = helper.order(member1,Arrays.asList(product1Option__RED_95,product2Option__White_95));
- ProductBackupJobConfig 생성, entity 생성, BackupedProduct table: backuped_product (현재 상품들을 백업)
➡️ backuped_product, product 조회한 결과가 같아야함
💫 Bean들 간의 의존도가 있으면 순서를 정할 수 있다
'Java' 카테고리의 다른 글
coolsms - Java 문자메세지 전송 (0) | 2024.04.25 |
---|---|
Spring Batch - Tasklet, Chunk 방식, JAP 기본 사용법, 외래키 제약 조건 (1) | 2024.04.23 |
Spring Batch - JPA, ORM (0) | 2024.04.23 |
Spring Batch - 데이터 생성, 즉시로딩/지연로딩 (0) | 2024.04.23 |
Spring Batch - 기본사용법 (0) | 2024.04.23 |