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

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

import javax.validation.constraints.NotNull;


@Data
@ApiModel(value = "审核订单相关的头信息")
public class OrderApprovalHeadBaseVO {
    // 订单信息
    @ApiModelProperty(value = "订单编号", required = true)
    private String orderNo;

    @ApiModelProperty(value = "订单状态详情见字典：order_status")
    private Integer status;

    @ApiModelProperty(value = "订单异常状态(字典 order_abnormal_state)")
    private Integer abnormalState;

    @ApiModelProperty(value = "订单入仓状态(字典 order_warehouse_in_status)")
    private Integer inWarehouseState;

    @ApiModelProperty(value = "订单出货状态(字典 order_shipment_state)")
    private Integer shipmentState;

    @ApiModelProperty(value = "订单到仓状态(字典 order_to_warehouse_state)")
    private Integer toWarehouseState;

    // 物流信息
    @ApiModelProperty(value = "运输方式id", required = true)
    private Integer transportId;

    @ApiModelProperty(value = "线路ID", required = true)
    private Long lineId;

    @ApiModelProperty(value = "渠道ID")
    private Long channelId;
    @ApiModelProperty(value = "始发地ID")
    private Long departureId;

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

    @ApiModelProperty(value = "目的地ID")
    private Long objectiveId;

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

    @ApiModelProperty(value = "是否预付：0 到付 1 预付")
    private Integer isPayAdvance;

    @ApiModelProperty(value = "始发地id")
    private Long startWarehouseId;

    @ApiModelProperty(value = "仓库名称")
    private String startTitleZh;

    @ApiModelProperty(value = "英文名称")
    private String startTitleEn;

    @ApiModelProperty(value = "容量")
    private String startVolume;

    @ApiModelProperty(value = "仓库地址")
    private String startAddressZh;

    @ApiModelProperty(value = "英文地址")
    private String startAddressEn;

    @ApiModelProperty(value = "目的地id")
    private Long destWarehouseId;

    @ApiModelProperty(value = "仓库名称")
    private String destTitleZh;

    @ApiModelProperty(value = "英文名称")
    private String destTitleEn;

    @ApiModelProperty(value = "容量")
    private String destVolume;

    @ApiModelProperty(value = "仓库地址")
    private String destAddressZh;

    @ApiModelProperty(value = "英文地址")
    private String destAddressEn;

}
