|
@@ -1,5 +1,15 @@
|
|
|
package com.qmth.themis.business.service.impl;
|
|
|
|
|
|
+import java.util.Date;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.Objects;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.qmth.themis.business.cache.RedisKeyHelper;
|
|
|
import com.qmth.themis.business.cache.bean.ExamRecordCacheBean;
|
|
@@ -7,14 +17,6 @@ import com.qmth.themis.business.dao.TOeExamRecordMapper;
|
|
|
import com.qmth.themis.business.entity.TOeExamRecord;
|
|
|
import com.qmth.themis.business.service.TOeExamRecordService;
|
|
|
import com.qmth.themis.business.util.RedisUtil;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
-
|
|
|
-import javax.annotation.Resource;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
|
|
|
/**
|
|
|
* @Description: 考试记录 服务实现类
|
|
@@ -86,28 +88,67 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- @Transactional
|
|
|
+ @Transactional
|
|
|
@Override
|
|
|
- public Long saveByPrepare(Long examId, Long examActivityId, Long examStudentId, Long paperId, Integer serialNumber) {
|
|
|
- TOeExamRecord er = new TOeExamRecord();
|
|
|
- er.setExamId(examId);
|
|
|
- er.setExamActivityId(examActivityId);
|
|
|
- er.setExamStudentId(examStudentId);
|
|
|
- er.setPaperId(paperId);
|
|
|
- er.setSerialNumber(serialNumber);
|
|
|
- er.setFirstPrepareTime(new Date());
|
|
|
- er.setStatus(0);
|
|
|
- saveOrUpdate(er);
|
|
|
- ExamRecordCacheBean erCache = new ExamRecordCacheBean();
|
|
|
- erCache.setId(er.getId());
|
|
|
- erCache.setExamId(examId);
|
|
|
- erCache.setExamActivityId(examActivityId);
|
|
|
- erCache.setExamStudentId(examStudentId);
|
|
|
- erCache.setPaperId(paperId);
|
|
|
- erCache.setSerialNumber(serialNumber);
|
|
|
- erCache.setFirstPrepareTime(new Date());
|
|
|
- erCache.setStatus(0);
|
|
|
- redisUtil.set(RedisKeyHelper.examRecordCacheKey(er.getId()), erCache);
|
|
|
- return er.getId();
|
|
|
+ public Long saveByPrepare(Long examId,Long examActivityId,Long examStudentId,Long paperId,Integer serialNumber) {
|
|
|
+ TOeExamRecord er=new TOeExamRecord();
|
|
|
+ er.setExamId(examId);
|
|
|
+ er.setExamActivityId(examActivityId);
|
|
|
+ er.setExamStudentId(examStudentId);
|
|
|
+ er.setPaperId(paperId);
|
|
|
+ er.setSerialNumber(serialNumber);
|
|
|
+ er.setFirstPrepareTime(new Date());
|
|
|
+ er.setStatus(0);
|
|
|
+ saveOrUpdate(er);
|
|
|
+ ExamRecordCacheBean erCache=new ExamRecordCacheBean();
|
|
|
+ copy(erCache, er);
|
|
|
+ redisUtil.set(RedisKeyHelper.examRecordCacheKey(er.getId()), erCache);
|
|
|
+ return er.getId();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private void copy(ExamRecordCacheBean tb,TOeExamRecord sb) {
|
|
|
+ tb.setId(sb.getId());
|
|
|
+ tb.setExamId(sb.getExamId());
|
|
|
+ tb.setExamActivityId(tb.getExamActivityId());
|
|
|
+ tb.setPaperId(sb.getPaperId());
|
|
|
+ tb.setAnswerPath(sb.getAnswerPath());
|
|
|
+ tb.setStatus(sb.getStatus());
|
|
|
+ tb.setFirstPrepareTime(sb.getFirstPrepareTime());
|
|
|
+ tb.setFirstStartTime(sb.getFirstStartTime());
|
|
|
+ tb.setLastPrepareTime(sb.getLastPrepareTime());
|
|
|
+ tb.setLastBreakTime(sb.getLastBreakTime());
|
|
|
+ tb.setLastStartTime(sb.getLastStartTime());
|
|
|
+ tb.setLeftBreakResumeCount(sb.getLeftBreakResumeCount());
|
|
|
+ tb.setClientCurrentIp(sb.getClientCurrentIp());
|
|
|
+ tb.setClientLastSyncTime(sb.getClientLastSyncTime());
|
|
|
+ tb.setClientVideoPushKey(sb.getClientVideoPushKey());
|
|
|
+ tb.setClientVideoPushStatus(sb.getClientVideoPushStatus());
|
|
|
+ tb.setClientWebsocketId(sb.getClientWebsocketId());
|
|
|
+ tb.setClientWebsocketStatus(sb.getClientWebsocketStatus());
|
|
|
+ tb.setWxappLastSyncTime(sb.getWxappLastSyncTime());
|
|
|
+ tb.setWarningCount(sb.getWarningCount());
|
|
|
+ tb.setWxappVideoPushKey(sb.getWxappVideoPushKey());
|
|
|
+ tb.setWxappVideoPushStatus(sb.getWxappVideoPushStatus());
|
|
|
+ tb.setWxappWebsocketId(sb.getWxappWebsocketId());
|
|
|
+ tb.setWxappWebsocketStatus(sb.getWxappWebsocketStatus());
|
|
|
+ tb.setAnswerProgress(sb.getAnswerProgress());
|
|
|
+ tb.setDurationSeconds(sb.getDurationSeconds());
|
|
|
+ tb.setFinishTime(sb.getFinishTime());
|
|
|
+ tb.setFinishType(sb.getFinishType());
|
|
|
+ tb.setWarningCount(sb.getWarningCount());
|
|
|
+ tb.setReviewResult(sb.getReviewResult());
|
|
|
+ tb.setObjectiveScore(sb.getObjectiveScore());
|
|
|
+ tb.setPaperDownload(sb.getPaperDownload());
|
|
|
+ tb.setBreachStatus(sb.getBreachStatus());
|
|
|
+ tb.setPaperStruct(sb.getPaperStruct());
|
|
|
+ tb.setPaperStructUpload(sb.getPaperStructUpload());
|
|
|
+ tb.setSerialNumber(sb.getSerialNumber());
|
|
|
+ tb.setLastBreakId(sb.getLastBreakId());
|
|
|
+ tb.setEntryAuthenticationId(sb.getEntryAuthenticationId());
|
|
|
+ tb.setEntryAuthenticationResult(sb.getEntryAuthenticationResult());
|
|
|
+ tb.setInProcessFaceVerifyStatus(sb.getInProcessFaceVerifyStatus());
|
|
|
+ tb.setInProcessLivenessVerifyCount(sb.getInProcessLivenessVerifyCount());
|
|
|
+ tb.setInProcessLivenessVerifyStatus(sb.getInProcessLivenessVerifyStatus());
|
|
|
}
|
|
|
}
|