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

import lombok.*;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
/**
* 子样检测任务业务 DO
*
* @author 后台管理
*/
@TableName("t_bsn_asy_tsk_dat")
@KeySequence("t_bsn_asy_tsk_dat_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
* 支持业务基类继承：isBusiness=true 时继承 BusinessBaseDO，否则继承 BaseDO
*/
public class BusinessAssayTaskDataDO extends BusinessBaseDO {



    /**
    * ID
    */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
    * 样品主样ID
    */
    @TableField("BSN_BSE_SMP_ID")
    private Long businessBaseSampleId;
    /**
    * 样品分样ID
    */
    @TableField("BSN_SB_PRN_SMP_ID")
    private Long businessSubParentSampleId;
    /**
    * 分样子样ID
    */
    @TableField("BSN_SB_SMP_ID")
    private Long businessSubSampleId;
    /**
    * 检测方法配置ID
    */
    @TableField("CFG_ASY_MTHD_ID")
    private Long configAssayMethodId;
    /**
    * 指派单ID
    */
    @TableField(value = "BSN_ASY_TSK_ID", updateStrategy = FieldStrategy.ALWAYS)
    private Long businessAssayTaskId;
    /**
    * 子样判定ID
    */
    @TableField("BSN_SB_SMP_ASMT_ID")
    private Long businessSubSampleAssessmentId;
    /**
    * 任务类型,【字典】【jy_sample_task_type】常规、抽查...
    */
    @TableField("TSK_TP")
    private String taskType;
    /**
    * 分析类型,【字典】【jy_sample_assay_type】单杯-single_cup、双杯-double_cup、平行-single_parallel...
    */
    @TableField("ASY_TP")
    private String assayType;
    /**
    * 检测项目
    */
    @TableField("ASY_PRJ")
    private String assayProject;
    /**
    * 分析部门ID
    */
    @TableField("ASY_DEPT_ID")
    private Long assayDepartmentId;
    /**
    * 分析部门名称
    */
    @TableField("ASY_DEPT_NAME")
    private String assayDepartmentName;
    /**
    * 分析人
    */
    @TableField(value = "ASY_OPTR", updateStrategy = FieldStrategy.ALWAYS)
    private String assayOperator;
    /**
    * 分析人ID
    */
    @TableField(value = "ASY_OPTR_ID", updateStrategy = FieldStrategy.ALWAYS)
    private Long assayOperatorId;
    /**
    * 分配任务时间
    */
    @TableField(value = "ASN_TSK_TM", updateStrategy = FieldStrategy.ALWAYS)
    private LocalDateTime assignTaskTime;
    /**
    * 是否已分配任务
    */
    @TableField("IS_ASN_TSKD")
    private Integer isAssignTasked;
    /**
    * 是否已上报
    */
    @TableField("IS_RPOD")
    private Integer isReported;
    /**
    * 上报人
    */
    @TableField("RPTR")
    private String reporter;
    /**
    * 上报人ID
    */
    @TableField("RPTR_ID")
    private Long reporterId;
    /**
    * 上报时间
    */
    @TableField("RPT_TM")
    private LocalDateTime reportTime;
    /**
    * 样品流程配置ID
    */
    @TableField("CFG_SMP_FLW_ID")
    private Long configSampleFlowId;
    /**
    * 样品流程节点KEY
    */
    @TableField("SMP_FLW_NDE_KY")
    private String sampleFlowNodeKey;
    /**
    * 样品流程节点时间
    */
    @TableField("SMP_FLW_NDE_TM")
    private LocalDateTime sampleFlowNodeTime;
    /**
    * 复检次数
    */
    @TableField("RCHK_CNT")
    private Integer recheckCount;
    /**
    * 复测次数
    */
    @TableField("RTST_CNT")
    private Integer retestCount;
    /**
    * 扩展信息
    */
    @TableField("EXT_INF")
    private String externalInfomation;
    /**
    * 乐观锁
    */
    @TableField("UPD_CNT")
    private Integer updateCount;
    /**
    * 所属部门
    */
    @TableField("SYS_DEPT_CD")
    private String systemDepartmentCode;
    /**
    * 备注
    */
    @TableField("RMK")
    private String remark;

}