package com.qmth.distributed.print.business.bean.marking;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.distributed.print.business.enums.ExamPaperStructureStatusEnum;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @Description 基础试卷信息
 * @Author CaoZixuan
 * @Date 2022-04-13
 */
public class BasicPaperInfo {
    @ApiModelProperty(value = "试卷结构表id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long examPaperStructureId;

    @ApiModelProperty(value = "考试id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long examId;

    @ApiModelProperty(value = "云阅卷考试id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long thirdRelateId;

    @ApiModelProperty(value = "云阅卷考试名称")
    private String thirdRelateName;

    @ApiModelProperty(value = "课程名称")
    private String courseName;

    @ApiModelProperty(value = "课程编号")
    private String courseCode;

    @ApiModelProperty(value = "试卷编号")
    private String paperNumber;

    @ApiModelProperty(value = "试卷类型(A,B)")
    @NotNull(message = "请提供试卷类型")
    @Length(min = 1,message = "请提供试卷类型")
    private String paperType;

    @ApiModelProperty(value = "状态")
    private ExamPaperStructureStatusEnum status;

    @ApiModelProperty(value = "课程创建的任务序号")
    private String sequence;

    public Long getExamPaperStructureId() {
        return examPaperStructureId;
    }

    public void setExamPaperStructureId(Long examPaperStructureId) {
        this.examPaperStructureId = examPaperStructureId;
    }

    public Long getExamId() {
        return examId;
    }

    public void setExamId(Long examId) {
        this.examId = examId;
    }

    public Long getThirdRelateId() {
        return thirdRelateId;
    }

    public void setThirdRelateId(Long thirdRelateId) {
        this.thirdRelateId = thirdRelateId;
    }

    public String getThirdRelateName() {
        return thirdRelateName;
    }

    public void setThirdRelateName(String thirdRelateName) {
        this.thirdRelateName = thirdRelateName;
    }

    public String getCourseName() {
        return courseName;
    }

    public void setCourseName(String courseName) {
        this.courseName = courseName;
    }

    public String getCourseCode() {
        return courseCode;
    }

    public void setCourseCode(String courseCode) {
        this.courseCode = courseCode;
    }

    public String getPaperNumber() {
        return paperNumber;
    }

    public void setPaperNumber(String paperNumber) {
        this.paperNumber = paperNumber;
    }

    public String getPaperType() {
        return paperType;
    }

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

    public ExamPaperStructureStatusEnum getStatus() {
        return status;
    }

    public void setStatus(ExamPaperStructureStatusEnum status) {
        this.status = status;
    }

    public String getSequence() {
        return sequence;
    }

    public void setSequence(String sequence) {
        this.sequence = sequence;
    }
}
