Browse Source

Merge branch 'feature/1113-vipCourse' of http://git.dayaedu.com/yonge/cooleshow into feature/1113-vipCourse

刘俊驰 7 months ago
parent
commit
85a6d3ff03

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/VideoLessonGroupDao.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.biz.dal.dao;
 import java.util.List;
 import java.util.Map;
 
+import com.yonge.cooleshow.biz.dal.dto.Mapper;
 import com.yonge.cooleshow.biz.dal.queryInfo.CouponInfoQuery;
 import com.yonge.cooleshow.biz.dal.queryInfo.CourseRelationQueryInfo;
 import com.yonge.cooleshow.biz.dal.wrapper.course.CourseRelationWrapper;
@@ -75,5 +76,5 @@ public interface VideoLessonGroupDao extends BaseMapper<VideoLessonGroup> {
     //查询付费人数前5的课程
     List<CountVideoGroupVo.VideoLesson> selectVideoLesson();
 
-    List<Map<Long, Long>> countMusicAlbum(@Param("videoLessonGroupIds") List<Long> videoLessonGroupIds);
+    List<Mapper> countMusicAlbum(@Param("videoLessonGroupIds") List<Long> videoLessonGroupIds);
 }

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseGroupServiceImpl.java

@@ -429,7 +429,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
                         }
                         studentName.append(userMap.get(studentPayments.get(i).getUserId()).getUsername());
                         if (i > 0) {
-                            studentName.append("等").append(studentPayments.size()).append("人");
+                            studentName.append("等").append(userIds.size()).append("人");
                             break;
                         }
                     }

+ 0 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java

@@ -174,7 +174,6 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
         param.put("groupState", String.join(",", CourseGroupEnum.ING.getCode(), CourseGroupEnum.COMPLETE.getCode()));
         log.info("queryTeacherLiveCourse:{}", param);
         Page<TeacherLiveCourseInfoVo> pageInfo = PageUtil.getPageInfo(param);
-        pageInfo.setAsc("a.start_time_");
         IPage<TeacherLiveCourseInfoVo> page = baseMapper.queryLiveTeacherCourse(pageInfo, param);
         return PageUtil.pageInfo(page);
     }

+ 11 - 8
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VideoLessonGroupServiceImpl.java

@@ -14,6 +14,7 @@ import com.yonge.cooleshow.biz.dal.dao.VideoLessonAuthRecordDao;
 import com.yonge.cooleshow.biz.dal.dao.VideoLessonGroupDao;
 import com.yonge.cooleshow.biz.dal.dao.VideoLessonGroupDetailDao;
 import com.yonge.cooleshow.biz.dal.dto.CourseMusicAlbumRelationDto;
+import com.yonge.cooleshow.biz.dal.dto.Mapper;
 import com.yonge.cooleshow.biz.dal.dto.VideoLessonGroupDetailDto;
 import com.yonge.cooleshow.biz.dal.dto.search.VideoGroupSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.VideoLessonGroupSearch;
@@ -115,15 +116,17 @@ public class VideoLessonGroupServiceImpl extends ServiceImpl<VideoLessonGroupDao
 			}
 		}
         List<VideoLessonGroupVo> videoLessonGroupVos = baseMapper.selectPage(page, query);
-        //获取直播课关联的曲目数量
-        List<Long> videoLessonGroupIds = videoLessonGroupVos.stream().map(VideoLessonGroupVo::getId).collect(Collectors.toList());
-        List<Map<Long,Long>> musicNum = this.baseMapper.countMusicAlbum(videoLessonGroupIds);
-        Map<Long,Long> map = MapUtil.convertIntegerMap(musicNum);
-        for (VideoLessonGroupVo videoLessonGroupVo : videoLessonGroupVos) {
-            if (videoLessonGroupVo.getLessonPrice().compareTo(BigDecimal.ZERO) == 0) {
-                videoLessonGroupVo.setCountStudent(videoLessonGroupVo.getCountStudent() + videoLessonGroupVo.getVirtualNumber());
+        if(CollectionUtils.isNotEmpty(videoLessonGroupVos)){
+            //获取直播课关联的曲目数量
+            List<Long> videoLessonGroupIds = videoLessonGroupVos.stream().map(VideoLessonGroupVo::getId).collect(Collectors.toList());
+            List<Mapper> musicNum = this.baseMapper.countMusicAlbum(videoLessonGroupIds);
+            Map<Long,Long> map = musicNum.stream().collect(Collectors.toMap(e->Long.parseLong(e.getKey().toString()), e->Long.parseLong(e.getValue().toString())));
+            for (VideoLessonGroupVo videoLessonGroupVo : videoLessonGroupVos) {
+                if (videoLessonGroupVo.getLessonPrice().compareTo(BigDecimal.ZERO) == 0) {
+                    videoLessonGroupVo.setCountStudent(videoLessonGroupVo.getCountStudent() + videoLessonGroupVo.getVirtualNumber());
+                }
+                videoLessonGroupVo.setMusicNum(map.get(videoLessonGroupVo.getId()));
             }
-            videoLessonGroupVo.setMusicNum(map.get(videoLessonGroupVo.getId()));
         }
         return page.setRecords(videoLessonGroupVos);
     }

+ 1 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/VideoLessonGroupMapper.xml

@@ -602,7 +602,7 @@
 		LIMIT 5
 	</select>
 	<select id="countMusicAlbum" resultType="java.util.Map">
-		select c.course_group_id_,COUNT(distinct ms.id_) from
+		select c.course_group_id_ as 'key',COUNT(distinct ms.id_) as 'value' from
 			(
 				select crma.course_group_id_, music_album_id_ music_sheet_id_ from course_relation_music_album crma
 				where crma.relation_type_ = 'MUSIC' AND crma.course_group_id_ IN