package com.ruoyi.hezhi.domain.dto;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 我的题目对象 tb_member_subject_all
 *
 * @author ruoyi
 * @date 2024-11-06
 */
@Getter
@Setter
@ToString
public class MemberSubjectAllDTO implements Serializable {
    private static final long serialVersionUID = 1L;

    /** 练习答题 */
    public interface subjectPracticeAnswer{}

    /** 我的题目主键ID */
    private Long memberSubjectAllId;

    /** 用户ID */
    @NotNull(message = "请先登录", groups = {subjectPracticeAnswer.class})
    private Long memberUserId;

    /** 题目ID */
    @NotNull(message = "缺少题目ID", groups = {subjectPracticeAnswer.class})
    private Long examSubjectId;

    /** 课程ID **/
    @NotNull(message = "缺少课程ID", groups = {subjectPracticeAnswer.class})
    private Long courseId;

    /** 题目类型（1-单选，2-多选，3-判断，4-论述） */
    private Integer subjectType;

    /** 练习类型（1-顺序练习，2-专项练习，3-章节练习，4-随机练习） */
    @NotNull(message = "缺少练习类型", groups = {subjectPracticeAnswer.class})
    private Integer practiceType;

    /** 序号 */
    @NotNull(message = "缺少序号", groups = {subjectPracticeAnswer.class})
    private Long location;

    /** 我的答案 */
    private String myAnswer;

    /** 答案 */
    private String answer;

    /** 分数 */
    private BigDecimal score;

    /** 0-未回答，1-正确，2-错误，3-论述 */
    private Integer status;

    /** 专业ID */
    private Long majorId;

    /** 题库分类ID */
    private Long subjectWarehouseClassId;

}
