|
@@ -1,6 +1,10 @@
|
|
|
package cn.com.qmth.markingaudit.service.impl;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -12,6 +16,9 @@ import com.qmth.boot.core.exception.StatusException;
|
|
|
|
|
|
import cn.com.qmth.markingaudit.bean.ExamDataQuery;
|
|
|
import cn.com.qmth.markingaudit.bean.ExamDataVo;
|
|
|
+import cn.com.qmth.markingaudit.bean.MarkingScoreDataQuery;
|
|
|
+import cn.com.qmth.markingaudit.bean.MarkingScoreDataVo;
|
|
|
+import cn.com.qmth.markingaudit.bean.MarkingScoreInfo;
|
|
|
import cn.com.qmth.markingaudit.bean.QuestionDataQuery;
|
|
|
import cn.com.qmth.markingaudit.bean.QuestionDataVo;
|
|
|
import cn.com.qmth.markingaudit.bean.StudentDataQuery;
|
|
@@ -72,4 +79,27 @@ public class MonitorServiceImpl implements MonitorService {
|
|
|
return monitorDao.questionData(req);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<MarkingScoreDataVo> markingScoreData(MarkingScoreDataQuery req) {
|
|
|
+ checkExamIdValid(req.getExamId(), req.getSchoolCode());
|
|
|
+ List<MarkingScoreDataVo> ret = monitorDao.markingScoreData(req);
|
|
|
+ if (CollectionUtils.isNotEmpty(ret)) {
|
|
|
+ List<Integer> ids = ret.stream().map(e -> e.getId()).collect(Collectors.toList());
|
|
|
+ List<MarkingScoreInfo> infos = monitorDao.markingScoreInfo(ids);
|
|
|
+ Map<Integer, List<MarkingScoreInfo>> map = new HashMap<>();
|
|
|
+ for (MarkingScoreInfo info : infos) {
|
|
|
+ List<MarkingScoreInfo> tem = map.get(info.getStudentId());
|
|
|
+ if (tem == null) {
|
|
|
+ tem = new ArrayList<>();
|
|
|
+ map.put(info.getStudentId(), tem);
|
|
|
+ }
|
|
|
+ tem.add(info);
|
|
|
+ }
|
|
|
+ for (MarkingScoreDataVo vo : ret) {
|
|
|
+ vo.setExamInfo(map.get(vo.getId()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+
|
|
|
}
|