package com.casic.missiles.dto.business.print;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@TableName("business_certificate_print")
public class CertificatePrintDetail {


    private static final long serialVersionUID = 1L;

    @ApiModelProperty("证书打印id")
    @TableId("id")
    private Long id;

    @ApiModelProperty("打印文件名称")
    private String  printFileName;


    @ApiModelProperty("证书报告编号")
    @TableField("certificate_report_code")
    private String certificateReportCode;

    @ApiModelProperty("证书报告名称")
    @TableField("certificate_report_name")
    private String certificateReportName;

    @ApiModelProperty("原始记录id")
    @TableField("original_record_id")
    private Long originalRecordId;

    @ApiModelProperty("原始记录编号")
    @TableField("original_record_code")
    private String originalRecordCode;

    @ApiModelProperty("原始记录名称")
    @TableField("original_record_name")
    private String originalRecordName;

    @ApiModelProperty("证书类别，多个逗号分割（字典code），检测报告等")
    @TableField("certificate_report_category")
    private String certificateReportCategory;

    @ApiModelProperty("证书类型，样品内部校验证书等")
    @TableField("certificate_report_type")
    private String certificateReportType;

    @ApiModelProperty("电子签章id")
    @TableField("sign_id")
    private String signId;

    @ApiModelProperty("证书报告模板id")
    @TableField("template_id")
    private Long templateId;


    @ApiModelProperty("校检类别")
    @TableField(exist = false)
    private String measureType;

    @ApiModelProperty("检验项目")
    @TableField(exist = false)
    private String measureContent;

    @ApiModelProperty("样品id")
    @TableField("sample_id")
    private Long sampleId;

    @ApiModelProperty("样品编号")
    @TableField(exist = false)
    private String sampleNo;

    @ApiModelProperty("样品名称")
    @TableField(exist = false)
    private String sampleName;


    @ApiModelProperty("出厂编号")
    @TableField(exist = false)
    private String manufacturingNo;

    @ApiModelProperty("型号")
    @TableField(exist = false)
    private String sampleModel;


    /**
     * 流程实例id
     */
    @ApiModelProperty("流程实例id")
    private String processId;

    /**
     * 委托书id
     */
    @TableField("order_id")
    private Long orderId;

    /**
     * 委托方代码
     */
    @TableField(exist = false)
    private String customerNo;

    /**
     * 委托方名称
     */
    @TableField(exist = false)
    private String customerName;

    /**
     * 委托方电话
     */
    @TableField(exist = false)
    private String customerPhone;

    /**
     * 委托方邮编
     */
    @TableField(exist = false)
    private String customerEmail;

    /**
     * 委托方地址
     */
    @TableField(exist = false)
    private String customerAddress;

    /**
     * 送样人/送检人门户网站登录id（门户网站新建委托书时必传）
     */
    @TableField(exist = false)
    private String delivererId;

    /**
     * 送样人/送检人
     */
    @TableField(exist = false)
    private String deliverer;

    /**
     * 送样人联系方式
     */
    @TableField(exist = false)
    private String delivererTel;

    /**
     * 预约送达时间
     */
    @TableField(exist = false)
    private String planDeliverTime;

    /**
     * 要求检完时间
     */
    @TableField(exist = false)
    private String requireOverTime;

    /**
     * 审批状态
     */
    @TableField("approval_status")
    private String approvalStatus;

    /**
     * 打印次数
     */
    @TableField("print_num")
    private Integer printNum;

    /**
     * 打印状态(字典code）
     */
    @TableField("print_status")
    private String printStatus;

    /**
     * 检定部门id（可用于获取实验室已完成证书个数）
     */
    @TableField("measure_dept_id")
    private Long measureDeptId;

    /**
     * 检定人员(证书打印)
     */
    @TableField("measure_person_id")
    private Long measurePersonId;

    /**
     * 证书报告附件（minio存储文件名）
     */
    @TableField("certificate_report_file")
    private String certificateReportFile;

    @TableField("remark")
    private String remark;

    @TableField("create_user")
    private Long createUser;

    @TableField("create_time")
    private String createTime;

    @TableField("is_del")
    private Boolean isDel;


}
