|
|
/***********************************************************
|
|
|
* @Description : 考试接口
|
|
|
* @author : 梁山广(Laing Shan Guang)
|
|
|
* @date : 2019-05-28 08:05
|
|
|
* @email : liangshanguang2@gmail.com
|
|
|
***********************************************************/
|
|
|
package lsgwr.exam.service;// 定义了接口所属的包名
|
|
|
|
|
|
import lsgwr.exam.entity.Exam;// 导入了实体类Exam,可能包含考试的基本信息
|
|
|
import lsgwr.exam.entity.ExamRecord;// 导入了实体类ExamRecord,可能包含考试记录的详细信息
|
|
|
import lsgwr.exam.vo.*;// 导入了VO对象,VO是值对象,用于在不同层之间传递数据
|
|
|
|
|
|
import java.util.HashMap;// 导入了HashMap,用于存储键值对
|
|
|
import java.util.List;// 导入了List,用于存储一系列对象
|
|
|
// 定义了一个名为ExamService的接口
|
|
|
public interface ExamService {
|
|
|
// 获取所有的问题列表
|
|
|
List<QuestionVo> getQuestionAll();
|
|
|
// 根据传入的问题实体更新问题和选项
|
|
|
QuestionVo updateQuestion(QuestionVo questionVo);
|
|
|
// 创建问题
|
|
|
void questionCreate(QuestionCreateVo questionCreateVo);
|
|
|
// 获取问题的选项、分类和难度的下拉列表
|
|
|
QuestionSelectionVo getSelections();
|
|
|
// 根据问题ID获取问题详情
|
|
|
QuestionDetailVo getQuestionDetail(String id);
|
|
|
// 获取全部考试的列表
|
|
|
List<ExamVo> getExamAll();
|
|
|
// 获取所有问题的下拉列表,用于前端创建考试时筛选
|
|
|
ExamQuestionTypeVo getExamQuestionType();
|
|
|
// 根据前端组装的参数创建考试
|
|
|
Exam create(ExamCreateVo examCreateVo, String userId);
|
|
|
// 获取考试卡片列表
|
|
|
List<ExamCardVo> getExamCardList();
|
|
|
// 根据考试ID获取考试详情
|
|
|
ExamDetailVo getExamDetail(String id);
|
|
|
// 根据用户提交的作答信息进行判分
|
|
|
ExamRecord judge(String userId, String examId, HashMap<String, List<String>> answersMap);
|
|
|
// 根据用户ID获取此用户的所有考试信息
|
|
|
List<ExamRecordVo> getExamRecordList(String userId);
|
|
|
// 获取指定某次考试记录的详情
|
|
|
RecordDetailVo getRecordDetail(String recordId);
|
|
|
// 更新考试
|
|
|
Exam update(ExamVo examVo, String userId);
|
|
|
}
|