|
@@ -78,30 +78,30 @@ public class ReportSubjectTeacherClassServiceImpl extends BaseQueryService<Repor
|
|
|
|
|
|
@Override
|
|
|
public void saveReportSubjectTeacherClassData(Integer examId, String subjectCode) {
|
|
|
- ExamSubject examSubject = examSubjectDao.findByExamIdAndCode(examId, subjectCode);
|
|
|
- List<Object[]> reportSubjectTeacherClassList = reportSubjectTeacherClassDao.queryReportSubjectTeacherClassData(
|
|
|
- examId, subjectCode);
|
|
|
- Double subjectAvgScore = reportSubjectDao.querySubjectAvgScore(examId, subjectCode);
|
|
|
- for (Object[] rs : reportSubjectTeacherClassList) {
|
|
|
- ReportSubjectTeacherClass teacherClass = new ReportSubjectTeacherClass();
|
|
|
- teacherClass.setExamId(examId);
|
|
|
- teacherClass.setSubjectCode(subjectCode);
|
|
|
- teacherClass.setSubjectName(examSubject.getName());
|
|
|
- teacherClass.setTeacherName(rs[0].toString());
|
|
|
- teacherClass.setClassName(rs[1].toString());
|
|
|
- teacherClass.setRealityCount(Integer.parseInt(rs[2].toString()));
|
|
|
- teacherClass.setPassCount(Integer.parseInt(rs[3].toString()));
|
|
|
- teacherClass.setExcellentCount(Integer.parseInt(rs[4].toString()));
|
|
|
- teacherClass.setMaxScore(Double.parseDouble(rs[5].toString()));
|
|
|
- teacherClass.setMinScore(Double.parseDouble(rs[6].toString()));
|
|
|
- teacherClass.setPassRate(DoubleUtil.div(teacherClass.getPassCount(), teacherClass.getRealityCount(), 2));
|
|
|
- teacherClass.setExcellentRate(DoubleUtil.div(teacherClass.getExcellentCount(),
|
|
|
- teacherClass.getRealityCount(), 2));
|
|
|
- teacherClass.setAvgScore(DoubleUtil.format(Double.parseDouble(rs[7].toString()), "0.00"));
|
|
|
- teacherClass.setRelativeAvgScore(DoubleUtil.format(Double.parseDouble(rs[7].toString()) - subjectAvgScore,
|
|
|
- "0.00"));
|
|
|
- reportSubjectTeacherClassDao.save(teacherClass);
|
|
|
- }
|
|
|
+// ExamSubject examSubject = examSubjectDao.findByExamIdAndCode(examId, subjectCode);
|
|
|
+// List<Object[]> reportSubjectTeacherClassList = reportSubjectTeacherClassDao.queryReportSubjectTeacherClassData(
|
|
|
+// examId, subjectCode);
|
|
|
+// Double subjectAvgScore = reportSubjectDao.querySubjectAvgScore(examId, subjectCode);
|
|
|
+// for (Object[] rs : reportSubjectTeacherClassList) {
|
|
|
+// ReportSubjectTeacherClass teacherClass = new ReportSubjectTeacherClass();
|
|
|
+// teacherClass.setExamId(examId);
|
|
|
+// teacherClass.setSubjectCode(subjectCode);
|
|
|
+// teacherClass.setSubjectName(examSubject.getName());
|
|
|
+// teacherClass.setTeacherName(rs[0].toString());
|
|
|
+// teacherClass.setClassName(rs[1].toString());
|
|
|
+// teacherClass.setRealityCount(Integer.parseInt(rs[2].toString()));
|
|
|
+// teacherClass.setPassCount(Integer.parseInt(rs[3].toString()));
|
|
|
+// teacherClass.setExcellentCount(Integer.parseInt(rs[4].toString()));
|
|
|
+// teacherClass.setMaxScore(Double.parseDouble(rs[5].toString()));
|
|
|
+// teacherClass.setMinScore(Double.parseDouble(rs[6].toString()));
|
|
|
+// teacherClass.setPassRate(DoubleUtil.div(teacherClass.getPassCount(), teacherClass.getRealityCount(), 2));
|
|
|
+// teacherClass.setExcellentRate(DoubleUtil.div(teacherClass.getExcellentCount(),
|
|
|
+// teacherClass.getRealityCount(), 2));
|
|
|
+// teacherClass.setAvgScore(DoubleUtil.format(Double.parseDouble(rs[7].toString()), "0.00"));
|
|
|
+// teacherClass.setRelativeAvgScore(DoubleUtil.format(Double.parseDouble(rs[7].toString()) - subjectAvgScore,
|
|
|
+// "0.00"));
|
|
|
+// reportSubjectTeacherClassDao.save(teacherClass);
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -109,18 +109,9 @@ public class ReportSubjectTeacherClassServiceImpl extends BaseQueryService<Repor
|
|
|
return reportSubjectTeacherClassDao.save(r);
|
|
|
}
|
|
|
|
|
|
+ @Transactional
|
|
|
@Override
|
|
|
public void updateRelativeAvgScore(Integer examId) {
|
|
|
- ReportSubjectQuery query = new ReportSubjectQuery();
|
|
|
- query.setExamId(examId);
|
|
|
- query.setPageNumber(1);
|
|
|
- query.setPageSize(Integer.MAX_VALUE);
|
|
|
- List<ReportSubjectTeacherClass> list = findByQuery(query);
|
|
|
- for (ReportSubjectTeacherClass reportSubjectTeacherClass : list) {
|
|
|
- Double subjectAvgScore = reportSubjectDao.querySubjectAvgScore(examId,
|
|
|
- reportSubjectTeacherClass.getSubjectCode());
|
|
|
- reportSubjectTeacherClass.setRelativeAvgScore(reportSubjectTeacherClass.getAvgScore() - subjectAvgScore);
|
|
|
- reportSubjectTeacherClassDao.save(reportSubjectTeacherClass);
|
|
|
- }
|
|
|
+ reportSubjectTeacherClassDao.updateRelativeAvgScore(examId);
|
|
|
}
|
|
|
}
|