From 62eb499b0c969f246d3245d1429a97da4de1ce28 Mon Sep 17 00:00:00 2001
From: 钟日健 <arsn163@163.com>
Date: Mon, 01 Jun 2026 20:46:13 +0800
Subject: [PATCH] feat: 成绩查询增加年龄查询返回
---
src/main/java/org/springblade/modules/signinrecords/mapper/SignInRecordsMapper.xml | 107 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 107 insertions(+), 0 deletions(-)
diff --git a/src/main/java/org/springblade/modules/signinrecords/mapper/SignInRecordsMapper.xml b/src/main/java/org/springblade/modules/signinrecords/mapper/SignInRecordsMapper.xml
index 89d853e..e67b2e0 100644
--- a/src/main/java/org/springblade/modules/signinrecords/mapper/SignInRecordsMapper.xml
+++ b/src/main/java/org/springblade/modules/signinrecords/mapper/SignInRecordsMapper.xml
@@ -41,4 +41,111 @@
order by ssir.id desc
</select>
+
+ <select id="getSignStatisticsPie" resultType="org.springblade.modules.signinrecords.vo.SignStatistics">
+ SELECT
+ basic.shouldNum,basic.realNum,(basic.shouldNum-basic.realNum) as unArriveNum,
+ (basic.realNum/basic.shouldNum) as sign,((basic.shouldNum-basic.realNum)/basic.shouldNum) as unSign
+ FROM(
+ SELECT
+ (SELECT COUNT(*) FROM sys_training_registration
+ WHERE
+ cancel = '1' and audit_status = '1'
+ <if test="statistics.examId != null and statistics.examId !='' ">
+ AND train_exam_id = #{statistics.examId}
+ </if>
+ ) as shouldNum,
+ (SELECT COUNT(*) FROM sys_sign_in_records
+ WHERE 1=1
+ <if test="statistics.examId != null and statistics.examId !='' ">
+ AND exam_id = #{statistics.examId}
+ </if>
+ ) as realNum
+ )basic
+ </select>
+
+
+ <select id="getSignStatisticsBar" resultType="org.springblade.modules.signinrecords.vo.SignStatistics">
+ SELECT
+ shouldTemp.shouldNum,
+ realTemp.realNum,
+ shouldTemp.shouldNum - realTemp.realNum AS unArriveNum,
+ shouldTemp.dept_name,
+ shouldTemp.id as deptId
+ FROM
+ (
+ SELECT
+ COUNT(*) shouldNum,
+ bd.dept_name,
+ bd.id
+ FROM
+ sys_training_registration str
+ LEFT JOIN blade_user bu ON bu.id = str.user_id
+ LEFT JOIN blade_dept bd ON bd.id = bu.dept_id
+ WHERE 1=1
+ <if test="statistics.examId != null and statistics.examId !='' ">
+ AND str.train_exam_id = #{statistics.examId}
+ </if>
+ GROUP BY
+ bd.dept_name,
+ bd.id
+ ORDER BY
+ dept_name DESC
+ ) shouldTemp
+ LEFT JOIN (
+ SELECT
+ COUNT(*) realNum,
+ bd.dept_name,
+ bd.id
+ FROM
+ sys_sign_in_records ssir
+ LEFT JOIN blade_user bu ON bu.id = ssir.user_id
+ LEFT JOIN blade_dept bd ON bd.id = bu.dept_id
+ WHERE
+ 1=1
+ <if test="statistics.examId != null and statistics.examId !='' ">
+ AND ssir.exam_id = #{statistics.examId}
+ </if>
+ GROUP BY
+ bd.dept_name,
+ bd.id
+ ORDER BY
+ dept_name DESC
+ ) realTemp ON shouldTemp.id = realTemp.id
+ </select>
+ <select id="getSignSituationList" resultType="org.springblade.modules.signinrecords.vo.SignInfo">
+ SELECT * FROM (
+ SELECT
+ str.candidate_no,
+ bu.avatar,
+ bu.real_name,
+ bu.cardId,
+ str.train_exam_id as examId,
+ bu.sex,
+ bd.id AS deptId,
+ bd.dept_name AS deptName,
+ CASE WHEN ssir.id IS NULL THEN
+ '未签到' ELSE '已签到'
+ END AS state
+ FROM
+ sys_training_registration str
+ LEFT JOIN blade_user bu ON bu.id = str.user_id
+ LEFT JOIN blade_dept bd ON bd.id = bu.dept_id
+ LEFT JOIN sys_sign_in_records ssir ON ssir.candidate_no = str.candidate_no
+ AND ssir.exam_id = #{signInfo.examId}
+ WHERE str.audit_status = '1' and str.cancel = '1'
+ and str.train_exam_id = #{signInfo.examId}
+ <if test="signInfo.deptId != null and signInfo.deptId !='' ">
+ AND bd.id = #{signInfo.deptId}
+ </if>
+
+ ORDER BY str.candidate_no ASC
+ ) result WHERE 1=1
+ <if test="signInfo.state != null and signInfo.state !='' ">
+ AND result.state = #{signInfo.state}
+ </if>
+
+
+ </select>
+
</mapper>
--
Gitblit v1.9.3