|
@@ -58,13 +58,16 @@ public class TrainingExamPaperServiceImpl extends ServiceImpl<ExamPaperDao, Exam
|
|
|
return R.ok();
|
|
|
}
|
|
|
// 存放考题类型和所需要的题目数量
|
|
|
- Map<String, Long> subjectTypeAndNum = paperSubjectAutoDos.stream().collect(Collectors.groupingBy(info -> info.getSubjecttype(), Collectors.counting()));
|
|
|
+ Map<String, Long> subjectTypeAndNum = paperSubjectAutoDos.stream().collect(Collectors.groupingBy(info -> info.getSubjecttype(),
|
|
|
+ Collectors.summingLong(PaperSubjectAutoDo::getThemesubjectnum)));
|
|
|
if (paperSubjectAssignDos != null && !paperSubjectAssignDos.isEmpty()) {
|
|
|
- Map<String, Long> collect = paperSubjectAssignDos.stream().collect(Collectors.groupingBy(info -> info.getSubjecttype(), Collectors.counting()));
|
|
|
+ Map<String, Long> collect = paperSubjectAssignDos.stream().collect(Collectors.groupingBy(info -> info.getSubjecttype(),
|
|
|
+ Collectors.counting()));
|
|
|
collect.forEach((key, value) -> subjectTypeAndNum.merge(key, value, (prev, one) -> prev + one));
|
|
|
}
|
|
|
// 获取课程Id
|
|
|
List<String> courseThemeId = paperSubjectAutoDos.stream().map(PaperSubjectAutoDo::getCoursethemeid).collect(Collectors.toList());
|
|
|
+ courseThemeId.addAll(paperSubjectAssignDos.stream().map(PaperSubjectAssignDo::getCourseid).collect(Collectors.toList()));
|
|
|
// 获取随机题目中课程主题的所有题目信息
|
|
|
List<SubjectDo> subjectDoList = subjectDao.selectInfoByCourseIds(courseThemeId);
|
|
|
// 获取所有课程主题下 各类型题目的数量
|
|
@@ -142,7 +145,7 @@ public class TrainingExamPaperServiceImpl extends ServiceImpl<ExamPaperDao, Exam
|
|
|
// 获取固定题目中取出的题目数量
|
|
|
assignSubjectNum = (int) paperSubjectAssignDos
|
|
|
.stream()
|
|
|
- .filter(assignDo -> assignDo.getCourseid().contains(courseId) && assignDo.getSubjecttype().equals(subjectType))
|
|
|
+ .filter(assignDo -> courseId.equals(assignDo.getCourseid()) && assignDo.getSubjecttype().equals(subjectType))
|
|
|
.count();
|
|
|
}
|
|
|
// 获取题库中当前课程主题下有多少道题目类型相同的题
|