
package com.tmerclub.cloud.delivery.dto;

import io.swagger.v3.oas.annotations.media.Schema;

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

/**
 * 运费模板DTO
 *
 * @author tmerclub
 * @date 2020-12-07 15:10:01
 */
public class TransportDTO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "运费模板id")
    private Long transportId;

    @Schema(description = "运费模板名称")
    private String transName;

    /**
     * 系统类型见SysTypeEnum 0.普通用户系统 1.商家端 2平台端 3供应商端
     */
    @Schema(description = "系统类型")
    private Integer sysType;
    @Schema(description = "店铺id")
    private Long shopId;

    @Schema(description = "收费方式（0 按件数,1 按重量 2 按体积）")
    private Integer chargeType;

    @Schema(description = "是否包邮 0:不包邮 1:包邮")
    private Integer isFreeFee;

    @Schema(description = "是否含有包邮条件 0 否 1是")
    private Integer hasFreeCondition;

    @Schema(description = "指定条件包邮项")
    private List<TransfeeFreeDTO> transFeeFrees;

    @Schema(description = "运费项")
    private List<TransfeeDTO> transFees;

    public List<TransfeeFreeDTO> getTransFeeFrees() {
        return transFeeFrees;
    }

    public void setTransFeeFrees(List<TransfeeFreeDTO> transFeeFrees) {
        this.transFeeFrees = transFeeFrees;
    }

    public List<TransfeeDTO> getTransFees() {
        return transFees;
    }

    public void setTransFees(List<TransfeeDTO> transFees) {
        this.transFees = transFees;
    }

    public Long getTransportId() {
        return transportId;
    }

    public void setTransportId(Long transportId) {
        this.transportId = transportId;
    }

    public String getTransName() {
        return transName;
    }

    public void setTransName(String transName) {
        this.transName = transName;
    }

    public Integer getSysType() {
        return sysType;
    }

    public void setSysType(Integer sysType) {
        this.sysType = sysType;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public Integer getChargeType() {
        return chargeType;
    }

    public void setChargeType(Integer chargeType) {
        this.chargeType = chargeType;
    }

    public Integer getIsFreeFee() {
        return isFreeFee;
    }

    public void setIsFreeFee(Integer isFreeFee) {
        this.isFreeFee = isFreeFee;
    }

    public Integer getHasFreeCondition() {
        return hasFreeCondition;
    }

    public void setHasFreeCondition(Integer hasFreeCondition) {
        this.hasFreeCondition = hasFreeCondition;
    }

    @Override
    public String toString() {
        return "TransportDTO{" +
                "transportId=" + transportId +
                ", transName='" + transName + '\'' +
                ", sysType=" + sysType +
                ", shopId=" + shopId +
                ", chargeType=" + chargeType +
                ", isFreeFee=" + isFreeFee +
                ", hasFreeCondition=" + hasFreeCondition +
                ", transFeeFrees=" + transFeeFrees +
                ", transFees=" + transFees +
                '}';
    }
}
