From 059a70f2c9609533a671b89789bd346276303ed1 Mon Sep 17 00:00:00 2001
From: fmy <2733603802@qq.com>
Date: Mon, 16 Dec 2024 21:48:29 +0800
Subject: [PATCH 01/10] main
---
.../org/alan/exam/common/result/DecryptRequestBodyAdvice.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java b/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java
index 2e39e5f..61ecec9 100644
--- a/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java
+++ b/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java
@@ -15,7 +15,7 @@ import java.lang.reflect.Type;
/**
* @Author Alan
* @Version
- * @Date 2024/6/8 11:47 AM
+ * @Date 2024/6/8 11:47 AM111
*/
@ControllerAdvice
--
2.34.1
From 844711fec9b5b2e509ca6e9dbc14d667fb033460 Mon Sep 17 00:00:00 2001
From: fmy <2733603802@qq.com>
Date: Mon, 16 Dec 2024 21:50:58 +0800
Subject: [PATCH 02/10] main11
---
.../org/alan/exam/common/result/DecryptRequestBodyAdvice.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java b/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java
index 61ecec9..6264249 100644
--- a/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java
+++ b/src/main/java/cn/org/alan/exam/common/result/DecryptRequestBodyAdvice.java
@@ -14,7 +14,7 @@ import java.lang.reflect.Type;
/**
* @Author Alan
- * @Version
+ * @Version222
* @Date 2024/6/8 11:47 AM111
*/
--
2.34.1
From ffcd518bfdee93709c30314eaf4148bf5bd2f86e Mon Sep 17 00:00:00 2001
From: fmy <2733603802@qq.com>
Date: Mon, 16 Dec 2024 21:58:50 +0800
Subject: [PATCH 03/10] main112
---
.../java/cn/org/alan/exam/common/exception/AppException.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/cn/org/alan/exam/common/exception/AppException.java b/src/main/java/cn/org/alan/exam/common/exception/AppException.java
index 99abeb3..ea699a9 100644
--- a/src/main/java/cn/org/alan/exam/common/exception/AppException.java
+++ b/src/main/java/cn/org/alan/exam/common/exception/AppException.java
@@ -2,7 +2,7 @@ package cn.org.alan.exam.common.exception;
/**
* @Author WeiJin
- * @Version 1.0
+ * @Version 1.02222
* @Date 2024/3/29 21:06
*/
public class AppException extends RuntimeException{
--
2.34.1
From 593c5e0a378e6073f364643508d2572cea88e48f Mon Sep 17 00:00:00 2001
From: fmy <2733603802@qq.com>
Date: Mon, 16 Dec 2024 22:10:16 +0800
Subject: [PATCH 04/10] main1122
---
.../java/cn/org/alan/exam/common/exception/AppException.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/cn/org/alan/exam/common/exception/AppException.java b/src/main/java/cn/org/alan/exam/common/exception/AppException.java
index ea699a9..c457b96 100644
--- a/src/main/java/cn/org/alan/exam/common/exception/AppException.java
+++ b/src/main/java/cn/org/alan/exam/common/exception/AppException.java
@@ -2,7 +2,7 @@ package cn.org.alan.exam.common.exception;
/**
* @Author WeiJin
- * @Version 1.02222
+ * @Version 1.022222
* @Date 2024/3/29 21:06
*/
public class AppException extends RuntimeException{
--
2.34.1
From a8361f16b1cd0c33149f6e581fe8273d7be8521a Mon Sep 17 00:00:00 2001
From: fmy <2733603802@qq.com>
Date: Wed, 18 Dec 2024 16:21:24 +0800
Subject: [PATCH 05/10] main1122
---
.../alan/exam/mapper/CertificateMapper.java | 19 +++-
.../exam/mapper/CertificateUserMapper.java | 27 ++---
.../org/alan/exam/mapper/ExamGradeMapper.java | 75 ++++++++-----
.../cn/org/alan/exam/mapper/ExamMapper.java | 64 +++++++----
.../alan/exam/mapper/ExamQuAnswerMapper.java | 49 ++++----
.../alan/exam/mapper/ExamQuestionMapper.java | 29 +++--
.../org/alan/exam/mapper/ExamRepoMapper.java | 21 +++-
.../exam/mapper/ExerciseRecordMapper.java | 25 +++--
.../alan/exam/mapper/GradeExerciseMapper.java | 25 +++--
.../cn/org/alan/exam/mapper/GradeMapper.java | 28 +++--
.../alan/exam/mapper/ManualScoreMapper.java | 34 +++---
.../alan/exam/mapper/NoticeGradeMapper.java | 35 ++++--
.../cn/org/alan/exam/mapper/NoticeMapper.java | 91 +++++++++++----
.../cn/org/alan/exam/mapper/OptionMapper.java | 67 ++++++-----
.../org/alan/exam/mapper/QuestionMapper.java | 106 ++++++++++++------
.../cn/org/alan/exam/mapper/RepoMapper.java | 53 +++++----
.../cn/org/alan/exam/mapper/RoleMapper.java | 26 +++--
.../cn/org/alan/exam/mapper/StatMapper.java | 45 ++++----
.../org/alan/exam/mapper/UserBookMapper.java | 51 ++++++---
.../mapper/UserDailyLoginDurationMapper.java | 31 +++--
.../exam/mapper/UserExamsScoreMapper.java | 85 ++++++++------
.../exam/mapper/UserExerciseRecordMapper.java | 18 ++-
.../cn/org/alan/exam/mapper/UserMapper.java | 64 +++++++----
23 files changed, 678 insertions(+), 390 deletions(-)
diff --git a/src/main/java/cn/org/alan/exam/mapper/CertificateMapper.java b/src/main/java/cn/org/alan/exam/mapper/CertificateMapper.java
index f6aab4b..d5174e3 100644
--- a/src/main/java/cn/org/alan/exam/mapper/CertificateMapper.java
+++ b/src/main/java/cn/org/alan/exam/mapper/CertificateMapper.java
@@ -1,16 +1,25 @@
package cn.org.alan.exam.mapper;
+// 指定当前类所在的包路径
import cn.org.alan.exam.model.entity.Certificate;
+// 导入Certificate实体类,代表证书的数据模型
import cn.org.alan.exam.model.form.CertificateForm;
+// 导入CertificateForm表单类,用于接收前端传递的表单数据
import cn.org.alan.exam.model.vo.certificate.MyCertificateVO;
+// 导入MyCertificateVO视图对象类,用于封装返回给前端的数据
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+// 导入MyBatis-Plus的BaseMapper接口,提供基本的CRUD操作
import com.baomidou.mybatisplus.core.metadata.IPage;
+// 导入IPage接口,用于分页查询
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+// 导入Page类,是IPage接口的一个实现,用于分页查询
import org.apache.ibatis.annotations.Param;
+// 导入Param注解,用于MyBatis方法参数注解,便于XML配置文件中引用
import org.springframework.stereotype.Repository;
+// 导入Repository注解,用于标识当前类是一个持久层(DAO层)的组件
import java.util.List;
-
+// 导入List接口,用于处理集合数据
/**
*
@@ -21,13 +30,19 @@ import java.util.List;
* @since 2024-03-21
*/
@Repository
+// 使用Repository注解,将当前接口标识为Spring管理的组件
public interface CertificateMapper extends BaseMapper {
+ // 声明CertificateMapper接口继承自BaseMapper,提供基本的证书数据操作
+ // 自定义查询方法,根据分页信息、用户ID、考试名称查询用户的证书信息,并返回Page对象
Page selectMyCertificate(Page myCertificateVOPage, Integer pageNum, Integer pageSize, Integer userId,String examName);
+ // 自定义统计方法,根据用户ID、证书名称、认证单位统计符合条件的证书数量
int countByCondition(Integer userId, String certificateName, String certificationUnit);
+ // 自定义分页查询方法,根据用户ID、证书名称、认证单位、偏移量、页面大小查询证书ID列表
List selectCertificateIdsPage(Integer userId, String certificateName, String certificationUnit, Integer offset,Integer pageSize);
+ // 自定义批量查询方法,根据证书ID列表批量查询证书信息
List batchSelectByIds(List missIds);
-}
+}
\ No newline at end of file
diff --git a/src/main/java/cn/org/alan/exam/mapper/CertificateUserMapper.java b/src/main/java/cn/org/alan/exam/mapper/CertificateUserMapper.java
index 46e9541..f6e151d 100644
--- a/src/main/java/cn/org/alan/exam/mapper/CertificateUserMapper.java
+++ b/src/main/java/cn/org/alan/exam/mapper/CertificateUserMapper.java
@@ -1,24 +1,25 @@
-package cn.org.alan.exam.mapper;
+package cn.org.alan.exam.mapper; // 指定当前接口所在的包路径
-import cn.org.alan.exam.model.entity.CertificateUser;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import cn.org.alan.exam.model.entity.CertificateUser; // 导入CertificateUser实体类,代表用户证书关联的数据模型
+import com.baomidou.mybatisplus.core.mapper.BaseMapper; // 导入MyBatis-Plus的BaseMapper接口,提供基本的CRUD操作
-import java.util.List;
+import java.util.List; // 导入List接口,用于处理集合数据
/**
*
- * Mapper 接口
+ * Mapper 接口,用于操作CertificateUser数据表
*
*
- * @author WeiJin
- * @since 2024-03-21
+ * @author WeiJin // 声明当前接口的作者
+ * @since 2024-03-21 // 声明当前接口自哪个版本开始可用
*/
-public interface CertificateUserMapper extends BaseMapper {
+public interface CertificateUserMapper extends BaseMapper { // 声明CertificateUserMapper接口继承自BaseMapper,提供基本的CertificateUser数据操作
/**
* 根据用户id列表批量删除用户的证书
- * @param userIds 用户id列表
- * @return 影响数据库记录数
- */
- Integer deleteByUserIds(List userIds);
-}
+ *
+ * @param userIds 用户id列表,是要删除证书的用户ID集合
+ * @return 影响数据库记录数,表示成功删除的记录条数
+ */ // 方法注释,描述方法的功能、参数和返回值
+ Integer deleteByUserIds(List userIds); // 自定义删除方法,根据用户ID列表批量删除证书用户关联记录
+}
\ No newline at end of file
diff --git a/src/main/java/cn/org/alan/exam/mapper/ExamGradeMapper.java b/src/main/java/cn/org/alan/exam/mapper/ExamGradeMapper.java
index 766215b..a1bd594 100644
--- a/src/main/java/cn/org/alan/exam/mapper/ExamGradeMapper.java
+++ b/src/main/java/cn/org/alan/exam/mapper/ExamGradeMapper.java
@@ -1,50 +1,71 @@
-package cn.org.alan.exam.mapper;
+package cn.org.alan.exam.mapper; // 指定当前接口所在的包路径
-import cn.org.alan.exam.model.entity.Exam;
-import cn.org.alan.exam.model.entity.ExamGrade;
-import cn.org.alan.exam.model.vo.exam.ExamGradeListVO;
-import cn.org.alan.exam.model.vo.score.GradeScoreVO;
-import cn.org.alan.exam.model.vo.stat.GradeExamVO;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import org.apache.ibatis.annotations.Param;
+import cn.org.alan.exam.model.entity.Exam; // 导入Exam实体类(本接口未直接使用,可能是遗留或用于其他目的)
+import cn.org.alan.exam.model.entity.ExamGrade; // 导入ExamGrade实体类,代表考试与班级的关联数据模型
+import cn.org.alan.exam.model.vo.exam.ExamGradeListVO; // 导入ExamGradeListVO视图对象类,用于封装考试班级列表的数据
+import cn.org.alan.exam.model.vo.score.GradeScoreVO; // 导入GradeScoreVO视图对象类,用于封装班级分数的数据
+import cn.org.alan.exam.model.vo.stat.GradeExamVO; // 导入GradeExamVO视图对象类(本接口未直接使用,可能是遗留或用于其他目的)
+import com.baomidou.mybatisplus.core.mapper.BaseMapper; // 导入MyBatis-Plus的BaseMapper接口,提供基本的CRUD操作
+import com.baomidou.mybatisplus.core.metadata.IPage; // 导入IPage接口,用于分页查询
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page; // 导入Page类(本接口未直接使用,IPage的实现类,但通常不直接引用)
+import org.apache.ibatis.annotations.Param; // 导入Param注解,用于MyBatis方法参数注解
-import java.util.List;
+import java.util.List; // 导入List接口,用于处理集合数据
/**
*
- * Mapper 接口
+ * Mapper 接口,用于操作ExamGrade数据表
*
*
- * @author WeiJin
- * @since 2024-03-21
+ * @author WeiJin // 声明当前接口的作者
+ * @since 2024-03-21 // 声明当前接口自哪个版本开始可用
*/
-public interface ExamGradeMapper extends BaseMapper {
+public interface ExamGradeMapper extends BaseMapper { // 声明ExamGradeMapper接口继承自BaseMapper,提供基本的ExamGrade数据操作
+ // 自定义方法,为指定考试ID添加多个班级ID的关联记录
Integer addExamGrade(Integer id, List gradeIds);
+ // 自定义方法,根据考试ID删除考试与班级的关联记录
Integer delExamGrade(Integer id);
/**
* 分页获取考试班级用户信息
- * @param page
- * @param roleId
- * @return
+ *
+ * @param page 分页对象,包含分页信息和结果集
+ * @param examTitle 考试标题,用于筛选符合条件的考试
+ * @param userId 用户ID,用于筛选用户相关的考试班级信息(可能用于权限控制或数据筛选)
+ * @param gradeId 班级ID,用于筛选特定班级的考试信息
+ * @param roleId 角色ID,用于筛选特定角色的用户考试信息(可能用于权限控制或数据筛选)
+ * @return 分页对象,包含筛选后的考试班级用户信息
*/
- IPage getExamGrade(IPage page,String examTitle,Integer userId,Integer gradeId,Integer roleId);
-
+ IPage getExamGrade(IPage page, String examTitle, Integer userId, Integer gradeId, Integer roleId);
/**
- * 根据开始id获取所有需要参加该考试的人数
- * @param id 考试id
- * @return 人数
+ * 根据考试ID获取所有需要参加该考试的人数
+ *
+ * @param id 考试ID
+ * @return 参加该考试的人数
*/
Integer selectClassSize(Integer id);
+ /**
+ * 分页查询用户参与的考试班级信息
+ *
+ * @param examPage 分页对象,包含分页信息和结果集
+ * @param userId 用户ID,用于筛选用户参与的考试班级信息
+ * @param title 考试标题,用于筛选符合条件的考试班级信息
+ * @return 分页对象,包含筛选后的用户参与的考试班级信息
+ */
+ IPage selectClassExam(IPage examPage, Integer userId, String title);
- IPage selectClassExam(IPage examPage, Integer userId,String title);
-
- IPage selectAdminClassExam(IPage examPage, Integer userId,String title);
+ /**
+ * 分页查询管理员视角下的考试班级信息
+ *
+ * @param examPage 分页对象,包含分页信息和结果集
+ * @param userId 管理员ID,用于标识查询的管理员(可能用于权限控制或数据筛选)
+ * @param title 考试标题,用于筛选符合条件的考试班级信息
+ * @return 分页对象,包含筛选后的管理员视角下的考试班级信息
+ */
+ IPage selectAdminClassExam(IPage examPage, Integer userId, String title);
-}
+}
\ No newline at end of file
diff --git a/src/main/java/cn/org/alan/exam/mapper/ExamMapper.java b/src/main/java/cn/org/alan/exam/mapper/ExamMapper.java
index 4959f4b..59155f7 100644
--- a/src/main/java/cn/org/alan/exam/mapper/ExamMapper.java
+++ b/src/main/java/cn/org/alan/exam/mapper/ExamMapper.java
@@ -1,49 +1,65 @@
-package cn.org.alan.exam.mapper;
+package cn.org.alan.exam.mapper; // 指定当前接口所在的包路径
-import cn.org.alan.exam.model.entity.Exam;
-import cn.org.alan.exam.model.vo.answer.AnswerExamVO;
-import cn.org.alan.exam.model.vo.record.ExamRecordVO;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import org.apache.ibatis.annotations.Param;
-import org.springframework.stereotype.Repository;
+import cn.org.alan.exam.model.entity.Exam; // 导入Exam实体类,代表考试数据模型
+import cn.org.alan.exam.model.vo.answer.AnswerExamVO; // 导入AnswerExamVO视图对象类,用于封装考试答题相关的数据
+import cn.org.alan.exam.model.vo.record.ExamRecordVO; // 导入ExamRecordVO视图对象类,用于封装考试记录相关的数据
+import com.baomidou.mybatisplus.core.mapper.BaseMapper; // 导入MyBatis-Plus的BaseMapper接口,提供基本的CRUD操作
+import com.baomidou.mybatisplus.core.metadata.IPage; // 导入IPage接口,用于分页查询
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page; // 导入Page类,是IPage接口的一个实现,用于分页查询的具体实现
+import org.apache.ibatis.annotations.Param; // 导入Param注解,用于MyBatis方法参数注解
+import org.springframework.stereotype.Repository; // 导入Repository注解(本接口未直接使用,通常用于标注数据访问层组件)
-import java.util.List;
+import java.util.List; // 导入List接口,用于处理集合数据
/**
- * Mapper 接口
+ * Mapper 接口,用于操作Exam数据表
*
- * @author Alan
- * @since 2024-03-21
+ * @author Alan // 声明当前接口的作者
+ * @since 2024-03-21 // 声明当前接口自哪个版本开始可用
*/
+@Repository // 注解通常用于标注数据访问层组件,但Mapper接口一般通过MyBatis框架扫描,不需要显式添加
+public interface ExamMapper extends BaseMapper { // 声明ExamMapper接口继承自BaseMapper,提供基本的Exam数据操作
-public interface ExamMapper extends BaseMapper {
-
+ // 自定义方法,根据考试ID列表删除多个考试记录
int deleteExams(List examIds);
+ // 自定义方法,根据考试ID列表删除多个考试与班级的关联记录(可能是业务逻辑上的关联,不一定直接对应数据库表)
int deleteExamGrades(List examIds);
+ // 自定义方法,根据考试ID列表删除多个考试资源(如试题、答案等)
int deleteExamRepos(List examIds);
+ // 自定义方法,根据考试ID列表删除多个考试与试题的关联记录
int deleteExamQuestions(List examIds);
/**
* 删除用户创建的考试
*
- * @param userIds 用户id列表
- * @return 影响数据库记录数
+ * @param userIds 用户ID列表,用于标识需要删除考试的用户
+ * @return 影响数据库记录数,表示成功删除的考试数量
*/
Integer deleteByUserIds(List userIds);
-
/**
- * 获取自己创建的考试,考试id,考试考试标题,是否需要阅卷
+ * 分页查询用户创建的考试列表,包含考试ID、考试标题以及是否需要阅卷的信息
*
- * @param userId
- * @return
+ * @param page 分页对象,包含分页信息和结果集类型
+ * @param userId 用户ID,用于筛选该用户创建的考试
+ * @param role 用户角色,可能用于权限控制或数据筛选
+ * @param examName 考试名称,用于模糊查询考试标题
+ * @return 分页对象,包含筛选后的考试列表信息
*/
- IPage selectMarkedList(@Param("page") IPage page, @Param("userId") Integer userId,String role,String examName);
+ IPage selectMarkedList(@Param("page") IPage page, @Param("userId") Integer userId, String role, String examName);
- Page getExamRecordPage(Page examPage, Integer userId,String examName);
-}
+ /**
+ * 分页查询用户的考试记录
+ *
+ * @param examPage 分页对象,包含分页信息和结果集类型(这里使用Page作为具体实现)
+ * @param userId 用户ID,用于筛选该用户的考试记录
+ * @param examName 考试名称,用于模糊查询考试记录中的考试标题
+ * @return 分页对象,包含筛选后的考试记录信息
+ */
+ Page getExamRecordPage(Page examPage, Integer userId, String examName);
+ // 注意:在实际使用中,通常建议统一使用IPage接口作为分页对象的类型,以避免具体实现类的依赖。
+ // 如果MyBatis-Plus的版本或配置允许,可以考虑将getExamRecordPage方法的参数和返回值类型改为IPage。
+}
\ No newline at end of file
diff --git a/src/main/java/cn/org/alan/exam/mapper/ExamQuAnswerMapper.java b/src/main/java/cn/org/alan/exam/mapper/ExamQuAnswerMapper.java
index 5bcee1b..9997691 100644
--- a/src/main/java/cn/org/alan/exam/mapper/ExamQuAnswerMapper.java
+++ b/src/main/java/cn/org/alan/exam/mapper/ExamQuAnswerMapper.java
@@ -1,45 +1,46 @@
-package cn.org.alan.exam.mapper;
+package cn.org.alan.exam.mapper; // 指定当前接口所在的包路径
-import cn.org.alan.exam.model.entity.ExamQuAnswer;
-import cn.org.alan.exam.model.vo.answer.UserAnswerDetailVO;
-import cn.org.alan.exam.model.vo.exam.ExamQuAnswerExtVO;
-import cn.org.alan.exam.model.vo.score.QuestionAnalyseVO;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import cn.org.alan.exam.model.entity.ExamQuAnswer; // 导入ExamQuAnswer实体类,代表考试问题回答的数据模型
+import cn.org.alan.exam.model.vo.answer.UserAnswerDetailVO; // 导入UserAnswerDetailVO视图对象类,用于封装用户回答主观题的信息
+import cn.org.alan.exam.model.vo.exam.ExamQuAnswerExtVO; // 导入ExamQuAnswerExtVO视图对象类,用于扩展封装考试问题回答的信息
+import cn.org.alan.exam.model.vo.score.QuestionAnalyseVO; // 导入QuestionAnalyseVO视图对象类,用于封装试题分析的信息
+import com.baomidou.mybatisplus.core.mapper.BaseMapper; // 导入MyBatis-Plus的BaseMapper接口,提供基本的CRUD操作
-import java.util.List;
+import java.util.List; // 导入List接口,用于处理集合数据
/**
*
- * Mapper 接口
+ * Mapper 接口,用于操作ExamQuAnswer数据表
*
*
- * @author WeiJin
- * @since 2024-03-21
+ * @author WeiJin // 声明当前接口的作者
+ * @since 2024-03-21 // 声明当前接口自哪个版本开始可用
*/
-public interface ExamQuAnswerMapper extends BaseMapper {
+public interface ExamQuAnswerMapper extends BaseMapper { // 声明ExamQuAnswerMapper接口继承自BaseMapper,提供基本的ExamQuAnswer数据操作
- List list(String examId, String questionId);
+ // 自定义方法,根据考试ID和试题ID列表查询考试问题回答信息(扩展信息)
+ List list(String examId, String questionId); // 注意:这里的参数类型通常为Integer,除非有特定原因使用String
/**
* 获取单题作答信息
- * @param examId 考试id
- * @param questionId 试题id
- * @return 查询结果
+ * @param examId 考试ID,用于标识需要查询作答信息的考试
+ * @param questionId 试题ID,用于标识需要查询作答信息的试题
+ * @return 查询结果,包含试题作答的详细信息,封装在QuestionAnalyseVO对象中
*/
- QuestionAnalyseVO questionAnalyse(Integer examId, Integer questionId);
+ QuestionAnalyseVO questionAnalyse(Integer examId, Integer questionId); // 根据考试ID和试题ID查询试题作答分析信息
/**
* 删除用户考试作答记录
- * @param userIds 用户id列表
- * @return 影响记录数
+ * @param userIds 用户ID列表,用于标识需要删除作答记录的用户
+ * @return 影响记录数,表示成功删除的作答记录数量
*/
- Integer deleteByUserIds(List userIds);
+ Integer deleteByUserIds(List userIds); // 根据用户ID列表删除对应的考试作答记录
/**
* 获取用户回答主观题信息
- * @param userId 用户id
- * @param examId 考试id
- * @return 结果集
+ * @param userId 用户ID,用于标识需要查询作答信息的用户
+ * @param examId 考试ID,用于标识需要查询作答信息的考试
+ * @return 结果集,包含用户回答主观题的详细信息,封装在List中
*/
- List selectUserAnswer(Integer userId, Integer examId);
-}
+ List selectUserAnswer(Integer userId, Integer examId); // 根据用户ID和考试ID查询用户回答主观题的信息
+}
\ No newline at end of file
diff --git a/src/main/java/cn/org/alan/exam/mapper/ExamQuestionMapper.java b/src/main/java/cn/org/alan/exam/mapper/ExamQuestionMapper.java
index 7d9ec34..75ef3be 100644
--- a/src/main/java/cn/org/alan/exam/mapper/ExamQuestionMapper.java
+++ b/src/main/java/cn/org/alan/exam/mapper/ExamQuestionMapper.java
@@ -1,16 +1,25 @@
-package cn.org.alan.exam.mapper;
+package cn.org.alan.exam.mapper; // 指定当前接口所在的包路径
-import cn.org.alan.exam.model.entity.ExamQuestion;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import cn.org.alan.exam.model.entity.ExamQuestion; // 导入ExamQuestion实体类,该类代表考试题目的数据模型
+import com.baomidou.mybatisplus.core.mapper.BaseMapper; // 导入MyBatis-Plus的BaseMapper接口,提供基本的CRUD操作
-import java.util.List;
-import java.util.Map;
+import java.util.List; // 导入List接口,用于处理集合数据
+import java.util.Map; // 导入Map接口,用于存储键值对数据
/**
- * @Author Alan
- * @Version
- * @Date 2024/4/7 3:49 PM
+ * @Author Alan // 声明当前接口的作者
+ * @Version // 版本信息缺失,通常这里会指定接口的版本号或者留空
+ * @Date 2024/4/7 3:49 PM // 声明当前接口的创建日期和时间
*/
-public interface ExamQuestionMapper extends BaseMapper {
+public interface ExamQuestionMapper extends BaseMapper { // 声明ExamQuestionMapper接口继承自BaseMapper,提供基本的ExamQuestion数据操作
+
+ // 自定义方法,用于插入考试题目信息
+ // 参数说明:
+ // examId - 考试ID,用于标识需要插入题目的考试
+ // quType - 题目类型,用于区分不同类型的题目(如单选题、多选题、判断题等)
+ // quScore - 题目分数,表示该题目的分值
+ // questionIdsAndSorts - 题目ID和排序的列表,其中每个Map对象包含题目ID(作为键)和对应的排序值(作为值)
int insertQuestion(Integer examId, Integer quType, Integer quScore, List