package cn.iocoder.yudao.module.knowledge.controller.responsevo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import cn.iocoder.yudao.module.knowledge.controller.requestdto.Stemdto;
import cn.iocoder.yudao.module.knowledge.entity.SubmitAnswer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.List;

@Data
@Accessors(chain = true)
public class PaperInfovo {
    @Schema(description = "考生编号")
    private String examinationNumber;

    @Schema(description = "考生姓名")
    private String examinationName;

    @Schema(description = "主键")
    private Long paperInfoId;

    @Schema(description = "试卷名称", example = "数学试卷")
    private String name;

    @Schema(description = "总分", example = "100")
    private Double allScore;

    @Schema(description = "总题数", example = "10")
    private Integer allQuestionSum;

    @Schema(description = "培训编码", example = "dsdssKDSDFDS0DSC2")
    private String teachCode;

    @Schema(description = "各题字段(题设置)", example = "de")
    @TableField(typeHandler = JacksonTypeHandler.class)
    private List<Stemdto> setting;

    @Schema(description = "考生答题卡id")
    private Long testPaperAnswerSheetId;

    @Schema(description = "考试编号", example = "123")
    private String testNum;

    @Schema(description = "考试时长", example = "123")
    private Integer duration = 100;

    @Schema(description = "试题列表", example = "123")
    private List<TPaperQuestionStemvo> tPaperQuestionStemvoList;

    @Schema(description = "答卷开始时间")
    private Long startTime;

    @Schema(description = "已答记录")
    private SubmitAnswer answered;

    @Schema(description = "及格分", example = "20")
    private Double passScore;

    @Schema(description = "是不是补考")
    private Boolean isAgainTest;

    @Schema(description = "目标用户得分")
    private Double score;

    @Schema(description = "目标用户答题详细")
    private SubmitAnswer submitAnswer;
    private String showRight;
    private String showAnswer;
}
