package com.seer.teach.admin.response;

import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 题库响应参数
 * </p>
 *
 * @author Lingma
 * @since 2025-10-27
 */
@Data
@Schema(description = "题库响应参数")
public class BankQuestionsResp {

    @Schema(description = "Id")
    private Integer id;

    @Schema(description = "题目")
    private String title;

    @Schema(description = "解题过程")
    private String solution;

    @Schema(description = "答案")
    private String answer;

    @Schema(description = "完整富文本内容（题目 选项 答案 解题过程）")
    private String html;

    @Schema(description = "完整富文本内容（题目 选项 答案 解题过程）")
    private String questionHtml;

    @Schema(description = "0其他题型  1单选选择题 2多选选择题 3问答题 4判断题")
    private Integer type;

    @Schema(description = "题目难易度系数（0.00-5.00，越大越难）")
    private BigDecimal difficulty;

    @Schema(description = "状态：0草稿 1启用 2停用")
    private Integer status;

    @Schema(description = "排序字段")
    private Integer sort;

    @Schema(description = "是否已检查 0-未检查 1-已检查")
    private Integer isChecked;

    @Schema(description = "是否需要图片 0-不需要 1-需要")
    private Integer isNeedImage;

    @Schema(description = "评分")
    private Integer score;

    @Schema(description = "知识点ID")
    private Integer knowId;

    @Schema(description = "知识点")
    private KnowledgePointsResp know;
    
    @Schema(description = "选项列表")
    private List<BankOptionsResp> options;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    @Schema(description = "更新时间")
    private LocalDateTime updateTime;
}