From e5d59f8a617bb705577677eeac59b8278c71fcd8 Mon Sep 17 00:00:00 2001
From: xiaoCJ <406612557@qq.com>
Date: Mon, 29 Apr 2024 09:17:04 +0800
Subject: [PATCH] =?UTF-8?q?=E9=83=A8=E5=88=86=E6=8E=A5=E5=8F=A3=E6=B7=BB?=
 =?UTF-8?q?=E5=8A=A0=E9=9D=9E=E7=A9=BA=E5=88=A4=E6=96=AD=20=E9=98=B2?=
 =?UTF-8?q?=E6=AD=A2=E6=8A=A5=E9=94=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../controller/stu/StuIndexController.java          |  6 ++++--
 .../controller/tea/TeaGradeManageController.java    |  9 +++++----
 .../financial_bigdata/mapper/StuUserMapper.java     | 13 +++++++------
 .../service/stu/impl/StuIndexServiceImpl.java       | 13 +++++++------
 .../service/tea/impl/TeaGradeManageServiceImpl.java |  2 +-
 5 files changed, 24 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/sztzjy/financial_bigdata/controller/stu/StuIndexController.java b/src/main/java/com/sztzjy/financial_bigdata/controller/stu/StuIndexController.java
index 8bdcc04..b40acdb 100644
--- a/src/main/java/com/sztzjy/financial_bigdata/controller/stu/StuIndexController.java
+++ b/src/main/java/com/sztzjy/financial_bigdata/controller/stu/StuIndexController.java
@@ -279,8 +279,10 @@ public class StuIndexController {
             }
         }
         //实战考核完成进度 = 已做答的考试/ 所有发布的考试
-        int i = stuSize / totalSize;
-        allModuleProgressDto.setExamProgress(i);
+        if (stuSize != 0 && totalSize != 0) {
+            int i = stuSize / totalSize;
+            allModuleProgressDto.setExamProgress(i);
+        }
 
         //理论考试完成进度 = 完成5次为100%,一次为20%
         int completedExamCount = theoryExamMapper.selectByUserID(userId);
