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

import lombok.*;

import java.math.BigDecimal;
import java.util.*;
import io.swagger.annotations.*;
import com.alibaba.excel.annotation.ExcelProperty;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
* 订单控货人放货记录 Response VO
* @author 郑屹
*/
@Data
@ApiModel("管理后台 - 订单控货人放货记录 Response VO")
public class OrderCargoControlPickBackVO {

    @ExcelProperty("主键ID")
    @ApiModelProperty(value = "主键ID", required = true)
    private Long id;

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

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

    @ApiModelProperty(value = "提单号")
    private String tidanNo;

    @ExcelProperty("放货箱数")
    @ApiModelProperty(value = "放货箱数")
    private Integer pickNum = 0;

    @ExcelProperty("控货箱数")
    @ApiModelProperty(value = "控货箱数")
    private Integer controlNum = 0;

    @ExcelProperty("放货数量")
    @ApiModelProperty(value = "放货数量")
    private Integer pickQuantity = 0;

    @ExcelProperty("放货体积")
    @ApiModelProperty(value = "放货体积")
    private BigDecimal pickVolume = BigDecimal.ZERO;

    @ExcelProperty("放货重量")
    @ApiModelProperty(value = "放货重量")
    private BigDecimal pickWeight = BigDecimal.ZERO;

    @ExcelProperty("放货id")
    @ApiModelProperty(value = "放货id")
    private Long pickId;

    @ExcelProperty("状态: 0 已取消 1 放货中 2 修改审核中  3 已放货 4 反复核审核中 5 调货审核中 6 取消放货审核中")
    @ApiModelProperty(value = "状态: 0 已取消 1 放货中 2 修改审核中  3 已放货 4 反复核审核中 5 调货审核中 6 取消放货审核中")
    private Integer status;

    @ExcelProperty("备注")
    @ApiModelProperty(value = "备注")
    private String remarks;

    @ExcelProperty("创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "创建时间", required = true)
    private Date createTime;

    @ExcelProperty("复核时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "复核时间")
    private Date checkTime;

    @ExcelProperty("控货人名字")
    @ApiModelProperty(value = "控货人名字")
    private String name;

    @ExcelProperty("控货人名字(英文)")
    @ApiModelProperty(value = "控货人名字(英文)")
    private String nameEn;

    @ExcelProperty("控货人手机")
    @ApiModelProperty(value = "控货人手机")
    private String phone;

    @ExcelProperty("控货人邮箱")
    @ApiModelProperty(value = "控货人邮箱")
    private String email;

    @ExcelProperty("控货人公司")
    @ApiModelProperty(value = "控货人公司")
    private String company;

    @ExcelProperty("控货人公司(英文)")
    @ApiModelProperty(value = "控货人公司(英文)")
    private String companyEn;

    @ApiModelProperty(value = "控货人手机国家区号")
    private String countryCode;

    @ApiModelProperty(value = "收货人姓名")
    private String consigneeName;

    @ApiModelProperty(value = "收货人姓名(英文)")
    private String consigneeNameEn;

    @ApiModelProperty(value = "收货人手机")
    private String consigneePhone;

    @ApiModelProperty(value = "收货人手机国家区号")
    private String consigneeCountryCode;

    @ApiModelProperty(value = "收货人邮箱")
    private String consigneeEmail;

    @ApiModelProperty(value = "操作人")
    private String operator;

    @ApiModelProperty(value = "操作人类型：UserTypeEnum ")
    private Integer userType;


    @ApiModelProperty(value = "审批ID")
    private String formId;
}
