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

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.teachcloud.common.base.BaseEntity;
import com.qmth.teachcloud.common.enums.GradeAnalyzePaperStatusEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

/**
 * <p>
 * 分析-批次试卷关联关系表
 * </p>
 *
 * @author wangliang
 * @since 2022-05-20
 */
@ApiModel(value = "GradeBatchPaper对象", description = "分析-批次试卷关联关系表")
public class GradeBatchPaper extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "学校id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long schoolId;

    @ApiModelProperty(value = "分析批次id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long batchId;

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

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

    @ApiModelProperty(value = "试卷类型")
    private String paperType;

    @ApiModelProperty(value = "试卷名称")
    private String paperName;

    @ApiModelProperty(value = "分析试卷状态")
    @TableField(value = "status", updateStrategy = FieldStrategy.IGNORED)
    private GradeAnalyzePaperStatusEnum status;

    @ApiModelProperty(value = "开课学院id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long teachCollegeId;

    @ApiModelProperty(value = "开课学院名称")
    private String teachCollegeName;

    @ApiModelProperty(value = "教研分析课程代码")
    private String gradeCourseCode;

    @ApiModelProperty(value = "是否可用")
    private Boolean enable;

    @ApiModelProperty(value = "是否发布")
    private Boolean publishStatus;

    public Long getSchoolId() {
        return schoolId;
    }

    public void setSchoolId(Long schoolId) {
        this.schoolId = schoolId;
    }

    public Long getBatchId() {
        return batchId;
    }

    public void setBatchId(Long batchId) {
        this.batchId = batchId;
    }

    public Long getGradePaperId() {
        return gradePaperId;
    }

    public void setGradePaperId(Long gradePaperId) {
        this.gradePaperId = gradePaperId;
    }

    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 String getPaperName() {
        return paperName;
    }

    public void setPaperName(String paperName) {
        this.paperName = paperName;
    }

    public GradeAnalyzePaperStatusEnum getStatus() {
        return status;
    }

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

    public Long getTeachCollegeId() {
        return teachCollegeId;
    }

    public void setTeachCollegeId(Long teachCollegeId) {
        this.teachCollegeId = teachCollegeId;
    }

    public String getTeachCollegeName() {
        return teachCollegeName;
    }

    public void setTeachCollegeName(String teachCollegeName) {
        this.teachCollegeName = teachCollegeName;
    }

    public String getGradeCourseCode() {
        return gradeCourseCode;
    }

    public void setGradeCourseCode(String gradeCourseCode) {
        this.gradeCourseCode = gradeCourseCode;
    }

    public Boolean getEnable() {
        return enable;
    }

    public void setEnable(Boolean enable) {
        this.enable = enable;
    }

    public Boolean getPublishStatus() {
        return publishStatus;
    }

    public void setPublishStatus(Boolean publishStatus) {
        this.publishStatus = publishStatus;
    }
}
