package com.qmth.teachcloud.mark.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

/**
 * <p>
 * 考试科目卷袋表
 * </p>
 *
 * @author xf
 * @since 2023-11-30
 */
@TableName("mark_paper_package")
@ApiModel(value = "MarkPaperPackage对象", description = "考试科目卷袋表")
public class MarkPaperPackage implements Serializable {

    private static final long serialVersionUID = 1L;

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

    @ApiModelProperty(value = "课程代码")
    private String courseCode;

    @ApiModelProperty(value = "科目名称")
    private String courseName;

    @ApiModelProperty(value = "试卷编号（显示）")
    private String paperNumber;

    @ApiModelProperty(value = "试卷编号（交互）")
    @MppMultiId(value = "course_paper_id")
    private String coursePaperId;

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

    @ApiModelProperty(value = "签到表编号")
    @MppMultiId(value = "package_code")
    private String packageCode;

    public MarkPaperPackage() {
    }

    public MarkPaperPackage(Long examId, String courseCode, String courseName, String paperNumber, String coursePaperId, String paperType, String packageCode) {
        this.examId = examId;
        this.courseCode = courseCode;
        this.courseName = courseName;
        this.paperNumber = paperNumber;
        this.coursePaperId = coursePaperId;
        this.paperType = paperType;
        this.packageCode = packageCode;
    }

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

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

    public String getCoursePaperId() {
        return coursePaperId;
    }

    public void setCoursePaperId(String coursePaperId) {
        this.coursePaperId = coursePaperId;
    }

    public String getPaperType() {
        return paperType;
    }

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

    public String getPackageCode() {
        return packageCode;
    }

    public void setPackageCode(String packageCode) {
        this.packageCode = packageCode;
    }

    @Override
    public String toString() {
        return "MarkPaper{" +
                "examId=" + examId +
                ", courseCode=" + courseCode +
                ", courseName=" + courseName +
                ", paperNumber=" + paperNumber +
                "}";
    }
}
