package com.sw.mes.sap.entity;

import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;

import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import com.sw.mes.core.annotation.Jinko;

import lombok.Data;

/**
 * MES报工SAP货物移动接口对象 report_sap_goodsmvt
 * 
 * @author liru
 * @date 2024-01-06
 */

@Data
@Entity
@Table(name="report_sap_goodsmvt")
@DynamicUpdate
@DynamicInsert
@Jinko(value="MES报工SAP货物移动接口Entity",author = "liru")
public class ReportSapGoodsmvt
{
	
    /** ID */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /** 唯一事务ID */
    private String zuuid;

    /** 过账日期 */
    @Temporal(TemporalType.TIMESTAMP)
    private Date budat;

    /** 凭证日期 */
    @Temporal(TemporalType.TIMESTAMP)
    private Date bldat;

    /** 过账人 */
    private String ernam;

    /** 参照 */
    private String xblnr;

    /** 提单号 */
    private String frbnr;


    /** 移动类型 */
    private String bwart;

    /** 成本中心 */

    private String kostl;

    /** SAP生产订单 */

    private String aufnr;

    /** 销售订单 */

    private String vbeln;

    /** 销售订单行 */

    private String posnr;

    /** 采购订单 */

    private String ebeln;

    /** 采购订单行 */

    private String ebelp;

    /** SAP预留 */

    private String rsnum;

    /** SAP预留行项目 */

    private String rspos;

    /** 发货工厂 */

    private String werks;

    /** 库存地点 */

    private String lgort;

    /** 物料编码 */

    private String matnr;

    /** 批次号 */

    private String charg;

    /** 数量 */

    private String menge;

    /** 单位 */

    private String meins;

    /** 收货工厂 */

    private String umwrk;

    /** 收货库区 */

    private String umlgo;

    /** 收货批次号 */

    private String umcha;

    /** 文本 */

    private String sgtxt;

    /** 副产品标识 X*/

    private String zfcpFlag;
    
    /**发料次数**/
    private String other1;

    /** 批次特性信息 */

    private String chargItem;

    //报工状态
    private Boolean status;
    
    
    /** MES 预加字段 **/
    /**单晶编号**/
    private String crystalNo;
    
    /**工序名称**/
    private String procName;

    /**设备编号**/
    private String deviceNo;
    
    /**UUID**/
    private String uuidValue;
    
    /**备注**/
    private String remark;
    
    /**物料凭证**/
    private String mblnr;
    
    /**发送前 库存地点SAP物料**/
    private String lgortSapnumAgo;
    
    /**发送后 库存地点SAP物料**/
    private String lgortSapnumAfter;
    
    
    /**发送前 收货库区SAP物料**/
    private String umlgoSapnumAgo;
    
    /**发送后 收货库区SAP物料**/
    private String umlgoSapnumAfter;
    
    /**发送后 创建时间 **/
    @Temporal(TemporalType.TIMESTAMP)
    private Date createDate;
    
    /** 报工方式 **/
    private String sendType = "Manual";
    
    /** md5(移动类型 验证订单 物料 批次 库存地点 目标库存地点 发货工厂 收货工厂 收货批次号 数量 单位 SAP预留 SAP预留行项目 成本中心) **/
    private String md5value;
    
    /**SAP对账物料凭证物料凭证**/
    private String sapmblnr;
    
    /**异常原因**/
    private String errorInfo;
    
    @Transient
    private Boolean asyn = true;
}
