|
@@ -1,13 +1,5 @@
|
|
package com.qmth.themis.business.service.impl;
|
|
package com.qmth.themis.business.service.impl;
|
|
|
|
|
|
-import java.util.Date;
|
|
|
|
-import java.util.Map;
|
|
|
|
-
|
|
|
|
-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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.qmth.themis.business.cache.RedisKeyHelper;
|
|
import com.qmth.themis.business.cache.RedisKeyHelper;
|
|
import com.qmth.themis.business.cache.bean.ExamRecordCacheBean;
|
|
import com.qmth.themis.business.cache.bean.ExamRecordCacheBean;
|
|
@@ -15,6 +7,14 @@ import com.qmth.themis.business.dao.TOeExamRecordMapper;
|
|
import com.qmth.themis.business.entity.TOeExamRecord;
|
|
import com.qmth.themis.business.entity.TOeExamRecord;
|
|
import com.qmth.themis.business.service.TOeExamRecordService;
|
|
import com.qmth.themis.business.service.TOeExamRecordService;
|
|
import com.qmth.themis.business.util.RedisUtil;
|
|
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: 考试记录 服务实现类
|
|
* @Description: 考试记录 服务实现类
|
|
@@ -28,37 +28,77 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
|
|
|
|
@Resource
|
|
@Resource
|
|
TOeExamRecordMapper tOeExamRecordMapper;
|
|
TOeExamRecordMapper tOeExamRecordMapper;
|
|
-
|
|
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
RedisUtil redisUtil;
|
|
RedisUtil redisUtil;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Map getUnFinishExam(Long studentId) {
|
|
public Map getUnFinishExam(Long studentId) {
|
|
- return tOeExamRecordMapper.getUnFinishExam(studentId);
|
|
|
|
|
|
+ Map unFinishExam = tOeExamRecordMapper.getUnFinishExam(studentId);
|
|
|
|
+ if (Objects.nonNull(unFinishExam)) {
|
|
|
|
+ Map finalMap = new HashMap();
|
|
|
|
+ Map<String, Object> waitingMap = new HashMap();
|
|
|
|
+ waitingMap.put("id", unFinishExam.get("id"));
|
|
|
|
+ waitingMap.put("name", unFinishExam.get("name"));
|
|
|
|
+ waitingMap.put("mode", unFinishExam.get("mode"));
|
|
|
|
+ waitingMap.put("preNotice", unFinishExam.get("preNotice"));
|
|
|
|
+ waitingMap.put("preNoticeStaySeconds", unFinishExam.get("preNoticeStaySeconds"));
|
|
|
|
+ waitingMap.put("postNotice", unFinishExam.get("postNotice"));
|
|
|
|
+ finalMap.put("waiting", waitingMap);
|
|
|
|
+
|
|
|
|
+ Map<String, Object> activityMap = new HashMap();
|
|
|
|
+ activityMap.put("recordId", unFinishExam.get("recordId"));
|
|
|
|
+ activityMap.put("minDurationSeconds", unFinishExam.get("minDurationSeconds"));
|
|
|
|
+ activityMap.put("clientVideoPush", unFinishExam.get("clientVideoPush"));
|
|
|
|
+ activityMap.put("cameraPhotoUpload", unFinishExam.get("cameraPhotoUpload"));
|
|
|
|
+ activityMap.put("courseCode", unFinishExam.get("courseCode"));
|
|
|
|
+ activityMap.put("wxappPhotoUpload", unFinishExam.get("wxappPhotoUpload"));
|
|
|
|
+ activityMap.put("inProcessLivenessRetryCount", unFinishExam.get("inProcessLivenessRetryCount"));
|
|
|
|
+ activityMap.put("examStudentId", unFinishExam.get("examStudentId"));
|
|
|
|
+ activityMap.put("inProcessLivenessVerify", unFinishExam.get("inProcessLivenessVerify"));
|
|
|
|
+ activityMap.put("inProcessFaceStrangerIgnore", unFinishExam.get("inProcessFaceStrangerIgnore"));
|
|
|
|
+ activityMap.put("wxappVideoRecord", unFinishExam.get("wxappVideoRecord"));
|
|
|
|
+ activityMap.put("inProcessFaceVerify", unFinishExam.get("inProcessFaceVerify"));
|
|
|
|
+ activityMap.put("courseName", unFinishExam.get("courseName"));
|
|
|
|
+ activityMap.put("wxappVideoPush", unFinishExam.get("wxappVideoPush"));
|
|
|
|
+ activityMap.put("inProcessLivenessIntervalSeconds", unFinishExam.get("inProcessLivenessIntervalSeconds"));
|
|
|
|
+ activityMap.put("prepareSeconds", unFinishExam.get("prepareSeconds"));
|
|
|
|
+ activityMap.put("fouceFinish", unFinishExam.get("fouceFinish"));
|
|
|
|
+ activityMap.put("entryAuthenticationPolicy", unFinishExam.get("entryAuthenticationPolicy"));
|
|
|
|
+ activityMap.put("maxDurationSeconds", unFinishExam.get("maxDurationSeconds"));
|
|
|
|
+ activityMap.put("examCount", unFinishExam.get("examCount"));
|
|
|
|
+ activityMap.put("inProcessLivenessJudgePolicy", unFinishExam.get("inProcessLivenessJudgePolicy"));
|
|
|
|
+ activityMap.put("id", unFinishExam.get("examActivityId"));
|
|
|
|
+
|
|
|
|
+ finalMap.put("activity", activityMap);
|
|
|
|
+ return finalMap;
|
|
|
|
+ } else {
|
|
|
|
+ return unFinishExam;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
-
|
|
|
|
- @Transactional
|
|
|
|
|
|
+
|
|
|
|
+ @Transactional
|
|
@Override
|
|
@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();
|
|
|
|
+ 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();
|
|
}
|
|
}
|
|
}
|
|
}
|