diff --git a/src/main/java/com/sztzjy/financial_bigdata/controller/tea/TeaGradeManageController.java b/src/main/java/com/sztzjy/financial_bigdata/controller/tea/TeaGradeManageController.java
index 1d8eb9a..09bc971 100644
--- a/src/main/java/com/sztzjy/financial_bigdata/controller/tea/TeaGradeManageController.java
+++ b/src/main/java/com/sztzjy/financial_bigdata/controller/tea/TeaGradeManageController.java
@@ -66,8 +66,6 @@ public class TeaGradeManageController {
     @Autowired
     private StuTheoryExamMapper stuTheoryExamMapper;
     @Autowired
-    private SysCaseQuestionMapper sysCaseQuestionMapper;
-    @Autowired
     private SysCaseQuestionStepMapper sysCaseQuestionStepMapper;
     @Autowired
     private SysObjectiveQuestionMapper sysObjectiveQuestionMapper;
@@ -81,6 +79,9 @@ public class TeaGradeManageController {
                                                                      @ApiParam("ManyAnswer为考试时间,JudgeAnswer为发布人") @RequestParam String schoolId) {
 
         List<TeaExamManage> teaExamManages = teaExamManageMapper.selectBySchoolId(schoolId);
+        if (teaExamManages.isEmpty()) {
+            return null;
+        }
         List<TeaExamManageCountDto> teaExamManageCountDtos = new ArrayList<>();
         Map<String, StuUser> userMap = new HashMap<>();
 
@@ -261,8 +262,8 @@ public class TeaGradeManageController {
 
         }
         List<SysObjectiveQuestion> resultList = sysObjectiveQuestionMapper.getGradeReportObjective(list);
-        if (!resultList.isEmpty()){
-            int i =0;
+        if (!resultList.isEmpty()) {
+            int i = 0;
             for (SysObjectiveQuestion sysObjectiveQuestion : resultList) {
                 i++;
                 sysObjectiveQuestion.setObjectiveId(Integer.toString(i));
diff --git a/src/main/java/com/sztzjy/financial_bigdata/mapper/StuUserMapper.java b/src/main/java/com/sztzjy/financial_bigdata/mapper/StuUserMapper.java
index c11675f..e6a930b 100644
--- a/src/main/java/com/sztzjy/financial_bigdata/mapper/StuUserMapper.java
+++ b/src/main/java/com/sztzjy/financial_bigdata/mapper/StuUserMapper.java
@@ -58,10 +58,11 @@ public interface StuUserMapper {
 //    int selectNumByClass(@Param("s") String s);
 
     @Select("<script>" +
-            "select  userid,name FROM stu_userinfo WHERE userid IN("
-            +"<foreach collection='userIds' separator=',' item='id'>"
-            + "#{id} "
-            + "</foreach> "
-            +")</script>")
-    List<StuUser> selectByPrimaryKeys(@Param("userIds")List<String> userIds);
+            "SELECT userid, name FROM stu_userinfo WHERE userid IN ("
+            + "<foreach collection='userIds' separator=',' item='id'>"
+            + "#{id}"
+            + "</foreach>"
+            + ")" +
+            "</script>")
+    List<StuUser> selectByPrimaryKeys(@Param("userIds") List<String> userIds);
 }
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/financial_bigdata/service/stu/impl/StuIndexServiceImpl.java b/src/main/java/com/sztzjy/financial_bigdata/service/stu/impl/StuIndexServiceImpl.java
index 8d26cfa..fccaea3 100644
--- a/src/main/java/com/sztzjy/financial_bigdata/service/stu/impl/StuIndexServiceImpl.java
+++ b/src/main/java/com/sztzjy/financial_bigdata/service/stu/impl/StuIndexServiceImpl.java
@@ -12,7 +12,6 @@ import org.springframework.stereotype.Service;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.util.List;
-import java.util.Map;
 
 /**
  * @Author xcj
@@ -72,11 +71,13 @@ public class StuIndexServiceImpl implements StuIndexService {
         stuTheoryIndexInfoDto.setTaskNum(examSize);
 
         ReceiveDto receiveDto = teaExamManageMapper.getLastExamScore(userId);//拿到最近考试的得分和 老师设置的题目总分
-        BigDecimal totalScore = receiveDto.getTotalScore();
-        BigDecimal stuScore = receiveDto.getStuScore();
-        if (totalScore.intValue()!=0&&stuScore.intValue()!=0){
-            BigDecimal bigDecimal = totalScore.divide(stuScore,2,RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)); //学生得分 / 总分 * 100
-            stuTheoryIndexInfoDto.setLastTaskAccuracy(bigDecimal);      //最近一次考核正确率
+        if (receiveDto != null) {
+            BigDecimal totalScore = receiveDto.getTotalScore();
+            BigDecimal stuScore = receiveDto.getStuScore();
+            if (totalScore.intValue() != 0 && stuScore.intValue() != 0) {
+                BigDecimal bigDecimal = totalScore.divide(stuScore, 2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)); //学生得分 / 总分 * 100
+                stuTheoryIndexInfoDto.setLastTaskAccuracy(bigDecimal);      //最近一次考核正确率
+            }
         }
 
 
diff --git a/src/main/java/com/sztzjy/financial_bigdata/service/tea/impl/TeaGradeManageServiceImpl.java b/src/main/java/com/sztzjy/financial_bigdata/service/tea/impl/TeaGradeManageServiceImpl.java
index f368d98..95947c2 100644
--- a/src/main/java/com/sztzjy/financial_bigdata/service/tea/impl/TeaGradeManageServiceImpl.java
+++ b/src/main/java/com/sztzjy/financial_bigdata/service/tea/impl/TeaGradeManageServiceImpl.java
@@ -155,7 +155,7 @@ public class TeaGradeManageServiceImpl implements ITeaGradeManageService {
                     teaExaminationDetailsDto.setGoodNumber(goodNum);
                     teaExaminationDetailsDto.setGeneralNum(generalNum);
                     teaExaminationDetailsDto.setFailingNumber(failNumber);
-                    teaExaminationDetailsDto.setCaseName(""); //todo 补充 暂时没有
+                    teaExaminationDetailsDto.setCaseName(""); //todo 错误率最高的三个案例名称 补充 暂时没有
 
 // 返回填充好数值的 teaExaminationDetailsDto 对象
                 }