xiangpei
2024-06-25 25fb8f6f2580a618ea84bcb30ae108ab2fa3c205
考试查询增加状态,开始考试校验考试状态
3个文件已修改
18 ■■■■ 已修改文件
src/main/java/com/ycl/jxkg/domain/query/ExamQuery.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/service/impl/ExamServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/ExamMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/domain/query/ExamQuery.java
@@ -25,5 +25,8 @@
    /** 班级 */
    private Integer classesId;
    /** 状态 */
    private String status;
}
src/main/java/com/ycl/jxkg/service/impl/ExamServiceImpl.java
@@ -146,6 +146,12 @@
        if (Objects.isNull(exam.getExamPaperId())) {
            throw new RuntimeException("考试未绑定试卷");
        }
        if (ExamStatusEnum.NOT_START.equals(exam.getStatus())) {
            throw new RuntimeException("考试还未开始");
        }
        if (ExamStatusEnum.FINISHED.equals(exam.getStatus())) {
            throw new RuntimeException("考试已经结束");
        }
        // 查出考试试卷
        ExamPaper examPaper = examPaperMapper.selectById(exam.getExamPaperId());
        if (Objects.isNull(examPaper)) {
src/main/resources/mapper/ExamMapper.xml
@@ -85,7 +85,7 @@
            TE.exam_paper_type,
            TE.exam_place,
            TE.status,
            IF(TE.status != 'not_start', IF(TE.status == 'ing', 1, 2), 0) as orderc,
            IF(TE.status != 'not_start', IF(TE.status = 'ing', 2, 1), 0) as orderc,
            TE.start_time,
            TE.end_time,
            TE.create_time,
@@ -95,7 +95,7 @@
            TEP.name
        FROM
            t_exam TE
        INNER JOIN t_classes TC ON TC.id = TE.classes_id AND TC.deleted = 0
        INNER JOIN t_classes TC ON TC.id = TE.classes_id AND TC.deleted = 0 AND TC.status = 'normal'
        INNER JOIN t_classes_user TCU ON TC.id = TCU.classes_id AND TC.deleted = 0 AND TCU.user_id = #{userId}
        INNER JOIN t_exam_paper TEP ON TEP.id = TE.exam_paper_id AND TEP.deleted = 0
        WHERE
@@ -103,7 +103,10 @@
            <if test="query.examName != null and query.examName != ''">
                AND TE.exam_name like concat('%', #{query.examName}, '%')
            </if>
        ORDER BY orderc DESC
            <if test="query.status != null and query.status != ''">
                AND TE.status = #{query.status}
            </if>
        ORDER BY orderc, TE.create_time DESC
    </select>
</mapper>