package cn.iocoder.yudao.module.order.vo.orderWarehouseAdjust;

import lombok.*;
import java.util.*;
import io.swagger.annotations.*;
import org.springframework.format.annotation.DateTimeFormat;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Data
@ApiModel("管理后台 - 调仓记录查询 VO")
public class OrderWarehouseAdjustQueryVO {

    @ApiModelProperty(value = "订单ID")
    private Long orderId;

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

    @ApiModelProperty(value = "调出仓库id")
    private Long warehouseOutId;

    @ApiModelProperty(value = "调入仓库id")
    private Long warehouseInId;

    @ApiModelProperty(value = "物流公司")
    private String logisticsCompany;

    @ApiModelProperty(value = "物流单号")
    private String logisticsNo;

    @ApiModelProperty(value = "联系电话")
    private String phone;

    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "开始出仓日期")
    private Date beginDeliveryDate;

    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "结束出仓日期")
    private Date endDeliveryDate;

    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "开始到仓日期")
    private Date beginArrivalDate;

    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "结束到仓日期")
    private Date endArrivalDate;


    /**
     * 调拨出仓备注
     */
    @ApiModelProperty(value = "调拨出仓备注")
    private String deliveryRemark;
    /**
     * 调拨到仓备注
     */
    @ApiModelProperty(value = "调拨到仓备注")
    private String arrivalRemark;

    @ApiModelProperty(value = "状态 1审核中 2已通过 3已拒绝  4 已取消 5已出仓  6已到仓")
    private Integer status;

    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "开始创建时间")
    private Date beginCreateTime;

    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "结束创建时间")
    private Date endCreateTime;

}
