Merge remote-tracking branch 'origin/dev-tmp1' into dev-tmp1

dev-tmp1
luotaiqian 2026-08-25 14:40:10 +08:00
commit 9c7fe1ae3a
1 changed files with 13 additions and 11 deletions

View File

@ -60,17 +60,19 @@ public class CourseManagementServiceImpl extends ServiceImpl<CourseManagementMap
.orderByDesc(CourseManagementDO::getCreateTime)
.page(new Page<>(query.getCurrent(), query.getSize()));
IPage<CourseManagementVO> convert = page.convert(courseManagementConvertor::convertEToVo);
Map<Long, Integer> collectMap = classCourseMapper.selectList(new LambdaQueryWrapper<ClassCourseDO>()
.in(ClassCourseDO::getCourseId, convert.getRecords().stream().map(CourseManagementVO::getId).collect(Collectors.toList())))
.stream().map(ClassCourseDO::getCourseId).distinct().collect(Collectors.toMap(v -> v, v -> 1));
convert.getRecords().forEach(vo -> {
vo.setCourseRelCoursewareVOList(courseRelCoursewareConvertor.convertEListToVoList(
courseRelCoursewareMapper.selectList(new LambdaQueryWrapper<CourseRelCoursewareDO>()
.eq(CourseRelCoursewareDO::getCourseId, vo.getId())
.orderByAsc(CourseRelCoursewareDO::getSort))
));
vo.setUsed(Math.toIntExact(collectMap.getOrDefault(Long.valueOf(vo.getId()), 0)));
});
if (convert.getRecords() != null && convert.getRecords().size() > 0) {
Map<Long, Integer> collectMap = classCourseMapper.selectList(new LambdaQueryWrapper<ClassCourseDO>()
.in(ClassCourseDO::getCourseId, convert.getRecords().stream().map(CourseManagementVO::getId).collect(Collectors.toList())))
.stream().map(ClassCourseDO::getCourseId).distinct().collect(Collectors.toMap(v -> v, v -> 1));
convert.getRecords().forEach(vo -> {
vo.setCourseRelCoursewareVOList(courseRelCoursewareConvertor.convertEListToVoList(
courseRelCoursewareMapper.selectList(new LambdaQueryWrapper<CourseRelCoursewareDO>()
.eq(CourseRelCoursewareDO::getCourseId, vo.getId())
.orderByAsc(CourseRelCoursewareDO::getSort))
));
vo.setUsed(Math.toIntExact(collectMap.getOrDefault(Long.valueOf(vo.getId()), 0)));
});
}
return convert;
}