package com.zt.plat.module.qms.business.reportdoc.dal.dataobject;

import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
import lombok.*;

import java.time.LocalDateTime;
/**
* 检测报告业务 DO
*
* @author 后台管理
*/
@TableName("t_rpt_doc_main")
@KeySequence("t_rpt_doc_main_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
* 支持业务基类继承：isBusiness=true 时继承 BusinessBaseDO，否则继承 BaseDO
*/
public class ReportDocumentMainDO extends BusinessBaseDO {



    /**
    * ID
    */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
    * 流程实例ID
    */
    @TableField("FLW_INSC_ID")
    private String flowInstanceId;
    /**
    * 报告类型ID
    */
    @TableField("RPT_DOC_TP")
    private Long reportDocumentTypeId;
    /**
    * 流程模型Key
    */
    @TableField("FLW_KY")
    private String flowKey;
    /**
    * 流程流水号
    */
    @TableField("FLW_SRL_NUM")
    private String flowSerialNumber;
    /**
    * 当前节点
    */
    @TableField("CRNT_NDE")
    private String currentNode;
    /**
    * 报告编号
    */
    @TableField("DOC_CD")
    private String documentCode;
    /**
    * 报告类型,【字典】【jy_doc_main_type】化验报告、典型性报告、检测报告
    */
    @TableField("DOC_TP")
    private String documentType;
    /**
    * 报告标题
    */
    @TableField("DOC_TTL")
    private String documentTitle;
    /**
    * 报告配置项
    */
    @TableField("DOC_CFG")
    private String documentConfig;
    /**
    * 报告签名信息
    */
    @TableField("DOC_SIG")
    private String documentSignature;
    /**
    * 报告发起时间
    */
    @TableField("DOC_STRT_TM")
    private LocalDateTime documentStartTime;
    /**
    * 报告结束时间
    */
    @TableField("DOC_END_TM")
    private LocalDateTime documentEndTime;
    /**
    * 报告表单数据
    */
    @TableField("FORM_DAT")
    private String formData;
    /**
    * 审批状态,【字典】【jy_doc_main_status】待编制、审批中、已结束
    */
    @TableField("FLW_STS")
    private String flowStatus;
    /**
    * 作废标识：0-有效；1-作废
    */
    @TableField("CNL_FLG")
    private String cancelFlag;
    /**
    * 所属部门
    */
    @TableField("SYS_DEPT_CD")
    private String systemDepartmentCode;
    /**
    * 备注
    */
    @TableField("RMK")
    private String remark;

    //发布状态
    @TableField("PUB_STS")
    private String publishStatus;

    //发布人id
    @TableField("PUB_USER_ID")
    private String publishUserId;

    //发布人姓名
    @TableField("PUB_USER_NAME")
    private String publishUserName;

    //发布时间
    @TableField("PUB_USER_TIME")
    private String publishTime;

    /**
     * 报表类型ID
     */
    @TableField("CFG_RPT_TP_ID")
    private Long configReportTypeId;

    //表单设计器模板id
    @TableField("DAT_TMPL_ID")
    private Long dataTemplateId;

    //表单设计器模板id
    @TableField("DOC_VER")
    private Integer documentVersion;

    //异步执行状态
    @TableField("EXC_STS")
    private String executionStatus;
}