package com.prolog.rdc.tms.app.model.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.prolog.rdc.tms.app.model.dto.business.PendingReceiptPackageDetailDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 *
 * 派车单查询DTO
 *
 * @className :PendingAppointmentDetailQueryDTO
 * @author :qian.yh
 * @date :2022/7/4
 * @description :
 *
 * @version :1.0.0
 *
 */
@Data
@ApiModel("派车单查询DTO")
public class PendingAppointmentDetailQueryDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "司机ID")
    private String driverId;

    @ApiModelProperty(value = "企业ID")
    private String enterpriseId;

    @ApiModelProperty(value = "运单号")
    private String shipbillNo;

    @ApiModelProperty(value = "运单ID")
    private String shipbillId;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "单据时间")
    private Date orderDate;

    @ApiModelProperty(value = "提货地点ID")
    private String shipfromId;

    @ApiModelProperty(value = "提货地点编号")
    private String shipfromCode;

    @ApiModelProperty(value = "提货地点名称")
    private String shipfromName;

    @ApiModelProperty(value = "提货地点地址")
    private String shipfromAddress;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "预计提货时间")
    private Date shipfromDate;

    @ApiModelProperty(value = "配送地点ID")
    private String shipToId;

    @ApiModelProperty(value = "配送地点编号")
    private String shipToCode;

    @ApiModelProperty(value = "配送地点名称")
    private String shipToName;

    @ApiModelProperty(value = "配送地点地址")
    private String shipToAddress;

    @ApiModelProperty(value = "收货人")
    private String shipToConsignee;

    @ApiModelProperty(value = "收货人联系电话")
    private String shipToConsigneeTel;

    @ApiModelProperty(value = "收货人联系电话2")
    private String shipToConsigneeMobel;

    @ApiModelProperty(value = "派车单ID")
    private String loadingBillId;

    @ApiModelProperty(value = "货物明细")
    private List<ShipbillItemDetailQueryDTO> itemDetail;

    @ApiModelProperty(value = "包裹信息")
    private List<PendingReceiptPackageDetailDTO> packageDetailDTOList;
}
