From e61a65c45a2a6a943be7ec56413162deefdda165 Mon Sep 17 00:00:00 2001
From: dengqingliu <2733574813@qq.com>
Date: 星期五, 02 十二月 2022 18:05:19 +0800
Subject: [PATCH] 资源存储升级成华为云OBS

---
 src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java b/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java
index 0b95484..d5f818c 100644
--- a/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java
+++ b/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java
@@ -645,12 +645,38 @@
                 where(qSubjectProgressTreeV.id.userId.eq(qUser.userId).and(qSubjectProgressTreeV.nodeType.eq(nodeType))
                         .and(qSubjectProgressTreeV.id.nodeId.eq(nodeId))).orderBy(order).fetch().stream().map(tuple -> {
 
+                            List<ClsClassReSubject> clsClassReSubjects = find("from ClsClassReSubject where classId = ?",CollectionUtils.newList(nodeId),ClsClassReSubject.class);
+                    Double percent = 0.0;
+                    Double progressValue = 0.0;
+                    Double percentAvg = 0.0;
+                    int size = 0;
+                            for(ClsClassReSubject c : clsClassReSubjects) {
+                                List<MyLectureV> myLectureVList = lectureService.listLectureVBySubjectId(tuple.get(qUser.userId), c.getSubjectId(), "", 1000, 1, null);
+                                if (!myLectureVList.isEmpty()) {
+                                    for (MyLectureV myLectureV : myLectureVList) {
+                                        if (myLectureV.getPercent() != null && myLectureV.getProgressValue() != null) {
+                                            percent += myLectureV.getPercent();
+                                            progressValue += myLectureV.getProgressValue().intValue();
+                                        }
+                                    }
+                                    size += myLectureVList.size();
+                                    if (percentAvg.isNaN()) {
+                                        percentAvg += 0.0;
+                                    }
+                                }
+                            }
+            percentAvg += percent / size;
+                            if(percentAvg.isNaN()){
+                                percentAvg = 0.0;
+                            }
             Map<String, Object> map = new HashMap<>();
             map.put("userName", tuple.get(qUser.name));
             map.put("userId", tuple.get(qUser.userId));
             map.put("classId", tuple.get(qSubjectProgressTreeV.id.nodeId));
-            map.put("percent", tuple.get(qSubjectProgressTreeV.percent));
-            map.put("progressValue", tuple.get(qSubjectProgressTreeV.progressValue));
+            map.put("percent", percentAvg);
+            map.put("progressValue", progressValue);
+//            map.put("percent", tuple.get(qSubjectProgressTreeV.percent));
+//            map.put("progressValue", tuple.get(qSubjectProgressTreeV.progressValue));
             return map;
         }).collect(Collectors.toList());
         return lstMap;

--
Gitblit v1.8.0