
package com.tmerclub.cloud.order.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;

/**
 * @author lhd
 */
@Data
@ToString
@Schema(description = "订单详细信息")
public class OrderDetailVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "销售店铺名称", requiredMode = Schema.RequiredMode.REQUIRED)
    private String shopName;
    @Schema(description = "订单运费", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long freightAmount;

    @Schema(description = "店铺运费减免金额", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long freeFreightAmount;

    @Schema(description = "平台运费减免金额", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long platformFreeFreightAmount;

    @Schema(description = "订单项详细信息")
    private List<OrderItemDetailVO> orderItemDetailList;

    public String getShopName() {
        return shopName;
    }

    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    public Long getPlatformFreeFreightAmount() {
        return platformFreeFreightAmount;
    }

    public void setPlatformFreeFreightAmount(Long platformFreeFreightAmount) {
        this.platformFreeFreightAmount = platformFreeFreightAmount;
    }

    public Long getFreightAmount() {
        return freightAmount;
    }

    public void setFreightAmount(Long freightAmount) {
        this.freightAmount = freightAmount;
    }

    public List<OrderItemDetailVO> getOrderItemDetailList() {
        return orderItemDetailList;
    }

    public void setOrderItemDetailList(List<OrderItemDetailVO> orderItemDetailList) {
        this.orderItemDetailList = orderItemDetailList;
    }

    public Long getFreeFreightAmount() {
        return freeFreightAmount;
    }

    public void setFreeFreightAmount(Long freeFreightAmount) {
        this.freeFreightAmount = freeFreightAmount;
    }

    @Override
    public String toString() {
        return "OrderDetailVO{" +
                "shopName='" + shopName + '\'' +
                ", freightAmount=" + freightAmount +
                ", freeFreightAmount=" + freeFreightAmount +
                ", platformFreeFreightAmount=" + platformFreeFreightAmount +
                ", orderItemDetailList=" + orderItemDetailList +
                '}';
    }
}
