package cn.com.qmth.stmms.biz.distributpaper.model;

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

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import cn.com.qmth.stmms.biz.exam.model.SubjectiveBlock;
import cn.com.qmth.stmms.common.enums.LibraryStatus;

@Entity
@Table(name = "m_case_library")
public class CaseLibrary implements Serializable {

    private static final long serialVersionUID = -3007844827459700822L;

    @Id
    @GeneratedValue
    private Integer id;

    /**
     * 学习中心Code
     */
    @Column(name = "campus_code")
    private String campusCode;

    /**
     * 考试ID
     */
    @Column(name = "exam_id")
    private Integer examId;

    /**
     * 科目CODE
     */
    @Column(name = "subject_code")
    private String subjectCode;

    /**
     * 科目块ID
     */
    @Column(name = "block_id")
    private Integer blockId;

    /**
     * 密号
     */
    @Column(name = "secret_no")
    private Integer secretNo;

    /**
     * 准考证号
     */
    @Column(name = "exam_number")
    private String examNumber;

    @Column(name = "pic_count")
    private Integer picCount;

    /**
     * 总分
     */
    @Column(name = "total_score")
    private Double totalScore;

    /**
     * 分值列表
     */
    @Column(name = "score_list")
    private String scoreList;

    /**
     * 采样人
     */
    @Column(name = "sampler")
    private Integer sampler;

    /**
     * 采样时间
     */
    @Column(name = "sample_time")
    private Date sampleTime;

    /**
     * 状态，0：已领取1：未领取
     */
    @Column(name = "status")
    @Enumerated(EnumType.ORDINAL)
    private LibraryStatus status;

    /**
     * 领取数量
     */
    @Column(name = "get_count")
    private Integer getCount;

    private transient SubjectiveBlock subjectiveBlock;

    private transient String pictureConfig;

    private transient List<String> pictureUrls;

    public Integer getId() {
        return id;
    }

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

    public Integer getSecretNo() {
        return secretNo;
    }

    public void setSecretNo(Integer secretNo) {
        this.secretNo = secretNo;
    }

    public Integer getExamId() {
        return examId;
    }

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

    public Integer getBlockId() {
        return blockId;
    }

    public void setBlockId(Integer blockId) {
        this.blockId = blockId;
    }

    public String getCampusCode() {
        return campusCode;
    }

    public void setCampusCode(String campusCode) {
        this.campusCode = campusCode;
    }

    public LibraryStatus getStatus() {
        return status;
    }

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

    public Integer getGetCount() {
        return getCount;
    }

    public void setGetCount(Integer getCount) {
        this.getCount = getCount;
    }

    public Double getTotalScore() {
        return totalScore;
    }

    public void setTotalScore(Double totalScore) {
        this.totalScore = totalScore;
    }

    public String getScoreList() {
        return scoreList;
    }

    public void setScoreList(String scoreList) {
        this.scoreList = scoreList;
    }

    public Integer getSampler() {
        return sampler;
    }

    public void setSampler(Integer sampler) {
        this.sampler = sampler;
    }

    public Date getSampleTime() {
        return sampleTime;
    }

    public void setSampleTime(Date sampleTime) {
        this.sampleTime = sampleTime;
    }

    public SubjectiveBlock getSubjectiveBlock() {
        return subjectiveBlock;
    }

    public void setSubjectiveBlock(SubjectiveBlock subjectiveBlock) {
        this.subjectiveBlock = subjectiveBlock;
    }

    public String getSubjectCode() {
        return subjectCode;
    }

    public void setSubjectCode(String subjectCode) {
        this.subjectCode = subjectCode;
    }

    public Integer getPicCount() {
        return picCount;
    }

    public void setPicCount(Integer picCount) {
        this.picCount = picCount;
    }

    public String getPictureConfig() {
        return pictureConfig;
    }

    public void setPictureConfig(String pictureConfig) {
        this.pictureConfig = pictureConfig;
    }

    public List<String> getPictureUrls() {
        return pictureUrls;
    }

    public void setPictureUrls(List<String> pictureUrls) {
        this.pictureUrls = pictureUrls;
    }

    public String getExamNumber() {
        return examNumber;
    }

    public void setExamNumber(String examNumber) {
        this.examNumber = examNumber;
    }

}
