|
@@ -14,6 +14,7 @@ import com.ym.mec.biz.dal.dto.SimpleUserDto;
|
|
|
import com.ym.mec.biz.dal.entity.LessonCourseware;
|
|
|
import com.ym.mec.biz.dal.entity.LessonCoursewareUserMapper;
|
|
|
import com.ym.mec.biz.dal.entity.SysMusicScore;
|
|
|
+import com.ym.mec.biz.dal.entity.Teacher;
|
|
|
import com.ym.mec.biz.dal.mapper.LessonCoursewareMapper;
|
|
|
import com.ym.mec.biz.dal.wrapper.LessonCoursewareWrapper;
|
|
|
import com.ym.mec.biz.service.LessonCoursewareService;
|
|
@@ -64,6 +65,7 @@ public class LessonCoursewareServiceImpl extends ServiceImpl<LessonCoursewareMap
|
|
|
List<Long> lessonCoursewareIds = dtos.stream().map(LessonCoursewareWrapper.LessonCoursewareDto::getLessonCoursewareId).collect(Collectors.toList());
|
|
|
CbsLessonCoursewareWrapper.LambdaQuery lambdaQuery = new CbsLessonCoursewareWrapper.LambdaQuery();
|
|
|
lambdaQuery.setIds(lessonCoursewareIds);
|
|
|
+ lambdaQuery.setLevel(query.getLevel());
|
|
|
lambdaQuery.setName(query.getSearch());
|
|
|
List<CbsLessonCoursewareWrapper.Entity> entityList = coursewareFeignService.lessonCoursewareLambdaQuery(lambdaQuery).feignData();
|
|
|
if(CollectionUtils.isNotEmpty(entityList)){
|
|
@@ -106,6 +108,7 @@ public class LessonCoursewareServiceImpl extends ServiceImpl<LessonCoursewareMap
|
|
|
e.setName(entity.getName());
|
|
|
e.setCover(entity.getCoverImg());
|
|
|
e.setCourseNum(entity.getCourseNum());
|
|
|
+ e.setLevel(entity.getLevel());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -201,6 +204,79 @@ public class LessonCoursewareServiceImpl extends ServiceImpl<LessonCoursewareMap
|
|
|
return detail;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<LessonCoursewareWrapper.RefLevelDetailInfo> refLevel(LessonCoursewareWrapper.RefLevelQuery query) {
|
|
|
+ List<LessonCoursewareWrapper.RefLevelDetailInfo> result = new ArrayList<>();
|
|
|
+ CbsLessonCoursewareDetailWrapper.LessonCoursewareDetail lessonCoursewareDetail =
|
|
|
+ coursewareFeignService.lessonCoursewareDetailDetail(Long.parseLong(query.getLessonCoursewareDetailId())).feignData();
|
|
|
+ if (lessonCoursewareDetail == null) {
|
|
|
+ throw new BizException("课件未找到");
|
|
|
+ }
|
|
|
+ Teacher teacher = teacherDao.get(query.getTeacherId());
|
|
|
+ if (teacher == null) {
|
|
|
+ throw new BizException("老师信息不存在");
|
|
|
+ }
|
|
|
+ if (lessonCoursewareDetail.getLevel() == null || teacher.getCoursewareFlag()) {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+ LessonCoursewareWrapper.LessonCoursewareQuery query1 = new LessonCoursewareWrapper.LessonCoursewareQuery();
|
|
|
+ query1.setPage(1);
|
|
|
+ query1.setRows(9999);
|
|
|
+ query1.setTeacherId(query.getTeacherId());
|
|
|
+ query1.setEnable(true);
|
|
|
+ List<LessonCoursewareWrapper.LessonCoursewareDto> dtos = baseMapper.list(query1);
|
|
|
+ if(CollectionUtils.isEmpty(dtos)){
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+ List<Long> lessonCoursewareIds = dtos.stream().map(LessonCoursewareWrapper.LessonCoursewareDto::getLessonCoursewareId).collect(Collectors.toList());
|
|
|
+ CbsLessonCoursewareWrapper.LessonCourseware lessonCourseware =
|
|
|
+ coursewareFeignService.lessonCoursewareDetail(lessonCoursewareDetail.getLessonCoursewareId()).feignData();
|
|
|
+ if (lessonCourseware == null) {
|
|
|
+ throw new BizException("课件未找到");
|
|
|
+ }
|
|
|
+ // 查询当前能使用的课件
|
|
|
+ CbsLessonCoursewareWrapper.LessonCoursewareQuery lambdaQuery = new CbsLessonCoursewareWrapper.LessonCoursewareQuery();
|
|
|
+ lambdaQuery.setPage(1);
|
|
|
+ lambdaQuery.setRows(9999);
|
|
|
+ lambdaQuery.setLevel(lessonCourseware.getLevel());
|
|
|
+ lambdaQuery.setOrchestraType(lessonCourseware.getOrchestraType());
|
|
|
+ lambdaQuery.setLessonCoursewareIds(lessonCoursewareIds);
|
|
|
+ List<CbsLessonCoursewareWrapper.LessonCourseware> lessonCoursewareList = coursewareFeignService.lessonCoursewarePage(lambdaQuery).feignData().getRows();
|
|
|
+ if (CollectionUtils.isEmpty(lessonCoursewareList)) {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+ List<Long> courseIds = lessonCoursewareList.stream().map(CbsLessonCoursewareWrapper.LessonCourseware::getId).collect(Collectors.toList());
|
|
|
+ Map<Long, CbsLessonCoursewareWrapper.LessonCourseware> lessonCoursewareMap =
|
|
|
+ lessonCoursewareList.stream().collect(Collectors.toMap(CbsLessonCoursewareWrapper.LessonCourseware::getId, o -> o));
|
|
|
+
|
|
|
+ // 查询可用的课件详情信息
|
|
|
+ CbsLessonCoursewareDetailWrapper.LessonCoursewareDetailQuery lessonCoursewareDetailQuery = new CbsLessonCoursewareDetailWrapper.LessonCoursewareDetailQuery();
|
|
|
+ lessonCoursewareDetailQuery.setPage(1);
|
|
|
+ lessonCoursewareDetailQuery.setRows(9999);
|
|
|
+ lessonCoursewareDetailQuery.setLessonCoursewareIdList(courseIds);
|
|
|
+ lessonCoursewareDetailQuery.setLevel(lessonCoursewareDetail.getLevel());
|
|
|
+ List<CbsLessonCoursewareDetailWrapper.LessonCoursewareDetail> lessonCoursewareDetails = coursewareFeignService.lessonCoursewareDetailPage(lessonCoursewareDetailQuery).feignData().getRows();
|
|
|
+ if (CollectionUtils.isEmpty(lessonCoursewareDetails)) {
|
|
|
+ return new ArrayList<>();
|
|
|
+ }
|
|
|
+ for (CbsLessonCoursewareDetailWrapper.LessonCoursewareDetail coursewareDetail : lessonCoursewareDetails) {
|
|
|
+ LessonCoursewareWrapper.RefLevelDetailInfo refLevelDetailInfo = new LessonCoursewareWrapper.RefLevelDetailInfo();
|
|
|
+ refLevelDetailInfo.setId(coursewareDetail.getId());
|
|
|
+ refLevelDetailInfo.setLessonCoursewareId(coursewareDetail.getLessonCoursewareId());
|
|
|
+ CbsLessonCoursewareWrapper.LessonCourseware lessonCourseware1 = lessonCoursewareMap.get(coursewareDetail.getLessonCoursewareId());
|
|
|
+ if (lessonCourseware1 == null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ refLevelDetailInfo.setCoverImg(lessonCourseware1.getCoverImg());
|
|
|
+ refLevelDetailInfo.setCourseTypeCode(lessonCourseware1.getCourseTypeCode());
|
|
|
+ refLevelDetailInfo.setLockFlag(false);
|
|
|
+ refLevelDetailInfo.setLessonCoursewareName(lessonCourseware1.getName());
|
|
|
+ refLevelDetailInfo.setUseFlag(coursewareDetail.getId().equals(query.getLessonCoursewareDetailId()));
|
|
|
+ result.add(refLevelDetailInfo);
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
//递归处理CbsLessonCoursewareDetailWrapper.KnowledgePointSmall
|
|
|
private void setTreeResourceId(List<CbsLessonCoursewareDetailWrapper.KnowledgePointSmall> knowledgePointList,List<Integer> categoryIdList){
|
|
|
if(CollectionUtils.isNotEmpty(knowledgePointList)){
|