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

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 计划单-配载单信息DTO
 *
 * @author lhb
 * @since 2022/4/11 14:17
 *
 */
@Data
@ApiModel("计划单-配载单信息DTO")
public class PlanBillLoadingDTO implements Serializable {

    private static final long serialVersionUID = 143259325234539797L;

    @ApiModelProperty(value = "多个计划单明细ID,逗号分隔")
    private String planDetailIds;

    @ApiModelProperty(value = "货主数")
    private Integer cargoOwnerQty;

    @ApiModelProperty(value = "运单数")
    private Integer shipbillQty;

    @ApiModelProperty(value = "紧急加急运单数")
    private Integer urgentShipbillQty;

    @ApiModelProperty(value = "收货方数")
    private Integer consigneeQty;

    @ApiModelProperty(value = "总提货点数")
    private Integer totalPickUpSiteQty;

    @ApiModelProperty(value = "总配送点数")
    private Integer totalDeliverySiteQty;

    @ApiModelProperty(value = "总站数")
    private Integer totalSitQty;

    @ApiModelProperty(value = "商品/包裹 总件数")
    private Integer totalPieceQty;

    @ApiModelProperty(value = "商品/包裹 总重量")
    private BigDecimal totalWeightQty;

    @ApiModelProperty(value = "商品/包裹 总体积")
    private BigDecimal totalVolumeQty;

    @ApiModelProperty(value = "超限单数")
    private Integer transfiniteBillNumber;


    @ApiModelProperty(value = "承运方类型 数据字典LINE_CARRIER_TYPE:1.承运商  2.司机")
    private Integer carrierType;

    @ApiModelProperty(value = "承运方ID")
    private Long carrierId;

    @ApiModelProperty(value = "承运方编码")
    private String carrierCode;

    @ApiModelProperty(value = "承运方名称")
    private String carrierName;

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

    @ApiModelProperty(value = "司机编号")
    private String driverCode;

    @ApiModelProperty(value = "司机名称")
    private String driverName;

    @ApiModelProperty(value = "司机手机号")
    private String driverPhoneNumber;

    @ApiModelProperty(value = "车辆ID")
    private Long vehicleId;

    @ApiModelProperty(value = "车辆编号")
    private String vehicleCode;

    @ApiModelProperty(value = "车辆名称")
    private String vehicleName;

    @ApiModelProperty(value = "载重(kg)")
    private BigDecimal weight;

    @ApiModelProperty(value = "载方(m³)")
    private BigDecimal volume;

    @ApiModelProperty(value = "车牌号")
    private String vehiclePlateNumber;

    @ApiModelProperty(value = "订单号集合")
    private String orderNos;

    @ApiModelProperty(value = "是否过磅 0:否 1:是")
    private Integer isWeigh;

    @ApiModelProperty(value = "是否过磅名称")
    private String isWeighName;



    @ApiModelProperty(value = "车型ID")
    private Long vehicleTypeId;

    @ApiModelProperty(value = "车型编码")
    private String vehicleTypeCode;

    @ApiModelProperty(value = "车型名称")
    private String vehicleTypeName;

    @ApiModelProperty(value = "车辆归属")
    private Integer vehicleAscription;

    @ApiModelProperty(value = "车辆归属")
    private String vehicleAscriptionName;

    @ApiModelProperty(value = "隶属机构ID")
    private Long affiliationId;

    @ApiModelProperty(value = "隶属机构编码")
    private String affiliationCode;

    @ApiModelProperty(value = "隶属机构名称")
    private String affiliationName;

    @ApiModelProperty(value = "隶属机构ID")
    private Long vehicleAffiliationId;

    @ApiModelProperty(value = "隶属机构编码")
    private String vehicleAffiliationCode;

    @ApiModelProperty(value = "隶属机构名称")
    private String vehicleAffiliationName;

    @ApiModelProperty(value = "车型类别 数据字典VEHICLE_TYPE_CATEGORY：1冷藏车、2平顶车、3厢式货车")
    private Integer vehicleTypeCategory;

    @ApiModelProperty(value = "车型类别 数据字典VEHICLE_TYPE_CATEGORY：1冷藏车、2平顶车、3厢式货车")
    private String vehicleTypeCategoryName;

    @ApiModelProperty(value = "车辆设备ID")
    private String vehicleDeviceId;

    @ApiModelProperty(value = "车辆设备CODE")
    private String vehicleDeviceCode;

    @ApiModelProperty(value = "车辆设备名称")
    private String vehicleDeviceName;
}
