package com.hotwj.platform.securityManagement.trainingAnswer.domain.bo;

import com.hotwj.platform.securityManagement.trainingAnswer.domain.HotTrainingAnswerRecord;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;

import java.util.Date;

/**
 * 培训课程答题详情记录业务对象 hot_training_answer_record
 *
 * @author shihongwei
 * @date 2026-02-16
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = HotTrainingAnswerRecord.class, reverseConvertGenerate = false)
public class TrainingAnswerRecordBo extends BaseEntity {

    @NotNull(message = "主键不能为空", groups = { EditGroup.class })
    private Long id;

    private Long companyId;

    /**
     * 答题场景：LESSON=课程随堂题 PLAN=计划配置题
     */
    private String sceneType;

    /**
     * 业务ID：当scene_type=LESSON时为课程ID，当scene_type=PLAN时为培训计划ID
     */
    private Long businessId;

    /**
     * 题目来源：课程章节ID或计划配置项ID
     */
    private Long questionSource;

    private Long trainingId;

    private Long courseId;

    private Long examId;

    private String userId;

    private String userName;

    private Long questionId;

    private Long paperQuestionId;

    private Long questionType;

    private Long questionScore;

    private Long questionOrder;

    private String correctAnswers;

    private String selectedAnswers;

    private Long isCorrect;

    private Long gainedScore;

    private Long answerDuration;

    private Date answerTime;

    private Integer errorCount;

    private String errorAnswers;

    private Long isDeleted;

}

