OrderDTO (주문 정보 DTO)
@Getter
@Setter
@Builder
@ToString
@NoArgsConstructor
@AllArgsConstructor
public class OrderDTO {
private int orderNo; // 주문 번호 (PK)
private String uid; // 주문자 아이디 (User.uid)
private int orderTotalPrice; // 최종 결제 금액(쿠폰·포인트·배송비 적용 후)
private String orderAddr; // 전체 배송지 주소 (receiverAddr1 + receiverAddr2)
private String orderStatus; // 주문 상태 (예: "입금대기", "결제완료", "배송중", "배송완료" 등)
private LocalDateTime orderDate; // 주문 일시
private String orderSender; // 보내는 사람 이름
private String senderHp; // 보내는 사람 연락처
private String orderReceiver; // 받는 사람 이름
private String receiverZip; // 받는 사람 우편번호
private String receiverHp; // 받는 사람 연락처
private String orderContent; // 배송 요청사항(예: “부재 시 경비실에 보관”)
private String payment; // 결제 수단(예: "신용카드", "카카오페이")
private String paymentContent; // 결제 상세 정보(예: 카드번호 마스킹)
private int totalQuantity; // 주문된 전체 상품 개수 합계
private int originalTotalPrice; // 상품 원가 합계(할인 전)
private int shippingFee; // 총 배송비
private int totalDiscount; // 총 할인액(상품 할인만)
private int pointDiscount; // 포인트 사용 금액
private int couponDiscount; // 쿠폰 할인 금액
private int totalPoint; // 적립될 총 포인트
private int count; // 주문 아이템 개수 (관리자 페이지용)
// 연관 DTO
private UserDTO user; // 주문자 정보
private DeliveryDTO delivery; // 배송 관련 정보(추후 확장 가능)
private OrderItemDTO orderItem; // (단일) 주문 항목 정보(관리자 조회용)
private String image; // 대표 이미지(주문 요약 화면용)
// 주문에 포함된 모든 상품 목록
private List<OrderItemDTO> orderItems;
// “orderAddr”를 쪼갠 입력용 필드 (화면 폼 바인딩 시 사용)
private String receiverAddr1; // 기본 주소(예: “서울특별시 강남구 테헤란로 123”)
private String receiverAddr2; // 상세 주소(예: “101동 302호”)
}
설명
- orderNo (int)
- 주문 고유번호.
Order 테이블 PK와 매핑됨.
- uid (String)
- orderTotalPrice (int)
- 최종 결제 금액. 실제 결제 모듈에 넘기는 값.
- orderAddr (String)
- orderStatus (String)
- 주문 처리 상태(입금대기, 결제완료, 배송중, 배송완료 등).
- orderDate (LocalDateTime)
- orderSender / senderHp (String)
- orderReceiver / receiverZip / receiverHp (String)
- orderContent (String)
- 배송 요청사항(예: “부재 시 경비실 보관”).
- payment / paymentContent (String)
- payment: 결제 수단(신용카드, 카카오페이 등).
- paymentContent: 카드번호 마스킹 등 결제 정보.
- totalQuantity (int)
- originalTotalPrice (int)
- shippingFee (int)
- totalDiscount (int)
- pointDiscount (int)
- couponDiscount (int)
- totalPoint (int)