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

import cn.iocoder.yudao.module.order.vo.orderLocation.OrderLocationBackVO;
import cn.iocoder.yudao.module.order.vo.orderLocation.OrderLocationMergeVO;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

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

/**
* 到仓货物详情 Response VO
* @author yanghao
*/
@Data
public class WarehouseCheckInfoVO {

    @ApiModelProperty(value = "是否多规格")
    private Boolean isMultiSpecification;

    @ExcelProperty("箱/件数")
    @ApiModelProperty(value = "箱/件数", required = true)
    private Integer cartonsNum;


    @ExcelProperty("所有箱内总货物数量")
    @ApiModelProperty(value = "所有箱内总货物数量")
    private Integer quantity;

    @ExcelProperty("单位")
    @ApiModelProperty(value = "单位", required = true)
    private String unit;


    @ApiModelProperty(value = "规格类型")
    private Integer specificationType;

    @ApiModelProperty(value = "单位-拼接所有")
    private String units;
    /**
     * 箱规
     */
    @ExcelProperty("箱规")
    @ApiModelProperty(value = "箱规")
    private String boxGauge;

    @ExcelProperty("体积")
    @ApiModelProperty(value = "体积")
    private BigDecimal volume;

    @ExcelProperty("重量")
    @ApiModelProperty(value = "重量")
    private BigDecimal weight;


    @ExcelProperty("快递单号")
    @ApiModelProperty(value = "快递单号")
    private String expressNo;


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


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

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


    @ApiModelProperty(value = "到仓储位详细列表")
    private List<OrderLocationBackVO> orderLocationBackVOList;


    @ApiModelProperty(value = "到仓储位合并后的显示列表")
    private List<OrderLocationMergeVO> orderLocationMergeVOSet;


    @ApiModelProperty(value = "混箱状态, 1-混箱")
    private Integer mixStatus = 0;


    @ApiModelProperty(value = "到仓影像列表")
    private List<String> pictureUrls;

}
