|
|
@@ -191,7 +191,10 @@ public class SmartEvaluateStudentController2 implements SmartEvaluateStudentCont
|
|
|
for (SmartTermTemplate stt : smartSubjectTemplate.getExamTypes()) {
|
|
|
examTypes.add(stt.getId());
|
|
|
}
|
|
|
- List<SmartScore> scores = smartScoreService.querySmartScoresByex(smartSubjectTemplate.getTermId(), smartSubjectTemplate.getGradeId(), examTypes);
|
|
|
+
|
|
|
+ List<String> oldExamTypes =Arrays.asList(st.getExamType().split(","));
|
|
|
+
|
|
|
+ List<SmartScore> scores = smartScoreService.querySmartScoresByexs(smartSubjectTemplate.getTermId(), smartSubjectTemplate.getGradeId(), oldExamTypes);
|
|
|
List<Integer> userIds = scores.stream().map(SmartScore::getUserId).distinct().collect(Collectors.toList());
|
|
|
List<SmartEvaluateStudent> students = smartEvaluateStudentService.getEvaluateStudents(userIds, smartSubjectTemplate.getTermId());
|
|
|
List<SmartEvaluateStudent> updateStudents = new ArrayList<>();
|
|
|
@@ -203,8 +206,10 @@ public class SmartEvaluateStudentController2 implements SmartEvaluateStudentCont
|
|
|
if (userScores != null && userScores.size() > 0) {
|
|
|
Optional<SmartEvaluateStudent> oStudent = students.stream().filter(e -> e.getTermId().equals(smartSubjectTemplate.getTermId()) && e.getUserId().equals(userId)).findFirst();
|
|
|
for (SmartScore us : userScores) {
|
|
|
- totalScoreNum = totalScoreNum.add(new BigDecimal(us.getScore()));
|
|
|
- scoreNum++;
|
|
|
+ if(examTypes.contains(us.getExamType())){
|
|
|
+ totalScoreNum = totalScoreNum.add(new BigDecimal(us.getScore()));
|
|
|
+ scoreNum++;
|
|
|
+ }
|
|
|
}
|
|
|
if (oStudent != null && oStudent.isPresent()) {
|
|
|
oStudent.get().setScoreNum(totalScoreNum.doubleValue());
|