package com.unis.base.common.vo;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;

/**
 * @author zhengbodang
 * @version 1.0
 * @Title DCfxxsjyDO
 * @ProjectName 质检信息主表实体类
 * @Description
 * @date 2019/07/22 17点26分
 */

@SuppressWarnings("serial")
@Getter
@Setter
@ApiModel("质检信息主表实体类")
public class TyZjxxzbVO extends BaseEntity {
	/**
	 * 质检信息id ZJ20190802000001
	 */
	@ApiModelProperty("质检信息id ZJ20190802000001")
    private String zjxxid;

	/**
	 * 质检报告编号
	 */
	@ApiModelProperty(value="质检报告编号",required = true)
    private String zjbgbh;

	/**
	 * 质检报告名称
	 */
	@ApiModelProperty(value="质检报告名称",required = true)
    private String zjbgmc;

	/**
	 * 货位编号（仓房编码+01 两位序号）
	 */
	@ApiModelProperty("货位编号（仓房编码+01 两位序号）")
    private String hwbm;

	/**
	 * 所属廒间编号（仓房编码+001 三位序号）
	 */
	@ApiModelProperty("所属廒间编号（仓房编码+001 三位序号）")
    private String ssajbh;

	/**
	 * 所属廒间名称
	 */
	@ApiModelProperty("所属廒间名称")
    private String ssajmc;

	/**
	 * 所属仓房编码（库点编码+001 三位序号）
	 */
	@ApiModelProperty("所属仓房编码（库点编码+001 三位序号）")
    private String sscfbh;

	/**
	 * 所属仓房名称
	 */
	@ApiModelProperty("所属仓房名称")
    private String sscfmc;

	/**
	 * 所属库点编码
	 */
	@ApiModelProperty("所属库点编码")
    private String sskddm;

	/**
	 * 所属库点名称
	 */
	@ApiModelProperty("所属库点名称")
    private String sskdmc;

	/**
	 * 所属企业代码 （统一社会信用代码）
	 */
	@ApiModelProperty("所属企业代码 （统一社会信用代码）")
    private String ssqydm;

	/**
	 * 所属企业名称
	 */
	@ApiModelProperty("所属企业名称")
    private String ssyqmc;

	/**
	 * 委托单位代码 （统一社会信用代码）
	 */
	@ApiModelProperty("委托单位代码 （统一社会信用代码）")
    private String wtdwdm;
	/**
	 * 委托单位名称
	 */
	@ApiModelProperty("委托单位名称")
    private String wtdwmc;

	/**
	 * 检验单位代码 （统一社会信用代码）
	 */
	@ApiModelProperty("检验单位代码 （统一社会信用代码）")
    private String jydwdm;

	/**
	 * 检验单位名称
	 */
	@ApiModelProperty("检验单位名称")
    private String jydwmc;

	/**
	 * 粮食品种编码
	 */
	@ApiModelProperty("粮食品种编码")
    private String lspzbm;
	/**
	 * 粮食品种名称
	 */
	@ApiModelProperty("粮食品种名称")
    private String lspzmc;
	/**
	 * 粮食等级编码（01：一等；02：二等；03：三等；04：四等；05：五等；06：等外）
	 */
	@ApiModelProperty("粮食等级编码（01：一等；02：二等；03：三等；04：四等；05：五等；06：等外）")
    private String lsdjbm;
	/**
	 * 粮食等级名称
	 */
	@ApiModelProperty("粮食等级名称")
    private String lsdjmc;

	/**
	 * 收获年度
	 */
	@ApiModelProperty("收获年度")
    private String shnd;

	/**
	 * 粮食国别
	 */
	@ApiModelProperty("粮食国别")
    private String lsgb;

	/**
	 * 粮食产地
	 */
	@ApiModelProperty("粮食产地")
    private String lscd;

	/**
	 * 检验类别（01：入库；02：出库；03：春普）
	 */
	@ApiModelProperty("检验类别（01：入库；02：出库；03：春普；04：秋普；05：新收获粮；06：库存检查；07：其他）")
    private String jylbbm;

	/**
	 * 检验时间
	 */
	@ApiModelProperty("检验时间")
    private Date jyrq;
	/**
	 * 检验依据（01：国标；00：其他）
	 */
	@ApiModelProperty("检验依据（01：国标；00：其他）")
    private String jyyj;

	/**
	 * 样品单编号
	 */
	@ApiModelProperty("样品单编号")
    private String qydbh;

	/**
	 * 样品数量单位（kg）
	 */
	@ApiModelProperty("样品数量单位（kg）")
    private BigDecimal ypsldw;
	/**
	 * 代表数量单位（kg）
	 */
	@ApiModelProperty("代表数量单位（kg）")
    private BigDecimal dbsldw;

	/**
	 * 规格型号
	 */
	@ApiModelProperty("规格型号")
    private String ggxh;

	/**
	 * 生产日期/批次
	 */
	@ApiModelProperty("生产日期/批次")
    private String scrqpc;

	/**
	 * 来样方式
	 */
	@ApiModelProperty("来样方式")
    private String lyfs;

	/**
	 * 样品状态标识
	 */
	@ApiModelProperty("样品状态标识")
    private String ypztbs;

	/**
	 * 执行产品标准号
	 */
	@ApiModelProperty("执行产品标准号")
    private String zxcpbzh;

	/**
	 * 检验/判定依据
	 */
	@ApiModelProperty("检验/判定依据")
    private String jypdyj;

