From cc057177b2fb17aee9a173a6adbabdc578fd74c7 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 10:30:44 +0800
Subject: [PATCH] 1.许可
---
src/main/java/org/springblade/modules/exam/mapper/ExamPaperMapper.xml | 215 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 209 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/springblade/modules/exam/mapper/ExamPaperMapper.xml b/src/main/java/org/springblade/modules/exam/mapper/ExamPaperMapper.xml
index 392f98d..b9b1948 100644
--- a/src/main/java/org/springblade/modules/exam/mapper/ExamPaperMapper.xml
+++ b/src/main/java/org/springblade/modules/exam/mapper/ExamPaperMapper.xml
@@ -5,9 +5,11 @@
<resultMap id="PagerSubject" type="org.springblade.modules.exam.vo.ExamPaperSubjectVO"
autoMapping="true">
<id property="id" column="id"/>
- <collection property="examExaminationSubjects" javaType="java.util.List" ofType="org.springblade.modules.exam.entity.ExamExaminationSubject" autoMapping="true">
+ <collection property="examExaminationSubjects" javaType="java.util.List"
+ ofType="org.springblade.modules.exam.entity.ExamExaminationSubject" autoMapping="true">
<id property="id" column="tid"/>
- <association property="examSubjectChoices" javaType="org.springblade.modules.exam.entity.ExamSubjectChoices" resultMap="brakesResult" autoMapping="true">
+ <association property="examSubjectChoices" javaType="org.springblade.modules.exam.entity.ExamSubjectChoices"
+ resultMap="brakesResult" autoMapping="true">
</association>
</collection>
</resultMap>
@@ -15,9 +17,11 @@
<resultMap id="PagerSubjectAnswer" type="org.springblade.modules.exam.vo.ExamPaperSubjectVO"
autoMapping="true">
<id property="id" column="id"/>
- <collection property="examExaminationSubjects" javaType="java.util.List" ofType="org.springblade.modules.exam.entity.ExamExaminationSubject" autoMapping="true">
+ <collection property="examExaminationSubjects" javaType="java.util.List"
+ ofType="org.springblade.modules.exam.entity.ExamExaminationSubject" autoMapping="true">
<id property="id" column="tid"/>
- <association property="examSubjectChoices" javaType="org.springblade.modules.exam.entity.ExamSubjectChoices" autoMapping="true">
+ <association property="examSubjectChoices" javaType="org.springblade.modules.exam.entity.ExamSubjectChoices"
+ autoMapping="true">
<id property="id" column="sid"/>
</association>
</collection>
@@ -29,6 +33,24 @@
<id property="subjectName" column="subject_name"/>
<id property="choicesType" column="choices_type"/>
<id property="score" column="score"/>
+ <id property="analysis" column="analysis"/>
+ <id property="level" column="level"/>
+ <id property="creator" column="creator"/>
+ <id property="createDate" column="create_date"/>
+ <id property="modifier" column="modifier"/>
+ <id property="modifyDate" column="modify_date"/>
+ <id property="delFlag" column="del_flag"/>
+ <id property="applicationCode" column="application_code"/>
+ <id property="tenantCode" column="tenant_code"/>
+ </resultMap>
+
+ <resultMap id="RandomResult" type="org.springblade.modules.exam.vo.ExamSubjectChoicesVO">
+ <id property="id" column="id"/>
+ <id property="categoryId" column="category_id"/>
+ <id property="subjectName" column="subject_name"/>
+ <id property="choicesType" column="choices_type"/>
+ <id property="score" column="score"/>
+ <id property="answer" column=""/>
<id property="analysis" column="analysis"/>
<id property="level" column="level"/>
<id property="creator" column="creator"/>
@@ -52,8 +74,45 @@
WHERE
1 = 1
<if test="paper.id !=null">
- and sj.id = #{paper.id}
+ and sj.id = #{paper.id}
</if>
+ </select>
+
+ <select id="queryRandomSubject" resultMap="RandomResult" >
+ SELECT * FROM ( SELECT * FROM exam_subject_choices WHERE choices_type = 0 ORDER BY RAND( ) LIMIT 25 ) a UNION ALL
+ SELECT * FROM ( SELECT * FROM exam_subject_choices WHERE choices_type = 1 ORDER BY RAND( ) LIMIT 10 ) b UNION ALL
+ SELECT * FROM ( SELECT * FROM exam_subject_choices WHERE choices_type = 2 ORDER BY RAND( ) LIMIT 20 ) c UNION ALL
+ SELECT * FROM ( SELECT * FROM exam_subject_choices WHERE choices_type = 3 ORDER BY RAND( ) LIMIT 5 ) d
+ </select>
+
+ <select id="selectExamPaperPages" resultType="org.springblade.modules.exam.vo.ExamPaperVO">
+ SELECT
+ *
+ FROM
+ (SELECT
+ sj.*,
+ ( SELECT CASE WHEN COUNT ( * ) > 0 THEN 1 ELSE 0 END FROM sys_apply WHERE user_id = 11 ) AS show
+ FROM
+ ksxt_exam sj ) as s
+ WHERE
+ show = 1
+ </select>
+
+
+ <select id="selectExamPaperPage" resultType="org.springblade.modules.exam.vo.ExamPaperVO">
+ SELECT
+ *
+ FROM
+ ksxt_exam
+ where
+ 1=1
+ <if test="paper.examType!=null and paper.examType!=''">
+ and exam_type = #{paper.examType}
+ </if>
+ <if test="paper.examName!=null and paper.examName!=''">
+ and exam_name = #{paper.examName}
+ </if>
+ order by start_time desc
</select>
<select id="PagerSubject" resultMap="PagerSubjectAnswer">
@@ -68,7 +127,7 @@
WHERE
1 = 1
<if test="paper.id !=null">
- and sj.id = #{paper.id}
+ and sj.id = #{paper.id}
</if>
</select>
@@ -80,10 +139,154 @@
<if test="paper.examName!=null and paper.examName!=''">
and exam_name like concat('%', #{paper.examName},'%')
</if>
+ <if test="paper.examType!=null">
+ and exam_type = #{paper.examType}
+ </if>
</select>
<delete id="UnbindSubject">
delete from exam_examination_subject where examination_id = #{paperid} and subject_id = #{subjectid}
</delete>
+ <!--查询考试人员考试信息-->
+ <select id="getExamDetail" resultType="org.springblade.modules.exam.vo.ExamPaperVO">
+ (select
+ ke.id,ke.exam_name examName,ke.start_time startTime,ke.end_time endTime,ke.exam_type examType,
+ sa.candidate_no candidateNo,sa.id applyId,
+ bu.real_name realName,bu.sex,bu.cardid idCardNo
+ from
+ ksxt_exam ke
+ left join
+ sys_apply sa
+ on
+ sa.exam_id = ke.id
+ left join
+ blade_user bu
+ on
+ bu.id = sa.user_id
+ where sa.user_id = #{userId}
+ and is_apply = 1
+ and is_exam = 1
+ and sa.apply_status = 2
+ )
+
+ union all
+
+ (select
+ ke.id,ke.exam_name examName,ke.start_time startTime,ke.end_time endTime,ke.exam_type examType,
+ str.candidate_no candidateNo,str.id applyId,
+ bu.real_name realName,bu.sex,bu.cardid idCardNo
+ from
+ ksxt_exam ke
+ left join
+ sys_training_registration str
+ on
+ str.train_exam_id = ke.id
+ left join
+ blade_user bu
+ on
+ bu.id = str.user_id
+ where str.user_id = #{userId}
+ and bu.is_train = 1
+ and is_exam = 1
+ and ke.audit_status = 1
+ and str.cancel = 1
+ and str.audit_status = 1
+ )
+ </select>
+
+ <!--查询前缀相同的准考证数量-->
+ <select id="getCandidateNoCount" resultType="java.lang.Integer">
+ select count(*) from sys_training_registration
+ where 1=1
+ <if test="result!=null and result!=''">
+ and candidate_no like concat('%', #{result},'%')
+ </if>
+ </select>
+
+ <!--查询当前考试已报名的人员培训报名数据集合-->
+ <select id="getTrainList" resultType="org.springblade.modules.training.entity.TrainingRegistration">
+ SELECT
+ str.id
+ FROM
+ sys_training_registration str
+ left join
+ ksxt_exam ke
+ on
+ ke.id = str.train_exam_id
+ left join
+ blade_user bu
+ on
+ bu.id = str.user_id
+ where 1=1
+ and bu.is_train = 1
+ and str.is_exam = 1
+ and str.cancel = 1
+ </select>
+
+ <!--使用考试名称匹配考试信息-->
+ <select id="getExamInfoByExamName" resultType="org.springblade.modules.exam.entity.ExamPaper">
+ SELECT
+ *
+ FROM
+ ksxt_exam
+ where exam_name like concat('%', #{examName},'%')
+ </select>
+
+ <!--查询当前考试的报名人员数量-->
+ <select id="getApplyNumber" resultType="java.lang.Integer">
+ select sum(a) from(
+ select count(*) a from sys_apply
+ where
+ exam_id = #{examPaper.id}
+ union all
+ (
+ select count(*) a from sys_training_registration
+ where
+ train_exam_id = #{examPaper.id}
+ )
+ ) c
+ </select>
+
+ <!--查询当前考试的报名人员数量,模拟考试-->
+ <select id="getTrainNumber" resultType="java.lang.Integer">
+ select count(*) from sys_training_registration
+ where
+ train_exam_id = #{examPaper.id}
+ and cancel = 1
+ </select>
+
+ <!--根据用户id查询报名信息-->
+ <select id="getApplyDetail" resultType="org.springblade.modules.apply.entity.Apply">
+ (select
+ sa.id as id
+ from
+ sys_apply sa
+ left join
+ blade_user bu
+ on
+ bu.id = sa.user_id
+ where sa.user_id = #{userId}
+ and is_apply = 1
+ and is_exam = 1
+ and sa.apply_status = 2
+ )
+
+ union all
+
+ (select
+ str.id as id
+ from
+ sys_training_registration str
+ left join
+ blade_user bu
+ on
+ bu.id = str.user_id
+ where str.user_id = #{userId}
+ and bu.is_train = 1
+ and is_exam = 1
+ and str.cancel = 1
+ )
+ </select>
+
</mapper>
--
Gitblit v1.9.3