package com.qmth.themis.business.cache.bean;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.List;

public class ExamCourseCacheBean implements Serializable {

    /**
     *
     */
    private static final long serialVersionUID = -9033695063460046875L;

    // 主键
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    // 考试ID
    @JsonSerialize(using = ToStringSerializer.class)
    private Long examId;

    // 科目编码
    private String courseCode;

    // 科目名称
    private String courseName;

    // 是否开启客观题乱序，0：不开启，1：开启
    private Integer objectiveShuffle;

    // 是否选项乱序，针对一个科目进行设置，0：不开启，1：开启
    private Integer optionShuffle;

    // 已绑定试卷数量
    private Integer paperCount;

    // 是否已补齐标答，0：否，1：是
    private Integer hasAnswer;

    // 音频播放次数
    private Integer audioPlayCount;

    // 题干包含音频，0：不包含，1：包含
    private Integer hasAudio;

    // 试卷id
    private List<Long> paperIds;

    // 调卷比例
    private List<Double> paperWeight;

    @ApiModelProperty(value = "是否允许使用移动端拍照答题，0：不开启，1：开启")
    private Integer mobilePhotoUpload = 0;

    public Integer getMobilePhotoUpload() {
        return mobilePhotoUpload;
    }

    public void setMobilePhotoUpload(Integer mobilePhotoUpload) {
        this.mobilePhotoUpload = mobilePhotoUpload;
    }

    public Long getId() {
        return id;
    }

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

    public Long getExamId() {
        return examId;
    }

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

    public String getCourseCode() {
        return courseCode;
    }

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

    public String getCourseName() {
        return courseName;
    }

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

    public Integer getObjectiveShuffle() {
        return objectiveShuffle;
    }

    public void setObjectiveShuffle(Integer objectiveShuffle) {
        this.objectiveShuffle = objectiveShuffle;
    }

    public Integer getOptionShuffle() {
        return optionShuffle;
    }

    public void setOptionShuffle(Integer optionShuffle) {
        this.optionShuffle = optionShuffle;
    }

    public Integer getPaperCount() {
        return paperCount;
    }

    public void setPaperCount(Integer paperCount) {
        this.paperCount = paperCount;
    }

    public Integer getHasAnswer() {
        return hasAnswer;
    }

    public void setHasAnswer(Integer hasAnswer) {
        this.hasAnswer = hasAnswer;
    }

    public Integer getAudioPlayCount() {
        return audioPlayCount;
    }

    public void setAudioPlayCount(Integer audioPlayCount) {
        this.audioPlayCount = audioPlayCount;
    }

    public List<Long> getPaperIds() {
        return paperIds;
    }

    public void setPaperIds(List<Long> paperIds) {
        this.paperIds = paperIds;
    }

    public List<Double> getPaperWeight() {
        return paperWeight;
    }

    public void setPaperWeight(List<Double> paperWeight) {
        this.paperWeight = paperWeight;
    }

    public Integer getHasAudio() {
        return hasAudio;
    }

    public void setHasAudio(Integer hasAudio) {
        this.hasAudio = hasAudio;
    }

}
