package com.qmth.jkserver.model;

//import io.swagger.annotations.ApiModelProperty;
//import org.springframework.data.annotation.Id;
//import org.springframework.data.mongodb.core.index.CompoundIndex;
//import org.springframework.data.mongodb.core.index.CompoundIndexes;
//import org.springframework.data.mongodb.core.index.Indexed;
//import org.springframework.data.mongodb.core.mapping.Document;
//import org.springframework.data.mongodb.core.mapping.Field;
//
//import java.io.Serializable;
//
///**
// * 试卷临时数据
// *
// * @author tianjun
// */
//@Document(collection = "jk_exam_paper_temp")
//@CompoundIndexes({
//        @CompoundIndex(name = "exam_paper_temp_idx", def = "{'exam_code': 1, 'attachment_id': 1}"),
//})
//public class ExamPaperTemp implements Serializable {
//
//    /**
//     *
//     */
//    private static final long serialVersionUID = 7094546769040453318L;
//
//    @Id
//    private String id;
//
//    @Indexed
//    @Field("exam_code")
//    private String examCode;
//
//    //导入的试卷文件的ID
//    @Field("attachment_id")
//    private String attachmentId;
//
//    //课程代码
//    @Field("course_code")
//    private String courseCode;
//
//    //试卷名称
//    @Field("paper_name")
//    private String paperName;
//
//    @Field("paper_id")
//    private String paperId;
//
//    @ApiModelProperty(value = "云阅卷同步考试任务")
//    @Field("exam_task")
//    //TODO 待关联
//    private ExamTask examTask;
//
//    @ApiModelProperty(value = "同步结果")
//    @Field("task_sync_result")
//    private Boolean taskSyncResult;
//
//    public Boolean getTaskSyncResult() {
//        return taskSyncResult;
//    }
//
//    public void setTaskSyncResult(Boolean taskSyncResult) {
//        this.taskSyncResult = taskSyncResult;
//    }
//
//    public String getPaperName() {
//        return paperName;
//    }
//
//    public void setPaperName(String paperName) {
//        this.paperName = paperName;
//    }
//
//    public static long getSerialVersionUID() {
//        return serialVersionUID;
//    }
//
//    public ExamTask getExamTask() {
//        return examTask;
//    }
//
//    public void setExamTask(ExamTask examTask) {
//        this.examTask = examTask;
//    }
//
//    /**
//     * @return the id
//     */
//    public String getId() {
//        return id;
//    }
//
//    /**
//     * @param id the id to set
//     */
//    public void setId(String id) {
//        this.id = id;
//    }
//
//    /**
//     * @return the examCode
//     */
//    public String getExamCode() {
//        return examCode;
//    }
//
//    /**
//     * @param examCode the examCode to set
//     */
//    public void setExamCode(String examCode) {
//        this.examCode = examCode;
//    }
//
//    /**
//     * @return the attachmentId
//     */
//    public String getAttachmentId() {
//        return attachmentId;
//    }
//
//    /**
//     * @param attachmentId the attachmentId to set
//     */
//    public void setAttachmentId(String attachmentId) {
//        this.attachmentId = attachmentId;
//    }
//
//    /**
//     * @return the courseCode
//     */
//    public String getCourseCode() {
//        return courseCode;
//    }
//
//    /**
//     * @param courseCode the courseCode to set
//     */
//    public void setCourseCode(String courseCode) {
//        this.courseCode = courseCode;
//    }
//
//    /**
//     * @return the paperId
//     */
//    public String getPaperId() {
//        return paperId;
//    }
//
//    /**
//     * @param paperId the paperId to set
//     */
//    public void setPaperId(String paperId) {
//        this.paperId = paperId;
//    }
//
//
//}

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

/**
 * <p>
 * 试卷临时数据
 * </p>
 *
 * @author wangliang
 * @since 2023-03-01
 */
@ApiModel(value="JkExamPaperTemp对象", description="试卷临时数据")
@TableName("jk_exam_paper_temp")
public class ExamPaperTemp implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    @ApiModelProperty(value = "考试编码")
    private String examCode;

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

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

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

    @ApiModelProperty(value = "试卷id")
    private String paperId;

    @ApiModelProperty(value = "同步云阅卷考试id")
    @JsonSerialize(using = ToStringSerializer.class)
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Long examTaskId;

    @ApiModelProperty(value = "同步结果，1：已同步，0：未同步")
    private Boolean taskSyncResult;

    public Long getId() {
        return id;
    }

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

    public String getExamCode() {
        return examCode;
    }

    public void setExamCode(String examCode) {
        this.examCode = examCode;
    }

    public Long getAttachmentId() {
        return attachmentId;
    }

    public void setAttachmentId(Long attachmentId) {
        this.attachmentId = attachmentId;
    }

    public String getCourseCode() {
        return courseCode;
    }

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

    public String getPaperName() {
        return paperName;
    }

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

    public String getPaperId() {
        return paperId;
    }

    public void setPaperId(String paperId) {
        this.paperId = paperId;
    }

    public Long getExamTaskId() {
        return examTaskId;
    }

    public void setExamTaskId(Long examTaskId) {
        this.examTaskId = examTaskId;
    }

    public Boolean getTaskSyncResult() {
        return taskSyncResult;
    }

    public void setTaskSyncResult(Boolean taskSyncResult) {
        this.taskSyncResult = taskSyncResult;
    }
}
