From 5c2d7fcc8450e02fd51ea6a20e34567068c7f31f Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Fri, 27 Aug 2021 21:08:01 +0800
Subject: [PATCH] 成绩统计

---
 src/main/java/org/springblade/modules/exam/service/ExamScoreService.java          |    2 +-
 src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java            |    2 +-
 src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java |    4 ++--
 src/main/java/org/springblade/modules/webscoket/WebSocketHandler.java             |    2 --
 src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml             |   22 ++++++++++++++++++++--
 src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java    |    4 ++--
 6 files changed, 26 insertions(+), 10 deletions(-)

diff --git a/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java b/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
index 067fc26..388224e 100644
--- a/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
+++ b/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
@@ -265,7 +265,7 @@
 	 */
 	@GetMapping("score-statistics")
 	@ApiOperation(value = "分数统计")
-	public R<List> scoreStatistics(HttpServletResponse response) {
-		return R.data(examScoreService.scoreStatistics());
+	public R<List> scoreStatistics(HttpServletResponse response,String deptid,String jurisdiction) {
+		return R.data(examScoreService.scoreStatistics(deptid,jurisdiction));
 	}
 }
diff --git a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
index a272dfb..2e82a8c 100644
--- a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
+++ b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
@@ -48,5 +48,5 @@
 	 */
     ExamScore getExamScoreInfoByIdCardNo(@Param("idCardNo")String idCardNo,@Param("examId")Long examId);
 
-	List<Map<String,Object>> scoreStatistics();
+	List<Map<String,Object>> scoreStatistics(String deptid,String jurisdiction);
 }
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 76f5e51..ca4f770 100644
--- a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
+++ b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
@@ -143,14 +143,32 @@
         COUNT( CASE WHEN theory_grade >= 80 AND theory_grade &lt; 90 THEN 1 END ) AS 'lh',
         COUNT( CASE WHEN theory_grade >= 90 THEN 1 END ) AS 'yx'
         FROM
-        exam_score) a UNION ALL
+        exam_score exam
+	    LEFT JOIN blade_user user ON exam.user_id = user.id
+        WHERE 1 = 1
+        <if test="jurisdiction!=null and jurisdiction=='' and jurisdiction!='1123598813738675201">
+             AND user.jurisdiction = #{jurisdiction}
+        </if>
+        <if test="deptid!=null and deptid==''">
+            AND user.dept_id = #{deptid}
+        </if>
+        ) a UNION ALL
         SELECT * FROM( SELECT
         COUNT( CASE WHEN learn_grade &lt; 60 THEN 1 END ) AS 'bhg',
         COUNT( CASE WHEN learn_grade >= 60 AND learn_grade &lt; 80 THEN 1 END ) AS 'hg',
         COUNT( CASE WHEN learn_grade >= 80 AND learn_grade &lt; 90 THEN 1 END ) AS 'lh',
         COUNT( CASE WHEN learn_grade >= 90 THEN 1 END ) AS 'yx'
         FROM
-        exam_score) b
+        exam_score exam
+        LEFT JOIN blade_user user ON exam.user_id = user.id
+        WHERE 1 = 1
+        <if test="jurisdiction!=null and jurisdiction=='' and jurisdiction!='1123598813738675201">
+            AND user.jurisdiction = #{jurisdiction}
+        </if>
+        <if test="deptid!=null and deptid==''">
+            AND user.dept_id = #{deptid}
+        </if>
+        ) b
     </select>
 
     <!--根据用户身份证号查询考试成绩-->
diff --git a/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java b/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
index 777ad4d..cfde70b 100644
--- a/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
+++ b/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
@@ -44,5 +44,5 @@
 	 */
     void importExamScore(List<ExamScoreExcel> examScoreExcelList, Boolean isCovered);
 
-    List<Map<String,Object>> scoreStatistics();
+    List<Map<String,Object>> scoreStatistics(String deptid,String jurisdiction);
 }
diff --git a/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java b/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
index 9a1d9c5..53b5099 100644
--- a/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
+++ b/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
@@ -312,7 +312,7 @@
 	}
 
 	@Override
-	public List<Map<String, Object>> scoreStatistics() {
-		return baseMapper.scoreStatistics();
+	public List<Map<String, Object>> scoreStatistics(String deptid,String jurisdiction) {
+		return baseMapper.scoreStatistics(deptid,jurisdiction);
 	}
 }
diff --git a/src/main/java/org/springblade/modules/webscoket/WebSocketHandler.java b/src/main/java/org/springblade/modules/webscoket/WebSocketHandler.java
index 6478da8..a2c7987 100644
--- a/src/main/java/org/springblade/modules/webscoket/WebSocketHandler.java
+++ b/src/main/java/org/springblade/modules/webscoket/WebSocketHandler.java
@@ -110,8 +110,6 @@
 				//把用户信息添加到通道里
 				ChannelSupervise.addChannel(ctx.channel(), id);
 			}
-
-
 		}
 
 //		TextWebSocketFrame tws = new TextWebSocketFrame(new Date().toString()

--
Gitblit v1.9.3