|
@@ -1,21 +1,18 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
-import com.ym.mec.biz.dal.dao.LessonExaminationDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentExtracurricularExercisesSituationDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentLessonExaminationDao;
|
|
|
-import com.ym.mec.biz.dal.dao.StudentLessonExaminationDetailDao;
|
|
|
+import com.ym.mec.biz.dal.dao.*;
|
|
|
import com.ym.mec.biz.dal.dto.*;
|
|
|
-import com.ym.mec.biz.dal.entity.LessonExamination;
|
|
|
-import com.ym.mec.biz.dal.entity.StudentLessonExamination;
|
|
|
-import com.ym.mec.biz.dal.entity.StudentLessonExaminationDetail;
|
|
|
-import com.ym.mec.biz.dal.entity.StudentLessonTrainingDetail;
|
|
|
+import com.ym.mec.biz.dal.entity.*;
|
|
|
import com.ym.mec.biz.dal.page.StudentLessonExaminationQueryInfo;
|
|
|
import com.ym.mec.biz.service.*;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.page.PageInfo;
|
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
|
import com.ym.mec.util.date.DateUtil;
|
|
|
+import org.apache.commons.collections.CollectionUtils;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -44,9 +41,10 @@ public class StudentLessonExaminationServiceImpl extends ServiceImpl<StudentLess
|
|
|
private LessonExaminationService lessonExaminationService;
|
|
|
@Autowired
|
|
|
private StudentExtracurricularExercisesSituationService studentExtracurricularExercisesSituationService;
|
|
|
-
|
|
|
@Autowired
|
|
|
private StudentLessonTrainingDetailService studentLessonTrainingDetailService;
|
|
|
+ @Autowired
|
|
|
+ private SysMusicScoreDao sysMusicScoreDao;
|
|
|
|
|
|
@Override
|
|
|
public StudentLessonExaminationDao getDao() {
|
|
@@ -112,12 +110,25 @@ public class StudentLessonExaminationServiceImpl extends ServiceImpl<StudentLess
|
|
|
if(queryInfo.getLessonExaminationId() != null){
|
|
|
List<StudentLessonExaminationDetail> list = studentLessonExaminationDetailService.lambdaQuery().
|
|
|
eq(StudentLessonExaminationDetail::getLessonExaminationId, queryInfo.getLessonExaminationId()).list();
|
|
|
+ String musicScoreIds = list.stream().map(e->e.getMusicScoreId().toString()).collect(Collectors.joining(","));
|
|
|
+ Map<Integer, SysMusicScore> musicScoreMap = new HashMap<>();
|
|
|
+ if (StringUtils.isEmpty(musicScoreIds)) {
|
|
|
+ List<SysMusicScore> musicScores = sysMusicScoreDao.findByIds(musicScoreIds);
|
|
|
+ if (CollectionUtils.isNotEmpty(musicScores)) {
|
|
|
+ musicScoreMap = musicScores.stream().collect(Collectors.toMap(SysMusicScore::getId, e -> e));
|
|
|
+ }
|
|
|
+ }
|
|
|
examinationIdMap = list.stream().collect(Collectors.groupingBy(StudentLessonExaminationDetail::getUserId,
|
|
|
Collectors.collectingAndThen(Collectors.toList(), e -> e.get(0))));
|
|
|
for (StudentLessonExaminationDto dto : dataList) {
|
|
|
StudentLessonExaminationDetail detail = examinationIdMap.get(dto.getUserId());
|
|
|
if (detail != null) {
|
|
|
- dto.setStudentLessonExaminationDetail(detail);
|
|
|
+ StudentLessonExaminationDetailDto detailDto = JSON.parseObject(JSON.toJSONString(detail), StudentLessonExaminationDetailDto.class);
|
|
|
+ if(detail.getMusicScoreId() != null){
|
|
|
+ SysMusicScore musicScore = musicScoreMap.get(detail.getMusicScoreId().intValue());
|
|
|
+ detailDto.setMusicScoreName(musicScore.getName());
|
|
|
+ }
|
|
|
+ dto.setStudentLessonExaminationDetail(detailDto);
|
|
|
}
|
|
|
}
|
|
|
}
|