package com.sunda.spmswms.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * SAP交货单表头
 * </p>
 *
 * @author Wayne
 * @since 2021-03-22
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("SAP_DELIVERY_NOTE")
@ApiModel(value="SapDeliveryNote对象", description="SAP交货单表头")
public class SapDeliveryNote implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "SAP交货单号")
    @TableId("DELIVERY_NOTE_SAP")
    private String deliveryNoteSap;

    @ApiModelProperty(value = "计划到货时间")
    @TableField("PLANNED_ARRIVAL_DATE")
    private String plannedArrivalDate;

    @ApiModelProperty(value = "交货类型")
    @TableField("DELIVERY_TYPE")
    private String deliveryType;

    @ApiModelProperty(value = "SRM送货单号")
    @TableField("DELIVERY_NOTE_SRM")
    private String deliveryNoteSrm;

    @ApiModelProperty(value = "SAP创建日期")
    @TableField("CREATE_DATE_SAP")
    private String createDateSap;

    @ApiModelProperty(value = "SPMS标识（SAP提供-X表示备件货，M-表示贸易货）")
    @TableField("SPMS_MARK")
    private String spmsMark;

    @ApiModelProperty(value = "供应商编号")
    @TableField("SUPPLIER_CODE")
    private String supplierCode;

    @ApiModelProperty(value = "供应商描述")
    @TableField("SUPPLIER_DESC")
    private String supplierDesc;

    @ApiModelProperty(value = "SPMS 状态，任务开始执行则会被锁定，忽略更新 , 1 任务锁定")
    @TableField("SPMS_STATUS")
    private String spmsStatus;

    @ApiModelProperty(value = "包装单号")
    @TableField("PACKAGE_NOTE")
    private String packageNote;

    @ApiModelProperty(value = "交货单表头备注信息")
    @TableField("REMARKS")
    private String remarks;

    @ApiModelProperty(value = "凭证日期-开始处理日期")
    @TableField("DOCUMENT_DATE")
    private String documentDate;

    @ApiModelProperty(value = "过账日期-提交SAP日期")
    @TableField("POSTING_DATE")
    private String postingDate;

    @ApiModelProperty(value = "移动类型")
    @TableField("MOBILE_TYPE")
    private String mobileType;

    @ApiModelProperty(value = "操作员工号")
    @TableField("USER_ID")
    private String userId;

    @ApiModelProperty(value = "设备编号")
    @TableField("PDA_SN")
    private String pdaSN;

    @ApiModelProperty(value = "SAP物料凭证-提交SAP成功后回写")
    @TableField("SAP_VOUCHER_NUMBER")
    private String sapVoucherNumber;

    @ApiModelProperty(value = "会计年份/SAP凭证年份")
    @TableField("SAP_VOUCHER_YEAR")
    private String sapVoucherYear;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATE_TIME")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField("UPDATE_TIME")
    private Date updateTime;

    @ApiModelProperty(value = "操作员/现场搬运工计费")
    @TableField("OPERATE_USER")
    private String operateUser;

    @ApiModelProperty(value = "撤销SAP过账日期")
    @TableField("CANCEL_POSTING_DATE")
    private String cancelPostingDate;

    @ApiModelProperty(value = "撤销SAP物料凭证-撤销提交SAP成功后回写")
    @TableField("CANCEL_SAP_VOUCHER_NUMBER")
    private String cancelSapVoucherNumber;

    @ApiModelProperty(value = "撤销备注信息")
    @TableField("CANCEL_REMARK")
    private String cancelRemark;
    
    @ApiModelProperty(value = "破损数及批次号")
    @TableField("BATCH_NO")
    private String batchNo;
    
    @ApiModelProperty(value = "作业仓管")
    @TableField("WAREHOUSE_KEEPER")
    private String warehouseKeeper;
    
    @ApiModelProperty(value = "到库时间")
    @TableField("TO_WAREHOUSE_TIME")
    private Date toWarehouseTime;
    
    @ApiModelProperty(value = "开始作业时间")
    @TableField("START_OPERATION_TIME")
    private Date startOperationTime;
    
    @ApiModelProperty(value = "结束作业时间")
    @TableField("END_OPERATION_TIME")
    private Date endOperationTime;
    
    @ApiModelProperty(value = "搬运组")
    @TableField("HANDLING_GROUP")
    private String handlingGroup;
    
    @ApiModelProperty(value = "入库时间")
    @TableField("WAREHOUS_DATE")
    private String warehousDate;

    @ApiModelProperty(value = "单据类型（DO=转储入库；DN=收货入库）")
    @TableField("BUSINESS_TYPE")
    private String businessType;
    
    @ApiModelProperty(value = "SAP Clinet")
    @TableField("MANDT")
    private String mandt;

    public String getPdaSN() {
        return pdaSN;
    }

    public void setPdaSN(String pdaSN) {
        this.pdaSN = pdaSN;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getDeliveryNoteSap() {
        return deliveryNoteSap;
    }

    public void setDeliveryNoteSap(String deliveryNoteSap) {
        this.deliveryNoteSap = deliveryNoteSap;
    }

    public String getPlannedArrivalDate() {
        return plannedArrivalDate;
    }

    public void setPlannedArrivalDate(String plannedArrivalDate) {
        this.plannedArrivalDate = plannedArrivalDate;
    }

    public String getDeliveryType() {
        return deliveryType;
    }

    public void setDeliveryType(String deliveryType) {
        this.deliveryType = deliveryType;
    }

    public String getDeliveryNoteSrm() {
        return deliveryNoteSrm;
    }

    public void setDeliveryNoteSrm(String deliveryNoteSrm) {
        this.deliveryNoteSrm = deliveryNoteSrm;
    }

    public String getCreateDateSap() {
        return createDateSap;
    }

    public void setCreateDateSap(String createDateSap) {
        this.createDateSap = createDateSap;
    }

    public String getSpmsMark() {
        return spmsMark;
    }

    public void setSpmsMark(String spmsMark) {
        this.spmsMark = spmsMark;
    }

    public String getSupplierCode() {
        return supplierCode;
    }

    public void setSupplierCode(String supplierCode) {
        this.supplierCode = supplierCode;
    }

    public String getSupplierDesc() {
        return supplierDesc;
    }

    public void setSupplierDesc(String supplierDesc) {
        this.supplierDesc = supplierDesc;
    }

    public String getSpmsStatus() {
        return spmsStatus;
    }

    public void setSpmsStatus(String spmsStatus) {
        this.spmsStatus = spmsStatus;
    }

    public String getPackageNote() {
        return packageNote;
    }

    public void setPackageNote(String packageNote) {
        this.packageNote = packageNote;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    public String getDocumentDate() {
        return documentDate;
    }

    public void setDocumentDate(String documentDate) {
        this.documentDate = documentDate;
    }

    public String getPostingDate() {
        return postingDate;
    }

    public void setPostingDate(String postingDate) {
        this.postingDate = postingDate;
    }

    public String getMobileType() {
        return mobileType;
    }

    public void setMobileType(String mobileType) {
        this.mobileType = mobileType;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getSapVoucherNumber() {
        return sapVoucherNumber;
    }

    public void setSapVoucherNumber(String sapVoucherNumber) {
        this.sapVoucherNumber = sapVoucherNumber;
    }

    public String getSapVoucherYear() {
        return sapVoucherYear;
    }

    public void setSapVoucherYear(String sapVoucherYear) {
        this.sapVoucherYear = sapVoucherYear;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getOperateUser() {
        return operateUser;
    }

    public void setOperateUser(String operateUser) {
        this.operateUser = operateUser;
    }

    public String getCancelPostingDate() {
        return cancelPostingDate;
    }

    public void setCancelPostingDate(String cancelPostingDate) {
        this.cancelPostingDate = cancelPostingDate;
    }

    public String getCancelSapVoucherNumber() {
        return cancelSapVoucherNumber;
    }

    public void setCancelSapVoucherNumber(String cancelSapVoucherNumber) {
        this.cancelSapVoucherNumber = cancelSapVoucherNumber;
    }

    public String getCancelRemark() {
        return cancelRemark;
    }

    public void setCancelRemark(String cancelRemark) {
        this.cancelRemark = cancelRemark;
    }
    
}
