From 2fe81eab1b653ffd19da3c1876e201d9a10ed6f7 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Sat, 08 Jan 2022 16:33:09 +0800
Subject: [PATCH] 1.登录记录新增修改,页面刷新token 不能算入 2.登录统计接口新增,统计明细查询接口新增
---
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml | 143 ++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 121 insertions(+), 22 deletions(-)
diff --git a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
index 9645a24..40af7e9 100644
--- a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
+++ b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
@@ -64,7 +64,7 @@
</select>
- <!--考试成绩分页信息-模拟考试-->
+ <!--考试成绩分页信息-培训考试-->
<select id="selectTrainExamScorePage" resultType="org.springblade.modules.exam.vo.ExamScoreVO">
SELECT
es.id,es.theory_grade theoryGrade,ifnull(learn_grade,-1) learnGrade,es.user_id userId,es.exam_id examId,
@@ -72,7 +72,8 @@
ke.exam_name examName,
str.is_exam isExam,
bu.real_name securityName,company,bu.account,bu.sex,bu.paper_time paperTime,bu.securitynumber securityNumber,bu.avatar,
- bd.dept_name companyName from
+ bd.dept_name companyName,bu.user_type isPaper
+ from
exam_score es
left join
ksxt_exam ke
@@ -120,6 +121,15 @@
<if test="examScore.examType!=null and examScore.examType!=''">
and ke.exam_type = #{examScore.examType}
</if>
+ <if test="examScore.examType!=null and examScore.examType!=''">
+ and ke.exam_type = #{examScore.examType}
+ </if>
+ <if test="examScore.isPaper==6">
+ and bu.user_type = #{examScore.isPaper}
+ </if>
+ <if test="examScore.isPaper==7">
+ and (bu.user_type = #{examScore.isPaper} or bu.user_type is null)
+ </if>
<if test="examScore.isAvatar==1">
and bu.avatar is not null and bu.avatar!=""
</if>
@@ -135,7 +145,12 @@
<if test="examScore.examDate!=null and examScore.examDate!=''">
and date_format(ke.start_time,'%Y-%m-%d') = #{examScore.examDate}
</if>
- order by es.id desc
+ <if test="examScore.sortName!=null and examScore.sortName!=''">
+ ORDER BY es.${examScore.sortName} ${examScore.sort},es.id desc
+ </if>
+ <if test="examScore.sortName==null or examScore.sortName==''">
+ order by es.id desc
+ </if>
</select>
<!--考试成绩详情信息-->
@@ -275,30 +290,35 @@
exam.*,
user.jurisdiction,
user.real_name securityName,
- ke.exam_name examName
+ ke.exam_name examName,sis.enterpriseName trainingUnitName,ke.start_time examStartTime
FROM
exam_score exam
- LEFT JOIN blade_user user
- ON exam.user_id = user.id
- left join
- sys_information si
- on
- si.departmentid = user.dept_id
- left join
- sys_jurisdiction sj
- on
- sj.id = si.jurisdiction
- left join
- ksxt_exam ke
- on
- exam.exam_id = ke.id
+ left join blade_user user on exam.user_id = user.id
+ left join sys_information si on si.departmentid = user.dept_id
+ left join sys_jurisdiction sj on sj.id = si.jurisdiction
+ left join ksxt_exam ke on exam.exam_id = ke.id
+ left join sys_training_registration str on str.id = exam.apply_id
+ left join sys_information sis on sis.departmentid = str.training_unit_id
WHERE
1 = 1
- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and (sj.id = #{jurisdiction} or sj.parent_id = #{jurisdiction})
+ and ke.exam_type = 2
+ <if test="examScore.jurisdiction!=null and examScore.jurisdiction!='' and examScore.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{examScore.jurisdiction} or sj.parent_id = #{examScore.jurisdiction})
</if>
- <if test="deptid!=null and deptid!=''">
- AND user.dept_id = #{deptid}
+ <if test="examScore.securityName!=null and examScore.securityName!=''">
+ AND user.real_name like concat('%',#{examScore.securityName},'%')
+ </if>
+ <if test="examScore.trainingUnitName!=null and examScore.trainingUnitName!=''">
+ AND sis.enterpriseName like concat('%',#{examScore.trainingUnitName},'%')
+ </if>
+ <if test="examScore.deptId!=null and examScore.deptId!=''">
+ AND user.dept_id = #{examScore.deptId}
+ </if>
+ <if test="examScore.month!=null and examScore.month!=''">
+ AND date_format(ke.start_time,'%Y-%m') = #{examScore.month}
+ </if>
+ <if test="examScore.qualified!=null">
+ AND exam.qualified = #{examScore.qualified}
</if>
</select>
@@ -368,6 +388,12 @@
<if test="examScore.securityName!=null and examScore.securityName!=''">
and bu.real_name like concat('%', #{examScore.securityName},'%')
</if>
+ <if test="examScore.isPaper==6">
+ and bu.user_type = #{examScore.isPaper}
+ </if>
+ <if test="examScore.isPaper==7">
+ and (bu.user_type = #{examScore.isPaper} or bu.user_type is null)
+ </if>
<if test="examScore.account!=null and examScore.account!=''">
and bu.account like concat('%', #{examScore.account},'%')
</if>
@@ -404,5 +430,78 @@
order by es.id desc
</select>
+ <!--导出-按条件查询成绩数据-模拟考试-->
+ <select id="getExamStatisInfo" resultType="org.springblade.modules.exam.vo.ExamSocreStatis">
+ select m.id name, IFNULL(b,0) hgnum,IFNULL(c,0) bhgnum from
+ (
+ select 1 as id union
+ select 2 union
+ select 3 union
+ select 4 union
+ select 5 union
+ select 6 union
+ select 7 union
+ select 8 union
+ select 9 union
+ select 10 union
+ select 11 union
+ select 12
+ ) m
+ left join
+ (
+ SELECT MONTH
+ ( ke.start_time ) a,
+ count(*) b
+ FROM
+ exam_score es
+ left join sys_training_registration str on str.id = es.apply_id
+ left join ksxt_exam ke on ke.id = es.exam_id
+ left join blade_user bu on bu.id = es.user_id
+ left join blade_dept bd on bd.id = bu.dept_id
+ left join sys_information si on bd.id = si.departmentid
+ left join sys_jurisdiction sj on si.jurisdiction = sj.id
+ WHERE
+ qualified = 0
+ and training_unit_id = #{information.departmentid}
+ and YEAR ( ke.start_time ) = YEAR ( now() )
+ <if test="information.deptid!=null and information.deptid!=''">
+ and bu.dept_id = #{information.deptid}
+ </if>
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
+ </if>
+ GROUP BY
+ MONTH ( ke.start_time )
+ ) n ON m.id = n.a
+ left join
+ (
+ SELECT MONTH
+ ( ke.start_time ) a,
+ count(*) c
+ FROM
+ exam_score es
+ left join sys_training_registration str on str.id = es.apply_id
+ left join ksxt_exam ke on ke.id = es.exam_id
+ left join blade_user bu on bu.id = es.user_id
+ left join blade_dept bd on bd.id = bu.dept_id
+ left join sys_information si on bd.id = si.departmentid
+ left join sys_jurisdiction sj on si.jurisdiction = sj.id
+ WHERE
+ qualified = 1
+ and training_unit_id = #{information.departmentid}
+ and YEAR ( ke.start_time ) = YEAR ( now() )
+ <if test="information.deptid!=null and information.deptid!=''">
+ and bu.dept_id = #{information.deptid}
+ </if>
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
+ </if>
+ GROUP BY
+ MONTH ( ke.start_time )
+ ) i ON m.id = i.a
+ ORDER BY
+ id
+ </select>
+
</mapper>
--
Gitblit v1.9.3