From fef8e1050da603344ed8bda819d390c2c16551ea Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 09 十一月 2024 17:32:05 +0800
Subject: [PATCH] 代码提交

---
 xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java |   70 +++++++++++++++++++++++++++++++++-
 1 files changed, 67 insertions(+), 3 deletions(-)

diff --git a/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java b/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java
index 07f5572..0f087d1 100644
--- a/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java
+++ b/xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java
@@ -896,8 +896,16 @@
                 .eq(Course::getCourseType, 1).list();
         for (Course course : list) {
             List<AppUser> data = remoteAppUserService.getUserByCourseId(courseId).getData();
-            course.setCount(data.size()+course.getVirtualLearnedNum());
-            course.setRealLearnedNum(data.size()+course.getVirtualLearnedNum());
+            List<CourseChapter> list1 = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, course).list();
+            int a = 0;
+            int b = 0;
+            for (CourseChapter courseChapter : list1) {
+                a+= courseChapter.getVirtualLearnedNum();
+                Long data1 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
+                b+=data1;
+            }
+            course.setCount(a+b);
+            course.setRealLearnedNum(a+b);
         }
         List<Course> courses = new ArrayList<>();
 
@@ -934,9 +942,19 @@
                     .list();
             for (Course course : page) {
                 CourseVO courseVO = new CourseVO();
+                List<CourseChapter> list1 = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, course.getId()).list();
+                int a = 0;
+                int b = 0;
+                for (CourseChapter courseChapter : list1) {
+                    a+= courseChapter.getVirtualLearnedNum();
+                    Long data1 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
+                    b+=data1;
+                }
+                course.setCount(a+b);
+                course.setRealLearnedNum(a+b);
+                course.setVirtualLearnedNum(0);
                 BeanUtils.copyProperties(course, courseVO);
                 courseVOS.add(courseVO);
-                studyPageVO.setCourseList(courseVOS);
             }
         }
         // 查询两个相同类型的线上免费课程
@@ -952,13 +970,57 @@
                 int size = freeCourseList.size();
                 int index = (int) (Math.random() * size);
                 List<Course> courses = new ArrayList<>();
+                for (Course cours : freeCourseList) {
+                    List<CourseChapter> list1 = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, cours.getId()).list();
+                    int a = 0;
+                    int b = 0;
+                    for (CourseChapter courseChapter : list1) {
+                        a+= courseChapter.getVirtualLearnedNum();
+                        Long data2 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
+                        b+=data2;
+                    }
+                    cours.setCount(a+b);
+                    cours.setRealLearnedNum(a+b);
+                    cours.setVirtualLearnedNum(0);
+                }
                 for (int i = 0; i < 2; i++) {
                     courses.add(freeCourseList.get(index));
                 }
                 studyPageVO.setFreeCourseList(courses);
             }else{
+                for (Course cours : freeCourseList) {
+                    List<CourseChapter> list1 = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, cours.getId()).list();
+                    int a = 0;
+                    int b = 0;
+                    for (CourseChapter courseChapter : list1) {
+                        a+= courseChapter.getVirtualLearnedNum();
+                        Long data2 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
+                        b+=data2;
+                    }
+                    cours.setCount(a+b);
+                    cours.setRealLearnedNum(a+b);
+                }
                 studyPageVO.setFreeCourseList(freeCourseList);
             }
+            for (Long l : data1) {
+                CourseChapter byId1 = courseChapterService.getById(l);
+                Course byId = courseService.getById(byId1.getCourseId());
+                CourseVO courseVO = new CourseVO();
+                BeanUtils.copyProperties(byId, courseVO);
+                List<CourseChapter> list1 = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, byId1.getCourseId()).list();
+                int a = 0;
+                int b = 0;
+                for (CourseChapter courseChapter : list1) {
+                    a+= courseChapter.getVirtualLearnedNum();
+                    Long data2 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
+                    b+=data2;
+                }
+                courseVO.setCount(a+b);
+                courseVO.setRealLearnedNum(a+b);
+                courseVO.setVirtualLearnedNum(0);
+                courseVOS.add(courseVO);
+            }
+            studyPageVO.setCourseList(courseVOS);
             return R.ok(studyPageVO);
         }else{
             List<Course> list1 = courseService.lambdaQuery()
@@ -981,6 +1043,8 @@
                 }
                 studyPageVO.setFreeCourseList(courses);
             }
+            studyPageVO.setCourseList(courseVOS);
+
             return R.ok(studyPageVO);
         }
 

--
Gitblit v1.7.1