From dda33478829592be6eea4c78b6519142a9dd93bb Mon Sep 17 00:00:00 2001 From: hjl <1657978663@qq.com> Date: 星期三, 26 六月 2024 18:20:19 +0800 Subject: [PATCH] fix: 学习端bug --- ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 37 insertions(+), 16 deletions(-) diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java index 60558ec..76fb9f7 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java @@ -65,41 +65,62 @@ Integer id = item.getId(); // 计算总积分 int total = 0; + List<Integer> dayList = new ArrayList<>(); // 有问有答 List<TStudyAnswer> answerList = studyAnswerService.lambdaQuery().eq(TStudyAnswer::getStudyId, id) .eq(TStudyAnswer::getDisabled, 0).list(); - Optional<TStudyAnswer> answerOptional = answerList.stream().findAny(); - if (answerOptional.isPresent()) { - total += answerOptional.get().getIntegral(); + for (TStudyAnswer data : answerList) { + Integer day = data.getDay(); + if (!dayList.contains(day)) { + total += data.getIntegral(); + dayList.add(day); + } } + dayList.clear(); // 归纳判断 List<TStudyInduction> inductionList = studyInductionService.lambdaQuery().eq(TStudyInduction::getStudyId, id) .eq(TStudyInduction::getDisabled, 0).list(); - Optional<TStudyInduction> inductionOptional = inductionList.stream().findAny(); - if (inductionOptional.isPresent()) { - total += inductionOptional.get().getIntegral(); + for (TStudyInduction data : inductionList) { + Integer day = data.getDay(); + if (!dayList.contains(day)) { + total += data.getIntegral(); + dayList.add(day); + } } + dayList.clear(); // 看图选音 List<TStudyLook> lookList = studyLookService.lambdaQuery().eq(TStudyLook::getStudyId, id) .eq(TStudyLook::getDisabled, 0).list(); - Optional<TStudyLook> lookOptional = lookList.stream().findAny(); - if (lookOptional.isPresent()) { - total += lookOptional.get().getIntegral(); + for (TStudyLook data : lookList) { + Integer day = data.getDay(); + if (!dayList.contains(day)) { + total += data.getIntegral(); + dayList.add(day); + } } + dayList.clear(); // 听音选图 List<TStudyListen> listenList = studyListenService.lambdaQuery().eq(TStudyListen::getStudyId, id) .eq(TStudyListen::getDisabled, 0).list(); - Optional<TStudyListen> listenOptional = listenList.stream().findAny(); - if (listenOptional.isPresent()) { - total += listenOptional.get().getIntegral(); + for (TStudyListen data : listenList) { + Integer day = data.getDay(); + if (!dayList.contains(day)) { + total += data.getIntegral(); + dayList.add(day); + } } + dayList.clear(); // 音图相配 List<TStudyPair> pairList = studyPairService.lambdaQuery().eq(TStudyPair::getStudyId, id) .eq(TStudyPair::getDisabled, 0).list(); - Optional<TStudyPair> pairOptional = pairList.stream().findAny(); - if (pairOptional.isPresent()) { - total += pairOptional.get().getIntegral(); + for (TStudyPair data : pairList) { + Integer day = data.getDay(); + if (!dayList.contains(day)) { + total += data.getIntegral(); + dayList.add(day); + } } + dayList.clear(); // 自主游戏 List<TGame> gameList = gameService.lambdaQuery().eq(TGame::getStudyId, id) .eq(TGame::getDisabled, 0).list(); @@ -465,7 +486,7 @@ defaultSchedule = 100; } else if (studyIndex < weekIndex) { defaultSchedule = 0; - }else { + } else { // 根据day初始化学习进度 if (Constants.ONE.equals(day)) { defaultSchedule = 0; -- Gitblit v1.7.1