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

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.distributed.print.business.enums.ExamDetailStatusEnum;

/**
 * 补考任务
 */
public class MakeupExamTaskDto {

    @JsonSerialize(using = ToStringSerializer.class)
    private Long printPlanId;
    @JsonSerialize(using = ToStringSerializer.class)
    private Long examId;
    @JsonSerialize(using = ToStringSerializer.class)
    private Long examDetailId;
    private String courseCode;
    private String courseName;
    private String paperNumber;
    // 校区
    private String campusName;
    // 班级
    private String className;
    private String loginName;
    private String realName;
    // 印刷室ID
    private Long printHouseId;
    private String unexposedPaperType;
    private String exposedPaperType;
    private ExamDetailStatusEnum status;
    private String statusDisplay;
    private Integer totalSubjects;
    private Integer backupCount;

    public Long getPrintPlanId() {
        return printPlanId;
    }

    public void setPrintPlanId(Long printPlanId) {
        this.printPlanId = printPlanId;
    }

    public Long getExamId() {
        return examId;
    }

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

    public Long getExamDetailId() {
        return examDetailId;
    }

    public void setExamDetailId(Long examDetailId) {
        this.examDetailId = examDetailId;
    }

    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 String getPaperNumber() {
        return paperNumber;
    }

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

    public String getCampusName() {
        return campusName;
    }

    public void setCampusName(String campusName) {
        this.campusName = campusName;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public Long getPrintHouseId() {
        return printHouseId;
    }

    public void setPrintHouseId(Long printHouseId) {
        this.printHouseId = printHouseId;
    }

    public String getLoginName() {
        return loginName;
    }

    public void setLoginName(String loginName) {
        this.loginName = loginName;
    }

    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public String getUnexposedPaperType() {
        return unexposedPaperType;
    }

    public void setUnexposedPaperType(String unexposedPaperType) {
        this.unexposedPaperType = unexposedPaperType;
    }

    public String getExposedPaperType() {
        return exposedPaperType;
    }

    public void setExposedPaperType(String exposedPaperType) {
        this.exposedPaperType = exposedPaperType;
    }

    public ExamDetailStatusEnum getStatus() {
        return status;
    }

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

    public String getStatusDisplay() {
        return this.status != null ? status.getName() : statusDisplay;
    }

    public void setStatusDisplay(String statusDisplay) {
        this.statusDisplay = statusDisplay;
    }

    public Integer getTotalSubjects() {
        return totalSubjects;
    }

    public void setTotalSubjects(Integer totalSubjects) {
        this.totalSubjects = totalSubjects;
    }

    public Integer getBackupCount() {
        return backupCount;
    }

    public void setBackupCount(Integer backupCount) {
        this.backupCount = backupCount;
    }
}
