package com.shkj.wms.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 库存明细对象
 *
 * @author lch
 * @date 2023-05-05
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class SysStockDetailEditBo implements Serializable {

    private static final long serialVersionUID=1L;


    /**
     * $column.columnComment
     */
    @NotNull(message = "${column.columnComment}不得为空")
    private Long id;


    /**
     * 货主id
     */
    @NotNull(message = "货主id不得为空")
    private Long consignorId;


    /**
     * 所属仓库
     */
    @NotNull(message = "所属仓库不得为空")
    private Long branchId;


    /**
     * 所属库房
     */
    @NotNull(message = "所属库房不得为空")
    private Long storageId;


    /**
     * 所属区域
     */
    @NotNull(message = "所属区域不得为空")
    private Long areaId;


    /**
     * 所属巷道
     */
    @NotBlank(message = "所属巷道不得为空")
    private String tunnel;


    /**
     * 治具编号
     */
    @NotNull(message = "治具编号不得为空")
    private Long containerCode;


    /**
     * 库存
     */
    @NotNull(message = "库存不得为空")
    private BigDecimal qty;


    /**
     * 货位
     */
    @NotNull(message = "货位不得为空")
    private Long locationId;


    /**
     * 批次信息
     */
    @NotBlank(message = "批次信息不得为空")
    private String batch;


    /**
     * 需要冲孔未冲孔记录 0 否 1是
     */
    @NotBlank(message = "需要冲孔未冲孔记录 0 否 1是不得为空")
    private String isPuch;


    /**
     * $column.columnComment
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date inTime;


    /**
     * $column.columnComment
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date outTime;


}

