package com.qmth.distributed.print.business.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.distributed.print.business.enums.ReviewStatusEnum;
import com.qmth.teachcloud.common.base.BaseEntity;

import java.io.Serializable;

/**
 * <p>
 * 卷库修改审核临时表
 * </p>
 *
 * @author xf
 * @since 2021-03-23
 */
@TableName("exam_task_paper_log")
public class ExamTaskPaperLog extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 命题任务ID
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @TableField("exam_task_id")
    private Long examTaskId;
    /**
     * 试卷类型，多个以”/“分隔，如A/B/C/D
     */
    @TableField("paper_type")
    private String paperType;
    /**
     * [
     * {
     * "type": "A",
     * "attachmentId": 12,
     * "totalPages": 3
     * },
     * {
     * "type": "B",
     * "attachmentId": 13,
     * "totalPages": 2
     * }
     * ]
     */
    @TableField("paper_attachment_ids")
    private String paperAttachmentIds;
    /**
     * 题卡ID
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @TableField("card_id")
    private Long cardId;

    /**
     * 0-禁用，1-启用
     */
    private Boolean review;
    /**
     * 审核状态：PASS-审核通过，NOT_PASS-审核不通过，默认为空-未审核
     */
    @TableField("review_status")
    private ReviewStatusEnum reviewStatus;

    public Long getExamTaskId() {
        return examTaskId;
    }

    public void setExamTaskId(Long examTaskId) {
        this.examTaskId = examTaskId;
    }

    public String getPaperType() {
        return paperType;
    }

    public void setPaperType(String paperType) {
        this.paperType = paperType;
    }

    public String getPaperAttachmentIds() {
        return paperAttachmentIds;
    }

    public void setPaperAttachmentIds(String paperAttachmentIds) {
        this.paperAttachmentIds = paperAttachmentIds;
    }

    public Long getCardId() {
        return cardId;
    }

    public void setCardId(Long cardId) {
        this.cardId = cardId;
    }

    public Boolean getReview() {
        return review;
    }

    public void setReview(Boolean review) {
        this.review = review;
    }

    public ReviewStatusEnum getReviewStatus() {
        return reviewStatus;
    }

    public void setReviewStatus(ReviewStatusEnum reviewStatus) {
        this.reviewStatus = reviewStatus;
    }
}
