|
@@ -949,16 +949,16 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
/**
|
|
/**
|
|
* 设置断点信息
|
|
* 设置断点信息
|
|
*
|
|
*
|
|
- * @param alreadyBreakCount
|
|
|
|
* @param recordId
|
|
* @param recordId
|
|
- * @param examActivityId
|
|
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
@Transactional
|
|
@Transactional
|
|
- public void setExamBreak(Integer alreadyBreakCount, Long recordId, Long examActivityId) {
|
|
|
|
|
|
+ public void setExamBreak(Long recordId) {
|
|
try {
|
|
try {
|
|
if (redisUtil.lock(SystemConstant.REDIS_LOCK_EXAM_BREAK_PREFIX + recordId, SystemConstant.REDIS_LOCK_EXAM_BREAK_TIME_OUT)) {
|
|
if (redisUtil.lock(SystemConstant.REDIS_LOCK_EXAM_BREAK_PREFIX + recordId, SystemConstant.REDIS_LOCK_EXAM_BREAK_TIME_OUT)) {
|
|
|
|
+ Integer alreadyBreakCount = Objects.isNull(ExamRecordCacheUtil.getAlreadyBreakCount(recordId)) ? 0 : ExamRecordCacheUtil.getAlreadyBreakCount(recordId);
|
|
alreadyBreakCount++;
|
|
alreadyBreakCount++;
|
|
|
|
+ Long examActivityId = ExamRecordCacheUtil.getExamActivityId(recordId);
|
|
Long breakId = Constants.idGen.next();
|
|
Long breakId = Constants.idGen.next();
|
|
ExamRecordCacheUtil.setLastBreakId(recordId, breakId, false);
|
|
ExamRecordCacheUtil.setLastBreakId(recordId, breakId, false);
|
|
ExamRecordCacheUtil.setStatus(recordId, ExamRecordStatusEnum.BREAK_OFF, false);
|
|
ExamRecordCacheUtil.setStatus(recordId, ExamRecordStatusEnum.BREAK_OFF, false);
|
|
@@ -1023,7 +1023,7 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
examService.finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
|
|
examService.finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
|
|
} else {
|
|
} else {
|
|
if (setBreak) {
|
|
if (setBreak) {
|
|
- this.setExamBreak(alreadyBreakCount, recordId, examStudentCacheBean.getExamActivityId());
|
|
|
|
|
|
+ this.setExamBreak(recordId);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|