|
@@ -117,26 +117,32 @@ public class ExaminationBasicServiceImpl extends BaseServiceImpl<Long, Examinati
|
|
|
|
|
|
@Override
|
|
|
public void updateExamStatus() {
|
|
|
- List<ExaminationBasic> needUpdateStatusExams = examinationBasicDao.getNeedUpdateStatusExams();
|
|
|
- if (CollectionUtils.isEmpty(needUpdateStatusExams)) {
|
|
|
+ List<ExaminationBasic> exams = examinationBasicDao.getNeedUpdateStatusExams();
|
|
|
+ if (CollectionUtils.isEmpty(exams)) {
|
|
|
return;
|
|
|
}
|
|
|
Date now = new Date();
|
|
|
- for (ExaminationBasic needUpdateStatusExam : needUpdateStatusExams) {
|
|
|
- if (now.compareTo(needUpdateStatusExam.getEnrollStartTime()) >= 0) {
|
|
|
- needUpdateStatusExam.setStatus(ExamStatusEnum.APPLYING);
|
|
|
- examLifecycleLogDao.insert(new ExamLifecycleLog(needUpdateStatusExam.getId().intValue(), "报名已开启", null, "定时任务自动更新"));
|
|
|
+ for (ExaminationBasic exam : exams) {
|
|
|
+ if (!ExamStatusEnum.APPLYING.equals(exam.getStatus())
|
|
|
+ &&now.compareTo(exam.getEnrollStartTime()) >= 0
|
|
|
+ && now.compareTo(exam.getEnrollEndTime()) <= 0) {
|
|
|
+ exam.setStatus(ExamStatusEnum.APPLYING);
|
|
|
+ examLifecycleLogDao.insert(new ExamLifecycleLog(exam.getId().intValue(), "报名已开启", null, "定时任务自动更新"));
|
|
|
+ continue;
|
|
|
}
|
|
|
- if (now.compareTo(needUpdateStatusExam.getEnrollEndTime()) >= 0) {
|
|
|
- needUpdateStatusExam.setStatus(ExamStatusEnum.APPLIED);
|
|
|
- examLifecycleLogDao.insert(new ExamLifecycleLog(needUpdateStatusExam.getId().intValue(), "报名已结束", null,"定时任务自动更新"));
|
|
|
+ if (!ExamStatusEnum.APPLIED.equals(exam.getStatus())
|
|
|
+ &&now.compareTo(exam.getEnrollEndTime()) >= 0) {
|
|
|
+ exam.setStatus(ExamStatusEnum.APPLIED);
|
|
|
+ examLifecycleLogDao.insert(new ExamLifecycleLog(exam.getId().intValue(), "报名已结束", null,"定时任务自动更新"));
|
|
|
+ continue;
|
|
|
}
|
|
|
- if (Objects.nonNull(needUpdateStatusExam.getActualExamEndTime())
|
|
|
- &&now.compareTo(needUpdateStatusExam.getActualExamEndTime()) >= 0) {
|
|
|
- needUpdateStatusExam.setStatus(ExamStatusEnum.EXAM_END);
|
|
|
+ if (Objects.nonNull(exam.getActualExamEndTime())
|
|
|
+ &&ExamStatusEnum.EXAM_END.equals(exam.getStatus())
|
|
|
+ &&now.compareTo(exam.getActualExamEndTime()) >= 0) {
|
|
|
+ exam.setStatus(ExamStatusEnum.EXAM_END);
|
|
|
}
|
|
|
}
|
|
|
- examinationBasicDao.batchUpdate(needUpdateStatusExams);
|
|
|
+ examinationBasicDao.batchUpdate(exams);
|
|
|
}
|
|
|
|
|
|
@Override
|