package cn.estsh.i3plus.pojo.wms.bean;

import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.ColumnDefault;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * @Description : 产品入库信息
 * @Reference :
 * @Author : silliter.yuan
 * @CreateDate : 2018-11-06 15:58
 * @Modify:
 **/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "WMS_DOC_FG_INSTOCK")
@Api("产品入库信息")
public class WmsFGInStock extends BaseBean {

    private static final long serialVersionUID = 5337952801731230326L;
    @Column(name = "ORDER_NO")
    @ApiParam("订单号")
    public String orderNo;

    @Column(name = "WO_NO")
    @ApiParam("ERP工单号")
    public String woNo;

    @Column(name = "PART_NO")
    @ApiParam("物料编码")
    public String partNo;

    @Column(name = "PART_NAME_RDD")
    @ApiParam("物料名称")
    public String partNameRdd;

    @Column(name = "QTY", columnDefinition = "decimal(18,8)")
    @ColumnDefault("0")
    @ApiParam(value = "需求数量", example = "0")
    public Double qty;

    @Column(name = "UNIT")
    @ApiParam("单位")
    public String unit;

    @Column(name = "SN")
    @ApiParam("条码")
    public String sn;

    /**
     * 状态：1=新建,10=已处理,20=处理出错
     */
    @Column(name = "ORDER_STATUS")
    @ApiParam(value = "状态", example = "1")
    public Integer orderStatus;

    @Column(name = "REMARK")
    @ApiParam("备注")
    public String remark;

    /**
     * 来源：BH:BatchHold,MNU=手工,MES=MES接口
     */
    @Column(name = "SRC")
    @ApiParam("单据来源")
    public String src;

    @Column(name = "ERP_AREA_NO")
    @ApiParam("默认收货库存地")
    public String erpAreaNo;

    @Column(name = "LINE_NO")
    @ApiParam("生产线")
    public String lineNo;

    @Column(name = "WH_NO")
    @ApiParam("默认仓库")
    public String whNo;

    @Column(name = "CUST_NO")
    @ApiParam("客户编码")
    public String custNo;

    @Column(name = "SHIPPING_FLAG")
    @ApiParam("特殊发货标志")
    public String shippingFlag;

    @Column(name = "MFG_LOG_NO")
    @ApiParam("生产批次")
    public String mfgLogNo;

    @Column(name = "BATCH_NO")
    @ApiParam("batch号")
    private String batchNo;

    @Column(name = "PACKAGE_NO")
    @ApiParam("箱条码")
    private String packageNo;

    /**
     * 条码类型：10=实物条码(正常),20=首件,30=中件,40=末件
     */
    @Column(name = "SN_TYPE")
    @ApiParam("条码类型")
    private Integer snType;
}
