package com.sckw.transport.model.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author lfdc
 * @description 分包托运列表展示
 * @date 2023-07-20 15:07:45
 */
@Data
public class SubcontractConsignmentVO {

    /**
     * 装货地点名称
     */
    private String loadName;

    /**
     * 装货地点名称卸货地点名称
     */
    private String unloadName;

    /**
     * 订单来源
     */
    private String orderSource;

    /**
     * 订单来源
     */
    private String orderSourceLabel;

    /**
     * 状态
     */
    private String status;

    /**
     * 状态
     */
    private String statusLabel;
    /**
     * 数据库表主键id
     */
    private String id;
    /**
     * 父级id
     */
    private String pid;
    /**
     * 托运订单号
     */
    private String consignOrderNo;
    /**
     * 承运单位
     */
    private String carrierCompany;
    /**
     * 货物名称
     */
    private String goodsName;
    /**
     * 签约方式
     */
    private String signing;
    /**
     * 分配承运量
     */
    private String carryingCapacity;
    /**
     * 装货地点
     */
    private String loadAddress;
    /**
     * 详细装货地点
     */
    private String loadAddressDetail;
    /**
     * 装货城市
     */
    private String loadCityName;
    /**
     * 卸货地点
     */
    private String unloadAddress;

    /**
     * 详细卸货地点
     */
    private String unloadAddressDetail;
    /**
     * 卸货城市
     */
    private String unloadCityName;
    /**
     * 运价
     */
    private String price;

    /**
     * 运价方式
     */
    private String priceType;

    /**
     * 运价方式
     */
    private String priceTypeLabel;

    /**
     * 计费方式
     */
    private String billingMode;

    /**
     * 计费方式
     */
    private String billingModeLabel;

    /**
     * 合理损耗
     */
    private String loss;

    /**
     * 合理损耗
     */
    private String lossUnit;

    /**
     * 合理损耗
     */
    private String lossUnitLabel;

    /**
     * 扣亏货值/元/吨
     */
    private String goodsPrice;

    /**
     * 扣亏货值/元/吨
     */
    private String goodsPriceUnit;

    /**
     * 扣亏货值/元/吨
     */
    private String goodsPriceUnitLabel;

    /**
     * 结算周期
     */
    private String settlementCycle;

    /**
     * 结算周期
     */
    private String settlementCycleLabel;

    /**
     * 承运联系人
     */
    private String carrierContacts;

    /**
     * 承运联系电话
     */
    private String carrierPhone;

    /**
     * 托运单位
     */
    private String consignCompany;

    /**
     * 托运联系人
     */
    private String consignContacts;

    /**
     * 托运联系电话
     */
    private String consignPhone;

    /**
     * 装货联系人
     */
    private String loadContacts;

    /**
     * 装货电话
     */
    private String loadPhone;
    /**
     * 卸货联系人
     */
    private String unloadContacts;
    /**
     * 卸货电话
     */
    private String unloadPhone;
    /**
     * 计划发货时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date shipmentsDate;
    /**
     * 计划收货时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date receiveGoodsDate;
    /**
     * 承运订单号
     */
    private String carrierOrderNo;
    /**
     * 合同id
     */
    private String contractId;
    /**
     * 合同编号
     */
    private String contractNo;
    /**
     * 合同名称
     */
    private String contractName;

    /**
     * 签约方式
     */
    private String signingWay;

    /**
     * 备注
     */
    private String remark;
    /**
     * 创建人
     */
    private String createBy;

    /**
     * 创建人
     */
    private String createName;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     *税率
     */
    private BigDecimal taxRate;

    /**
     *税率
     */
    private String taxRateLabel;

    /**
     * 多装货地4.2
     */
    private List<String> loadNames;

    private List<String> loadAddresses;


    /**
     * 多卸货地4.2
     */
    private List<String> unloadNames;

    private List<String> unloadAddresses;


    /**
     * 多装货地4.2
     */
    private List<LoadAddressVo> loading;

    private List<UnLoadAddressVo> unloading;

}
