package com.qmth.themis.business.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.themis.business.enums.LivenessTypeEnum;
import com.qmth.themis.business.enums.VerifyExceptionEnum;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @Description: 活体验证记录
 * @Param:
 * @return:
 * @Author: wangliang
 * @Date: 2020/6/25
 */
@ApiModel(value = "t_oe_liveness_verify_history", description = "活体验证记录")
public class TOeLivenessVerifyHistory implements Serializable {
    private static final long serialVersionUID = 1L;

    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键")
    @TableId(value = "id")
    private Long id;

    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "考试记录ID")
    @TableField(value = "exam_record_id")
    private Long examRecordId;

    @ApiModelProperty(value = "FIRST_START: 首次开考 RESUME_START: 断点恢复 IN_PROCESS: 过程中 WARNING_AUTO: 预警自动加入 INVIGILATE_MANUAL: 监考手工加入")
    @TableField(value = "type")
    private LivenessTypeEnum type;

    @ApiModelProperty(value = "随机动作与结果")
    @TableField(value = "actions")
    private String actions;

    @ApiModelProperty(value = "重试次数")
    @TableField(value = "retry")
    private Integer retry;

    @ApiModelProperty(value = "异常类型")
    @TableField(value = "exception")
    private VerifyExceptionEnum exception;

    @ApiModelProperty(value = "开始时间")
    @TableField(value = "start_time")
    private Long startTime;

    @ApiModelProperty(value = "完成时间")
    @TableField(value = "finish_time")
    private Long finishTime;

    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Long createTime;

    @ApiModelProperty(value = "批次号")
    @TableField(value = "batch_no")
    private String batchNo;

    public String getBatchNo() {
        return batchNo;
    }

    public void setBatchNo(String batchNo) {
        this.batchNo = batchNo;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getExamRecordId() {
        return examRecordId;
    }

    public void setExamRecordId(Long examRecordId) {
        this.examRecordId = examRecordId;
    }

    public LivenessTypeEnum getType() {
        return type;
    }

    public void setType(LivenessTypeEnum type) {
        this.type = type;
    }

    public String getActions() {
        return actions;
    }

    public void setActions(String actions) {
        this.actions = actions;
    }

    public Integer getRetry() {
        return retry;
    }

    public void setRetry(Integer retry) {
        this.retry = retry;
    }

    public VerifyExceptionEnum getException() {
		return exception;
	}

	public void setException(VerifyExceptionEnum exception) {
		this.exception = exception;
	}

    public Long getStartTime() {
        return startTime;
    }

    public void setStartTime(Long startTime) {
        this.startTime = startTime;
    }

    public Long getFinishTime() {
        return finishTime;
    }

    public void setFinishTime(Long finishTime) {
        this.finishTime = finishTime;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }
}
