|
@@ -32,10 +32,13 @@ public class ExamSubjectServiceImpl extends BaseQueryService<ExamSubject> implem
|
|
|
|
|
|
@Autowired
|
|
|
private ExamSubjectDao subjectDao;
|
|
|
+
|
|
|
@Autowired
|
|
|
private ExamStudentDao examStudentDao;
|
|
|
+
|
|
|
@PersistenceContext
|
|
|
private EntityManager entityManager;
|
|
|
+
|
|
|
@Transactional
|
|
|
@Override
|
|
|
// @CachePut(value = "exam_subject_cache", key =
|
|
@@ -163,6 +166,9 @@ public class ExamSubjectServiceImpl extends BaseQueryService<ExamSubject> implem
|
|
|
if (query.getUploadCountEqual() != null) {
|
|
|
predicates.add(cb.equal(root.get("uploadCount").as(Integer.class), query.getUploadCountEqual()));
|
|
|
}
|
|
|
+ if (query.getSelective() != null) {
|
|
|
+ predicates.add(cb.equal(root.get("selective"), query.getSelective()));
|
|
|
+ }
|
|
|
if (StringUtils.isNotBlank(query.getCodeIn())) {
|
|
|
String[] list = query.getCodeIn().split(",");
|
|
|
if (list.length > 0) {
|
|
@@ -213,21 +219,21 @@ public class ExamSubjectServiceImpl extends BaseQueryService<ExamSubject> implem
|
|
|
subjectDao.updateTrialCount(examId, subjectCode, trialCount);
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public int findMaxInspectRound(int examId, Set<String> subjectCodes) {
|
|
|
- StringBuilder sql = new StringBuilder("select max(s.inspect_round) from eb_exam_subject s ");
|
|
|
- sql.append(" where s.exam_id="+examId+" and s.code in ('"+StringUtils.join(subjectCodes,"','")+"')");
|
|
|
+ @Override
|
|
|
+ public int findMaxInspectRound(int examId, Set<String> subjectCodes) {
|
|
|
+ StringBuilder sql = new StringBuilder("select max(s.inspect_round) from eb_exam_subject s ");
|
|
|
+ sql.append(" where s.exam_id=" + examId + " and s.code in ('" + StringUtils.join(subjectCodes, "','") + "')");
|
|
|
Query countQuery = entityManager.createNativeQuery(sql.toString());
|
|
|
Object singleResult = countQuery.getResultList().get(0);
|
|
|
Integer count = singleResult == null ? 0 : Integer.valueOf(singleResult.toString());
|
|
|
return count;
|
|
|
- }
|
|
|
-
|
|
|
- @Transactional
|
|
|
- @Override
|
|
|
- public void nextInspectRound(int examId, String subjectCode) {
|
|
|
- subjectDao.nextInspectRound(examId,subjectCode);
|
|
|
- examStudentDao.cancelInspect(examId,subjectCode);
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Transactional
|
|
|
+ @Override
|
|
|
+ public void nextInspectRound(int examId, String subjectCode) {
|
|
|
+ subjectDao.nextInspectRound(examId, subjectCode);
|
|
|
+ examStudentDao.cancelInspect(examId, subjectCode);
|
|
|
+ }
|
|
|
|
|
|
}
|