无关风月
2024-11-11 185f5dc7c3c49f565da51cd9c2f7750f30990d4a
xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java
@@ -644,9 +644,33 @@
            }else{
                clientCourseVO.setIsVip(0);
            }
            // 查询学习人数和头像列表
            if (data!=null){
            if(byId.getChargeType() != 1){
                List<CourseChapter> list = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, byId.getId())
                        .list();
                // 累加实际学习人数
                int a = 0;
                int b = 0;
                for (CourseChapter courseChapter : list) {
                    Long data2 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
                    a+=data2;
                    b+=courseChapter.getVirtualLearnedNum();
                }
                clientCourseVO.setCount(a+b);
                clientCourseVO.setIsBuy(1);
            }else if (data!=null){
                // 查询学习人数和头像列表
                clientCourseVO.setCount(data.size());
                List<CourseChapter> list = courseChapterService.lambdaQuery().eq(CourseChapter::getCourseId, byId.getId())
                        .list();
                // 累加实际学习人数
                int a = 0;
                int b = 0;
                for (CourseChapter courseChapter : list) {
                    Long data2 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
                    a+=data2;
                    b+=courseChapter.getVirtualLearnedNum();
                }
                clientCourseVO.setCount(a+b);
                if (data.size()>=5){
                    clientCourseVO.setHeaders(data.stream().limit(5).map(AppUser::getAvatar).collect(Collectors.toList()));
                }else{
@@ -658,6 +682,7 @@
                        clientCourseVO.setIsBuy(1);
                    }
                }
            }
            // 查询是否已收藏课程
            clientCourseVO.setIsCollect(courseUserFavoriteService.lambdaQuery()
@@ -673,15 +698,24 @@
                .orderByDesc(CourseChapter::getSortNum)
                .list();
        for (CourseChapter courseChapter : page) {
            int size = courseLearningRecordService.lambdaQuery()
                    .eq(CourseLearningRecord::getChapterId, courseChapter.getId())
                    .list().size();
            courseChapter.setRealLearnedNum(size+courseChapter.getVirtualLearnedNum());
            // 累加实际学习人数
            int a = 0;
            int b = 0;
            Long data2 = remoteAppUserService.getCourseChapterHistoryCount(courseChapter.getId()).getData();
            a+=data2;
            b+=courseChapter.getVirtualLearnedNum();
            courseChapter.setRealLearnedNum(a+b);
            courseChapter.setVirtualLearnedNum(0);
            LoginUser loginUser = tokenService.getLoginUser();
            if (loginUser!=null){
                Integer data1 = remoteAppUserService.getCourseChapterHistoryState(loginUser.getUserid(), courseChapter.getId()).getData();
                courseChapter.setIsOver(data1);
            }else{
                courseChapter.setIsOver(2);
            }
        }
        clientCourseVO.setList(page);
        clientCourseVO.setIsBuy(0);
        clientCourseVO.setIsBuy(2);
        // 查询推荐课程
        List<Course> list = courseService.lambdaQuery().eq(Course::getCateId, byId.getCateId())
                .eq(Course::getCourseType,1)