package com.prolog.rdc.tms.model.vo;

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

import java.io.Serializable;
import java.util.Date;


@Data
public class ShipBillManagementQueryVO implements Serializable {

    @ApiModelProperty(value = "当前页")
    private int pageNum;

    @ApiModelProperty(value = "页行数")
    private int pageSize;

    @ApiModelProperty(value = "货主名称")
    private String cargoOwnerName;

    @ApiModelProperty(value = "订单编号")
    private String orderNo;

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

    @ApiModelProperty(value = "订单业务类型 数据字典ORDER_BUSINESS_TYPE：1销售订单-直送  2销售订单-供应商配送 3采购订单-供应商配送 4采购订单-自提 5销售退货 6采购退货 7调拨")
    private Integer orderBusinessType;

    @ApiModelProperty(value = "费用名称")
    private String expenseName;

    @ApiModelProperty(value = "启运开始日期")
    private String startDate;
    private Date startRunDate;
    private Date endRunDate;

    @ApiModelProperty(value = "送达日期")
    private String deliveryDate;
    private Date deliveryStartDate;
    private Date deliveryEndDate;

    @ApiModelProperty(value = "回单日期")
    private String receiptDate;
    private Date receiptStartDate;
    private Date receiptEndDate;

    @ApiModelProperty(value = "正本回单日期")
    private String originalBackDate;
    private Date originalBackStartDate;
    private Date originalBackEndDate;

    @ApiModelProperty(value = "完成日期")
    private String completeDate;
    private Date completeStartDate;
    private Date completeEndDate;

    @ApiModelProperty(value = "始发地")
    private String shipperProvinceCityDistrict;

    @ApiModelProperty(value = "目的地")
    private String consigneeProvinceCityDistrict;

    @ApiModelProperty(value = "部门ID")
    private String[]  departmentIds;

    @ApiModelProperty(value = "核算状态")
    private Integer settlementStatus;

    @ApiModelProperty(value = "费用状态 EXPENSE_STATUS 0：新增 1：审核中 2:正常，3：对账提交，4：对账确认，5：结算单生成")
    private Integer expenseStatus;

    @ApiModelProperty(value = "发货方单位名称")
    private String shipperUnitName;

    @ApiModelProperty(value = "收货方单位名称")
    private String consigneeUnitName;

    @ApiModelProperty(value = "下单开始时间")
    private Date startTime;

    @ApiModelProperty(value = "下单结算时间")
    private Date endTime;

    @ApiModelProperty(value = "来源 1：核算验收")
    private String source;

    @ApiModelProperty(value = "同步状态")
    private Integer synchronousStatus;

    @ApiModelProperty(value = "发货方名称")
    private String shipperName;

    @ApiModelProperty(value = "收货方名称")
    private String consigneeName;

    @ApiModelProperty(value = "下单开始时间")
    private Date orderDateStart;

    @ApiModelProperty(value = "下单结束时间")
    private Date orderDateEnd;

}