	/**
	 * 检验备注
	 */
	@ApiModelProperty("检验备注")
    private String checkRemark;

	/**
	 * 入库年限
	 */
	@ApiModelProperty("入库年限")
    private Short rknx;

	/**
	 * 签样地点
	 */
	@ApiModelProperty("签样地点")
    private String qydd;

	/**
	 * 签样人编码
	 */
	@ApiModelProperty("签样人编码")
    private String qyrbm;

	/**
	 * 签样人名称
	 */
	@ApiModelProperty("签样人名称")
    private String qyrmc;

	/**
	 * 检验结果
	 */
	@ApiModelProperty("检验结果")
    private String jyjg;

	/**
	 * 编制时间
	 */
	@ApiModelProperty("编制时间")
    private Date bzsj;

	/**
	 * 编制人编码
	 */
	@ApiModelProperty("编制人编码")
    private String bzrbm;

	/**
	 * 编制人名称
	 */
	@ApiModelProperty("编制人名称")
    private String bzrmc;

	/**
	 * 审核时间
	 */
	@ApiModelProperty("审核时间")
    private Date shsj;

	/**
	 * 审核人编码
	 */
	@ApiModelProperty("审核人编码")
    private String shrbm;

	/**
	 * 审核人名称
	 */
	@ApiModelProperty("审核人名称")
    private String shrmc;

	/**
	 * 签发时间
	 */
	@ApiModelProperty("签发时间")
    private Date qfsj;

	/**
	 * 签发人编码
	 */
	@ApiModelProperty("签发人编码 ")
    private String qfrbm;

	/**
	 * 签发人名称
	 */
    @ApiModelProperty("签发人名称")
    private String qfrmc;

    /**
	 * 证书编码
	 */
    @ApiModelProperty("证书编码")
    private String zsbm;

    @ApiModelProperty("整改状态 0、无需整改   1、待整改   2、整改完成")
    private Integer zgzt;

	@ApiModelProperty(value = "数据异常状态")
	@Column(name = "SJYCZT")
	private Integer sjyczt;

	@ApiModelProperty(value = "数据检验时间戳")
	@Column(name = "DATASTAMP")
	private Long datastamp;

	@ApiModelProperty(value = "异常信息")
	private TyZjxxzbycVO ycxx;

	@Column(name="RKRQ")
	@DateTimeFormat( pattern = "yyyy-MM-dd")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "PRC")
	private Date rkrq;

	public TyZjxxzbVO(String zjxxid, String zjbgbh, String zjbgmc, String hwbm, String ssajbh, String ssajmc, String sscfbh, String sscfmc, String sskddm, String sskdmc, String ssqydm, String ssyqmc, String wtdwdm, String wtdwmc, String jydwdm, String jydwmc, String lspzbm, String lspzmc, String lsdjbm, String lsdjmc, String shnd, String lsgb, String lscd, String jylbbm, Date jyrq, String jyyj, String qydbh, BigDecimal ypsldw, BigDecimal dbsldw, String ggxh, String scrqpc, String lyfs, String ypztbs, String zxcpbzh, String jypdyj, String checkRemark, Short rknx, String qydd, String qyrbm, String qyrmc, String jyjg, Date bzsj, String bzrbm, String bzrmc, Date shsj, String shrbm, String shrmc, Date qfsj, String qfrbm, String qfrmc, String zsbm, Integer zgzt) {
        this.zjxxid = zjxxid;
        this.zjbgbh = zjbgbh;
        this.zjbgmc = zjbgmc;
        this.hwbm = hwbm;
        this.ssajbh = ssajbh;
        this.ssajmc = ssajmc;
        this.sscfbh = sscfbh;
        this.sscfmc = sscfmc;
        this.sskddm = sskddm;
        this.sskdmc = sskdmc;
        this.ssqydm = ssqydm;
        this.ssyqmc = ssyqmc;
        this.wtdwdm = wtdwdm;
        this.wtdwmc = wtdwmc;
        this.jydwdm = jydwdm;
        this.jydwmc = jydwmc;
        this.lspzbm = lspzbm;
        this.lspzmc = lspzmc;
        this.lsdjbm = lsdjbm;
        this.lsdjmc = lsdjmc;
        this.shnd = shnd;
        this.lsgb = lsgb;
        this.lscd = lscd;
        this.jylbbm = jylbbm;
        this.jyrq = jyrq;
        this.jyyj = jyyj;
        this.qydbh = qydbh;
        this.ypsldw = ypsldw;
        this.dbsldw = dbsldw;
        this.ggxh = ggxh;
        this.scrqpc = scrqpc;
        this.lyfs = lyfs;
        this.ypztbs = ypztbs;
        this.zxcpbzh = zxcpbzh;
        this.jypdyj = jypdyj;
        this.checkRemark = checkRemark;
        this.rknx = rknx;
        this.qydd = qydd;
        this.qyrbm = qyrbm;
        this.qyrmc = qyrmc;
        this.jyjg = jyjg;
        this.bzsj = bzsj;
        this.bzrbm = bzrbm;
        this.bzrmc = bzrmc;
        this.shsj = shsj;
        this.shrbm = shrbm;
        this.shrmc = shrmc;
        this.qfsj = qfsj;
        this.qfrbm = qfrbm;
        this.qfrmc = qfrmc;
        this.zsbm = zsbm;
        this.zgzt = zgzt;
    }

    public TyZjxxzbVO() {
    }
}
