[Feature] [상점] 주문 상세 및 정산내역 CRUD#205
Conversation
display 내역 추가
isak-kang
left a comment
There was a problem hiding this comment.
고생하셨습니다!
수정사항 확인 부탁드립니다!
| List.of( | ||
| OrderStatus.DELIVERED, | ||
| OrderStatus.PARTIALLY_DELIVERED, | ||
| OrderStatus.DELIVERED, |
There was a problem hiding this comment.
p1 : OrderStatus.DELIVERED가 중복 되어 있습니다!
Bal1oon
left a comment
There was a problem hiding this comment.
전체적인 흐름은 잘 잡혀있는 것 같습니다.
Controller는 분리하는게 좋을 거 같아요.
코멘트 확인해주시고, 다가오는 주에 리팩토링 전체적으로 하시죠 :)
정산 완료 금액 구현
spotlessApply
| int updateStatusToFailedByIds(@Param("paymentIds") List<UUID> paymentIds); | ||
|
|
||
| @Query("SELECT ac FROM AppliedCoupon ac JOIN ac.payment p WHERE p.id = :paymentId") | ||
| List<AppliedCoupon> findByPayment_Id(@Param("paymentId") UUID paymentId); |
There was a problem hiding this comment.
P1: 자바 네이밍 컨벤션 지켜주세요! 카멜케이스로 작성하셔야합니다
| @JoinColumn(name = "member_id") | ||
| private Member member; | ||
|
|
||
| @OneToMany(mappedBy = "payment", fetch = FetchType.LAZY) |
There was a problem hiding this comment.
P2: 결제 삭제 시 해당 결제에 사용된 쿠폰 리스트도 삭제될 수 있도록 cascade와 orphanRemoval 설정해주세요!
| @Query("UPDATE Payment p SET p.paymentStatus = 'FAILED' WHERE p.paymentId IN :paymentIds") | ||
| int updateStatusToFailedByIds(@Param("paymentIds") List<UUID> paymentIds); | ||
|
|
||
| @Query("SELECT ac FROM AppliedCoupon ac JOIN ac.payment p WHERE p.id = :paymentId") |
There was a problem hiding this comment.
P1: 현재 PaymentRepository에서 AppliedCoupon 타입 배열 반환값을 조회하고 있는데, 타입 불일치로 오류가 날 것 같습니다. AppliedCouponRepostory로 로직을 옮겨주세요!
또한 PaymentId가 Where을 통해 비교되고 있으므로, N+1 해결을 위해 fetch Join 을 적용하지 않는 이상 2개 테이블간 외래키를 통해 조회할 떄 명시적인 Join은 필요하지 않을 것 같습니다. JPA 추론을 통한 기본 메서드를 사용하셔도 될 것 같네요
dto 값에 맞게 service 값 수정
정산 금액 컨트롤러 추가
🛠️ Issue Number
closes #112
주문 상세
정산 내역
📌 작업 내용 및 특이사항
📚 참고사항