package cn.estsh.i3plus.pojo.mes.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.Lob;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;

/**
 * @Description :
 * @Reference :
 * @Author : joke
 * @CreateDate : 2020-03-06 9:40 上午
 * @Modify:
 **/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "MES_QUEUE_JIT_PLAN")
@Api("MES_客户JIT预装队列")
public class MesQueueJitPlan extends BaseBean implements Serializable {

    private static final long serialVersionUID = 6613487463796132500L;

    @Column(name = "JIS_PLAN_NO")
    @ApiParam("队列编号")
    private String jisPlanNo;

    @Column(name = "PROD_CFG_CODE")
    @ApiParam("配置代码")
    private String prodCfgCode;

    @Column(name = "VIN_CODE")
    @ApiParam("vin")
    private String vinCode;

    @Column(name = "CUST_FLAG_NO")
    @ApiParam("客户标识号")
    private String custFlagNo;

    @Column(name = "VEHICLE_CODE")
    @ApiParam("选配码")
    private String vehicleCode;

    @Column(name = "SEQ", columnDefinition = "decimal(18,8)")
    @ColumnDefault("0")
    @ApiParam("计划排序号")
    private Double seq;

    @Column(name = "STATUS")
    @ApiParam("状态")
    private Integer status;

    @Column(name = "PLAN_DATE")
    @ApiParam("计划上线时间")
    private String planDate;

    @Column(name = "CUST_CODE")
    @ApiParam("客户代码")
    private String custCode;

    @Column(name = "CUST_PLANT_CODE")
    @ApiParam("客户工厂代码")
    private String custPlantCode;

    @Column(name = "VERSION")
    @ApiParam("版本号")
    private String version;

    @Column(name = "JIT_SEQ")
    @ApiParam("JIT排序号")
    private String jitSeq;

    @Column(name = "PROD_CFG_TYPE_CODE")
    @ApiParam("项目代码")
    private String prodCfgTypeCode;

    @Column(name = "MEMO")
    @ApiParam("备注")
    private String memo;

    @Column(name = "SUPPLIER_CODE")
    @ApiParam("供应商编号")
    private String supplierCode;

    @Column(name = "SUPPLIER_NAME")
    @ApiParam("供应商名称")
    private String supplierName;

    @Column(name = "FILE_NAME")
    @ApiParam("解析文件名")
    private String fileName;

    @Column(name = "FILE_URL")
    @ApiParam("解析文件路径")
    private String fileUrl;

    @Column(name = "WORK_ORDER_TYPE")
    @ApiParam("工单类型")
    private Integer workOrderType;

    @Transient
    @ApiParam("计划上线开始时间")
    private String planStartDate;

    @Transient
    @ApiParam("计划上线结束时间")
    private String planEndDate;

    @Transient
    @ApiParam("替换vin")
    private String replaceVinCode;
}
