From 9f48f1ae3b52ff9ab02c37cd0ab6f90ae93a2670 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 1 Dec 2025 21:48:05 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1bug?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adapter/repository/IUserOverviewRepository.java | 6 +++--- .../overview/service/extendbiz/UserOverviewService.java | 9 ++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/refine-domain/src/main/java/com/achobeta/domain/overview/adapter/repository/IUserOverviewRepository.java b/refine-domain/src/main/java/com/achobeta/domain/overview/adapter/repository/IUserOverviewRepository.java index 0670c97..8de8bbd 100644 --- a/refine-domain/src/main/java/com/achobeta/domain/overview/adapter/repository/IUserOverviewRepository.java +++ b/refine-domain/src/main/java/com/achobeta/domain/overview/adapter/repository/IUserOverviewRepository.java @@ -13,15 +13,15 @@ public interface IUserOverviewRepository { "where user_id = #{userId} and create_time >= subdate(now(), 14) and question_status = 0 " + "group by knowledge_point_id " + "having count(knowledge_point_id) >= 3") - int getHardQuestions(String userId); + Integer getHardQuestions(String userId); @Select("select count(id) from MistakeQuestion " + "where user_id = #{userId}") - int getQuestionsNum(String userId); + Integer getQuestionsNum(String userId); @Select("select count(id) from MistakeQuestion " + "where user_id = #{userId} and question_status = 1") - int getHardQuestionsNum(String userId); + Integer getHardQuestionsNum(String userId); @Update("update UserData set hard_questions = #{hardQuestions}, " + "questions_num = #{questionsNum}, " + diff --git a/refine-domain/src/main/java/com/achobeta/domain/overview/service/extendbiz/UserOverviewService.java b/refine-domain/src/main/java/com/achobeta/domain/overview/service/extendbiz/UserOverviewService.java index da56d6c..ad14c1f 100644 --- a/refine-domain/src/main/java/com/achobeta/domain/overview/service/extendbiz/UserOverviewService.java +++ b/refine-domain/src/main/java/com/achobeta/domain/overview/service/extendbiz/UserOverviewService.java @@ -19,11 +19,14 @@ public void handleUserOverview() { List userIds = userOverviewRepository.getUserIds(); for (String userId : userIds) { //查询用户易错知识点数 - int hardQuestions = userOverviewRepository.getHardQuestions(userId); + Integer count = userOverviewRepository.getHardQuestions(userId); + int hardQuestions = count != null ? count : 0; //查询用户总错题数 - int questionsNum = userOverviewRepository.getQuestionsNum(userId); + count = userOverviewRepository.getQuestionsNum(userId); + int questionsNum = count != null ? count : 0; //查询用户已掌握错题数 - int hardQuestionsNum = userOverviewRepository.getHardQuestionsNum(userId); + count = userOverviewRepository.getHardQuestionsNum(userId); + int hardQuestionsNum = count != null ? count : 0; double reviewRate = questionsNum == 0 ? 0 : hardQuestionsNum * 1.0 / questionsNum;