|
@@ -99,7 +99,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param orgId
|
|
* @param orgId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings({ "rawtypes", "unchecked" })
|
|
|
|
+ @Override
|
|
public Map getUnFinishExam(Long studentId, Long examId, Long orgId) {
|
|
public Map getUnFinishExam(Long studentId, Long examId, Long orgId) {
|
|
TEExamUnFinishDto teExamUnFinishDto = tOeExamRecordMapper.getUnFinishExam(studentId, examId, orgId);
|
|
TEExamUnFinishDto teExamUnFinishDto = tOeExamRecordMapper.getUnFinishExam(studentId, examId, orgId);
|
|
if (Objects.nonNull(teExamUnFinishDto)) {
|
|
if (Objects.nonNull(teExamUnFinishDto)) {
|
|
@@ -192,163 +193,163 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
/**
|
|
/**
|
|
* 计算客观分
|
|
* 计算客观分
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
- public void calculateObjectiveScore(Map<String, Object> param) {
|
|
|
|
- Long recordId = (Long) param.get("recordId");
|
|
|
|
- Integer mainNumber = (Integer) param.get("mainNumber");
|
|
|
|
- Integer subNumber = (Integer) param.get("subNumber");
|
|
|
|
- Integer subIndex = (Integer) param.get("subIndex");
|
|
|
|
- Long paperId = ExamRecordCacheUtil.getPaperId(recordId);
|
|
|
|
- String key = RedisKeyHelper.examAnswerHashKey(mainNumber, subNumber, subIndex);
|
|
|
|
-
|
|
|
|
- //考生作答缓存
|
|
|
|
- ExamStudentAnswerCacheBean answer = (ExamStudentAnswerCacheBean) redisUtil
|
|
|
|
- .get(RedisKeyHelper.examAnswerKey(recordId), key);
|
|
|
|
- if (answer == null) {
|
|
|
|
- log.error("no ExamStudentAnswerCacheBean for calculateObjectiveScore recordId:" + recordId + " key:" + key);
|
|
|
|
-
|
|
|
|
- // 计算客观分总分
|
|
|
|
- calculateTotalObjectiveScore(param);
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
- //整卷客观题标答缓存集合
|
|
|
|
- Map<String, ObjectiveAnswerCacheBean> map = examPaperService.getObjectiveAnswerCacheBean(paperId);
|
|
|
|
- if (map == null || map.size() == 0) {
|
|
|
|
- log.info("no ObjectiveAnswerCacheBean map for calculateObjectiveScore recordId:" + recordId + " paperId:"
|
|
|
|
- + paperId);
|
|
|
|
- // 更新分数
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- redisUtil.set(RedisKeyHelper.examAnswerKey(recordId), key, answer);
|
|
|
|
-
|
|
|
|
- // 计算客观分总分
|
|
|
|
- calculateTotalObjectiveScore(param);
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
- //客观题标答缓存
|
|
|
|
- ObjectiveAnswerCacheBean cb = map.get(key);
|
|
|
|
- if (cb == null) {
|
|
|
|
- log.info("no ObjectiveAnswerCacheBean for calculateObjectiveScore recordId:" + recordId + " key:" + key);
|
|
|
|
- // 更新分数
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- redisUtil.set(RedisKeyHelper.examAnswerKey(recordId), key, answer);
|
|
|
|
-
|
|
|
|
- // 计算客观分总分
|
|
|
|
- calculateTotalObjectiveScore(param);
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (cb.getStructType().intValue() == 1) {
|
|
|
|
- if (checkSingleChoice(answer.getAnswer(), cb.getChoiceAnswer())) {
|
|
|
|
- answer.setScore(cb.getScore());
|
|
|
|
- } else {
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (cb.getStructType().intValue() == 2) {
|
|
|
|
- ExamCacheBean ec = examService.getExamCacheBean(ExamRecordCacheUtil.getExamId(recordId));
|
|
|
|
- int r = checkMultipleChoice(answer.getAnswer(), cb.getChoiceAnswer());
|
|
|
|
- if (ec.getObjectiveScorePolicy().equals(ObjectiveScorePolicyEnum.EQUAL)) {// 全对给分
|
|
|
|
- if (r == 1) {
|
|
|
|
- answer.setScore(cb.getScore());
|
|
|
|
- } else {
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (ec.getObjectiveScorePolicy().equals(ObjectiveScorePolicyEnum.PARTIAL)) {// 漏选半分
|
|
|
|
- if (r == 1) {
|
|
|
|
- answer.setScore(cb.getScore());
|
|
|
|
- } else if (r == 0) {
|
|
|
|
- BigDecimal b = new BigDecimal(cb.getScore()).divide(new BigDecimal("2"), 1, BigDecimal.ROUND_UP);
|
|
|
|
- answer.setScore(b.doubleValue());
|
|
|
|
- } else {
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (cb.getStructType().intValue() == 3) {
|
|
|
|
- if (StringUtils.isNotBlank(answer.getAnswer())) {
|
|
|
|
- String answerStr = answer.getAnswer().replaceAll("\n", "");
|
|
|
|
- if (StringUtils.isNotBlank(answerStr)) {
|
|
|
|
- if (Boolean.parseBoolean(answerStr) == cb.getBoolAnswer().booleanValue()) {
|
|
|
|
- answer.setScore(cb.getScore());
|
|
|
|
- } else {
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (answer.getScore() == null) {
|
|
|
|
- log.info("小题分数为空,得分置为0," + "recordId:" + recordId + " questionKey:" + key);
|
|
|
|
- answer.setScore(0.0);
|
|
|
|
- }
|
|
|
|
- // 更新分数
|
|
|
|
- redisUtil.set(RedisKeyHelper.examAnswerKey(recordId), key, answer);
|
|
|
|
-
|
|
|
|
- // 计算客观分总分
|
|
|
|
- calculateTotalObjectiveScore(param);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @SuppressWarnings("unchecked")
|
|
|
|
- private void calculateTotalObjectiveScore(Map<String, Object> param) {
|
|
|
|
- Long recordId = (Long) param.get("recordId");
|
|
|
|
- Integer mainNumber = (Integer) param.get("mainNumber");
|
|
|
|
- Integer subNumber = (Integer) param.get("subNumber");
|
|
|
|
- Integer subIndex = (Integer) param.get("subIndex");
|
|
|
|
- String lockKey = SystemConstant.REDIS_LOCK_TOTAL_OBJECTIVE_SCORE_PREFIX + recordId;
|
|
|
|
- try {
|
|
|
|
- String key = RedisKeyHelper.examAnswerHashKey(mainNumber, subNumber, subIndex);
|
|
|
|
- Boolean lock = redisUtil.lock(lockKey, SystemConstant.REDIS_CACHE_TIME_OUT);
|
|
|
|
- if (lock) {
|
|
|
|
- log.info("calculateTotalObjectiveScore get lock sucss recordId:" + recordId + " key:" + key);
|
|
|
|
- Map<String, ExamStudentAnswerCacheBean> as = redisUtil
|
|
|
|
- .getHashEntries(RedisKeyHelper.examAnswerKey(recordId));
|
|
|
|
- if (as != null && as.size() > 0) {
|
|
|
|
- Double total = 0.0;
|
|
|
|
- for (ExamStudentAnswerCacheBean sa : as.values()) {
|
|
|
|
- if (sa.getObjective() != null && sa.getObjective()) {//是客观题
|
|
|
|
- if (sa.getScore() != null) {//有分值
|
|
|
|
- total = total + sa.getScore();
|
|
|
|
- } else {
|
|
|
|
- log.info(
|
|
|
|
- "calculateTotalObjectiveScore ExamStudentAnswerCacheBean Score is null recordId:"
|
|
|
|
- + recordId + " key:" + RedisKeyHelper
|
|
|
|
- .examAnswerHashKey(sa.getMainNumber(), sa.getSubNumber(),
|
|
|
|
- sa.getSubIndex()));
|
|
|
|
- total = null;
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (total != null) {
|
|
|
|
- ExamRecordCacheUtil.setObjectiveScore(recordId, total);
|
|
|
|
- this.sendExamRecordDataSaveMq(recordId, System.currentTimeMillis());
|
|
|
|
- } else {
|
|
|
|
- log.info("calculateTotalObjectiveScore total Score is null recordId:" + recordId + " key:"
|
|
|
|
- + key);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- log.info("calculateTotalObjectiveScore get lock faild recordId:" + recordId + " key:" + key);
|
|
|
|
- calculateObjectiveScoreMsg(recordId, mainNumber, subNumber, subIndex);
|
|
|
|
- }
|
|
|
|
- } finally {
|
|
|
|
- redisUtil.releaseLock(lockKey);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+// @Override
|
|
|
|
+// public void calculateObjectiveScore(Map<String, Object> param) {
|
|
|
|
+// Long recordId = (Long) param.get("recordId");
|
|
|
|
+// Integer mainNumber = (Integer) param.get("mainNumber");
|
|
|
|
+// Integer subNumber = (Integer) param.get("subNumber");
|
|
|
|
+// Integer subIndex = (Integer) param.get("subIndex");
|
|
|
|
+// Long paperId = ExamRecordCacheUtil.getPaperId(recordId);
|
|
|
|
+// String key = RedisKeyHelper.examAnswerHashKey(mainNumber, subNumber, subIndex);
|
|
|
|
+//
|
|
|
|
+// //考生作答缓存
|
|
|
|
+// ExamStudentAnswerCacheBean answer = (ExamStudentAnswerCacheBean) redisUtil
|
|
|
|
+// .get(RedisKeyHelper.examAnswerKey(recordId), key);
|
|
|
|
+// if (answer == null) {
|
|
|
|
+// log.error("no ExamStudentAnswerCacheBean for calculateObjectiveScore recordId:" + recordId + " key:" + key);
|
|
|
|
+//
|
|
|
|
+// // 计算客观分总分
|
|
|
|
+// calculateTotalObjectiveScore(param);
|
|
|
|
+// return;
|
|
|
|
+// }
|
|
|
|
+// //整卷客观题标答缓存集合
|
|
|
|
+// Map<String, ObjectiveAnswerCacheBean> map = examPaperService.getObjectiveAnswerCacheBean(paperId);
|
|
|
|
+// if (map == null || map.size() == 0) {
|
|
|
|
+// log.info("no ObjectiveAnswerCacheBean map for calculateObjectiveScore recordId:" + recordId + " paperId:"
|
|
|
|
+// + paperId);
|
|
|
|
+// // 更新分数
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// redisUtil.set(RedisKeyHelper.examAnswerKey(recordId), key, answer);
|
|
|
|
+//
|
|
|
|
+// // 计算客观分总分
|
|
|
|
+// calculateTotalObjectiveScore(param);
|
|
|
|
+// return;
|
|
|
|
+// }
|
|
|
|
+// //客观题标答缓存
|
|
|
|
+// ObjectiveAnswerCacheBean cb = map.get(key);
|
|
|
|
+// if (cb == null) {
|
|
|
|
+// log.info("no ObjectiveAnswerCacheBean for calculateObjectiveScore recordId:" + recordId + " key:" + key);
|
|
|
|
+// // 更新分数
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// redisUtil.set(RedisKeyHelper.examAnswerKey(recordId), key, answer);
|
|
|
|
+//
|
|
|
|
+// // 计算客观分总分
|
|
|
|
+// calculateTotalObjectiveScore(param);
|
|
|
|
+// return;
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// if (cb.getStructType().intValue() == 1) {
|
|
|
|
+// if (checkSingleChoice(answer.getAnswer(), cb.getChoiceAnswer())) {
|
|
|
|
+// answer.setScore(cb.getScore());
|
|
|
|
+// } else {
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// if (cb.getStructType().intValue() == 2) {
|
|
|
|
+// ExamCacheBean ec = examService.getExamCacheBean(ExamRecordCacheUtil.getExamId(recordId));
|
|
|
|
+// int r = checkMultipleChoice(answer.getAnswer(), cb.getChoiceAnswer());
|
|
|
|
+// if (ec.getObjectiveScorePolicy().equals(ObjectiveScorePolicyEnum.EQUAL)) {// 全对给分
|
|
|
|
+// if (r == 1) {
|
|
|
|
+// answer.setScore(cb.getScore());
|
|
|
|
+// } else {
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// if (ec.getObjectiveScorePolicy().equals(ObjectiveScorePolicyEnum.PARTIAL)) {// 漏选半分
|
|
|
|
+// if (r == 1) {
|
|
|
|
+// answer.setScore(cb.getScore());
|
|
|
|
+// } else if (r == 0) {
|
|
|
|
+// BigDecimal b = new BigDecimal(cb.getScore()).divide(new BigDecimal("2"), 1, BigDecimal.ROUND_UP);
|
|
|
|
+// answer.setScore(b.doubleValue());
|
|
|
|
+// } else {
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// if (cb.getStructType().intValue() == 3) {
|
|
|
|
+// if (StringUtils.isNotBlank(answer.getAnswer())) {
|
|
|
|
+// String answerStr = answer.getAnswer().replaceAll("\n", "");
|
|
|
|
+// if (StringUtils.isNotBlank(answerStr)) {
|
|
|
|
+// if (Boolean.parseBoolean(answerStr) == cb.getBoolAnswer().booleanValue()) {
|
|
|
|
+// answer.setScore(cb.getScore());
|
|
|
|
+// } else {
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// if (answer.getScore() == null) {
|
|
|
|
+// log.info("小题分数为空,得分置为0," + "recordId:" + recordId + " questionKey:" + key);
|
|
|
|
+// answer.setScore(0.0);
|
|
|
|
+// }
|
|
|
|
+// // 更新分数
|
|
|
|
+// redisUtil.set(RedisKeyHelper.examAnswerKey(recordId), key, answer);
|
|
|
|
+//
|
|
|
|
+// // 计算客观分总分
|
|
|
|
+// calculateTotalObjectiveScore(param);
|
|
|
|
+// }
|
|
|
|
+
|
|
|
|
+// @SuppressWarnings("unchecked")
|
|
|
|
+// private void calculateTotalObjectiveScore(Map<String, Object> param) {
|
|
|
|
+// Long recordId = (Long) param.get("recordId");
|
|
|
|
+// Integer mainNumber = (Integer) param.get("mainNumber");
|
|
|
|
+// Integer subNumber = (Integer) param.get("subNumber");
|
|
|
|
+// Integer subIndex = (Integer) param.get("subIndex");
|
|
|
|
+// String lockKey = SystemConstant.REDIS_LOCK_TOTAL_OBJECTIVE_SCORE_PREFIX + recordId;
|
|
|
|
+// try {
|
|
|
|
+// String key = RedisKeyHelper.examAnswerHashKey(mainNumber, subNumber, subIndex);
|
|
|
|
+// Boolean lock = redisUtil.lock(lockKey, SystemConstant.REDIS_CACHE_TIME_OUT);
|
|
|
|
+// if (lock) {
|
|
|
|
+// log.info("calculateTotalObjectiveScore get lock sucss recordId:" + recordId + " key:" + key);
|
|
|
|
+// Map<String, ExamStudentAnswerCacheBean> as = redisUtil
|
|
|
|
+// .getHashEntries(RedisKeyHelper.examAnswerKey(recordId));
|
|
|
|
+// if (as != null && as.size() > 0) {
|
|
|
|
+// Double total = 0.0;
|
|
|
|
+// for (ExamStudentAnswerCacheBean sa : as.values()) {
|
|
|
|
+// if (sa.getObjective() != null && sa.getObjective()) {//是客观题
|
|
|
|
+// if (sa.getScore() != null) {//有分值
|
|
|
|
+// total = total + sa.getScore();
|
|
|
|
+// } else {
|
|
|
|
+// log.info(
|
|
|
|
+// "calculateTotalObjectiveScore ExamStudentAnswerCacheBean Score is null recordId:"
|
|
|
|
+// + recordId + " key:" + RedisKeyHelper
|
|
|
|
+// .examAnswerHashKey(sa.getMainNumber(), sa.getSubNumber(),
|
|
|
|
+// sa.getSubIndex()));
|
|
|
|
+// total = null;
|
|
|
|
+// break;
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// if (total != null) {
|
|
|
|
+// ExamRecordCacheUtil.setObjectiveScore(recordId, total);
|
|
|
|
+// this.sendExamRecordDataSaveMq(recordId, System.currentTimeMillis());
|
|
|
|
+// } else {
|
|
|
|
+// log.info("calculateTotalObjectiveScore total Score is null recordId:" + recordId + " key:"
|
|
|
|
+// + key);
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// } else {
|
|
|
|
+// log.info("calculateTotalObjectiveScore get lock faild recordId:" + recordId + " key:" + key);
|
|
|
|
+// calculateObjectiveScoreMsg(recordId, mainNumber, subNumber, subIndex);
|
|
|
|
+// }
|
|
|
|
+// } finally {
|
|
|
|
+// redisUtil.releaseLock(lockKey);
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
|
|
//考试中计算客观分消息
|
|
//考试中计算客观分消息
|
|
- private void calculateObjectiveScoreMsg(Long recordId, Integer mainNumber, Integer subNumber, Integer subIndex) {
|
|
|
|
- Map<String, Object> transMap = new HashMap<String, Object>();
|
|
|
|
- transMap.put("recordId", recordId);
|
|
|
|
- transMap.put("mainNumber", mainNumber);
|
|
|
|
- transMap.put("subNumber", subNumber);
|
|
|
|
- transMap.put("subIndex", subIndex);
|
|
|
|
- Map<String, Object> propMap = mqDtoService.buildMqDelayMsg("1s");
|
|
|
|
- MqDto mqDto = new MqDto(mqUtil.getMqGroupDomain().getTopic(), MqTagEnum.CALCULATE_OBJECTIVE_SCORE.name(),
|
|
|
|
- transMap, MqTagEnum.CALCULATE_OBJECTIVE_SCORE, recordId.toString(), propMap, recordId.toString());
|
|
|
|
- mqDtoService.assembleSendAsyncDelayMsg(mqDto);
|
|
|
|
- }
|
|
|
|
|
|
+// private void calculateObjectiveScoreMsg(Long recordId, Integer mainNumber, Integer subNumber, Integer subIndex) {
|
|
|
|
+// Map<String, Object> transMap = new HashMap<String, Object>();
|
|
|
|
+// transMap.put("recordId", recordId);
|
|
|
|
+// transMap.put("mainNumber", mainNumber);
|
|
|
|
+// transMap.put("subNumber", subNumber);
|
|
|
|
+// transMap.put("subIndex", subIndex);
|
|
|
|
+// Map<String, Object> propMap = mqDtoService.buildMqDelayMsg("1s");
|
|
|
|
+// MqDto mqDto = new MqDto(mqUtil.getMqGroupDomain().getTopic(), MqTagEnum.CALCULATE_OBJECTIVE_SCORE.name(),
|
|
|
|
+// transMap, MqTagEnum.CALCULATE_OBJECTIVE_SCORE, recordId.toString(), propMap, recordId.toString());
|
|
|
|
+// mqDtoService.assembleSendAsyncDelayMsg(mqDto);
|
|
|
|
+// }
|
|
|
|
|
|
private boolean checkSingleChoice(String answerArray, JSONArray ar) {
|
|
private boolean checkSingleChoice(String answerArray, JSONArray ar) {
|
|
JSONArray an = JSONArray.parseArray(answerArray);
|
|
JSONArray an = JSONArray.parseArray(answerArray);
|
|
@@ -614,7 +615,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param userId
|
|
* @param userId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings("rawtypes")
|
|
|
|
+ @Override
|
|
public IPage<InvigilateListBean> invigilatePageList(IPage<Map> iPage, Long examId, Long examActivityId,
|
|
public IPage<InvigilateListBean> invigilatePageList(IPage<Map> iPage, Long examId, Long examActivityId,
|
|
String roomCode, Integer paperDownload, String status, String name, String identity,
|
|
String roomCode, Integer paperDownload, String status, String name, String identity,
|
|
Integer minWarningCount, Integer maxWarningCount, String clientWebsocketStatus, String monitorStatusSource,
|
|
Integer minWarningCount, Integer maxWarningCount, String clientWebsocketStatus, String monitorStatusSource,
|
|
@@ -642,7 +644,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param orgId
|
|
* @param orgId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings("rawtypes")
|
|
|
|
+ @Override
|
|
public IPage<InvigilateListVideoBean> invigilatePageListVideo(IPage<Map> iPage, Long examId, Long examActivityId,
|
|
public IPage<InvigilateListVideoBean> invigilatePageListVideo(IPage<Map> iPage, Long examId, Long examActivityId,
|
|
String roomCode, Integer paperDownload, String status, String name, String identity,
|
|
String roomCode, Integer paperDownload, String status, String name, String identity,
|
|
Integer minWarningCount, Integer maxWarningCount, String clientWebsocketStatus, Long userId, Long orgId) {
|
|
Integer minWarningCount, Integer maxWarningCount, String clientWebsocketStatus, Long userId, Long orgId) {
|
|
@@ -687,7 +690,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param orgId
|
|
* @param orgId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings("rawtypes")
|
|
|
|
+ @Override
|
|
public IPage<InvigilateListPatrolBean> invigilatePagePatrolList(IPage<Map> iPage, Long examId, Long examActivityId,
|
|
public IPage<InvigilateListPatrolBean> invigilatePagePatrolList(IPage<Map> iPage, Long examId, Long examActivityId,
|
|
String roomCode, String status, String name, String identity, Integer minMultipleFaceCount,
|
|
String roomCode, String status, String name, String identity, Integer minMultipleFaceCount,
|
|
Integer maxMultipleFaceCount, Integer minExceptionCount, Integer maxExceptionCount, Integer minWarningCount,
|
|
Integer maxMultipleFaceCount, Integer minExceptionCount, Integer maxExceptionCount, Integer minWarningCount,
|
|
@@ -718,7 +722,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param orgId
|
|
* @param orgId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings("rawtypes")
|
|
|
|
+ @Override
|
|
public IPage<InvigilateListWarningBean> invigilatePageWarningList(IPage<Map> iPage, Long examId,
|
|
public IPage<InvigilateListWarningBean> invigilatePageWarningList(IPage<Map> iPage, Long examId,
|
|
Long examActivityId, String roomCode, Integer approveStatus, String name, String identity,
|
|
Long examActivityId, String roomCode, Integer approveStatus, String name, String identity,
|
|
Integer minMultipleFaceCount, Integer maxMultipleFaceCount, Integer minExceptionCount,
|
|
Integer minMultipleFaceCount, Integer maxMultipleFaceCount, Integer minExceptionCount,
|
|
@@ -772,7 +777,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param userId
|
|
* @param userId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings("rawtypes")
|
|
|
|
+ @Override
|
|
public IPage<InvigilateListProgressBean> invigilatePageProgressList(IPage<Map> iPage, Long examId,
|
|
public IPage<InvigilateListProgressBean> invigilatePageProgressList(IPage<Map> iPage, Long examId,
|
|
Long examActivityId, String roomCode, String courseCode, String name, String identity, Long userId,
|
|
Long examActivityId, String roomCode, String courseCode, String name, String identity, Long userId,
|
|
Long orgId) {
|
|
Long orgId) {
|
|
@@ -825,7 +831,8 @@ public class TOeExamRecordServiceImpl extends ServiceImpl<TOeExamRecordMapper, T
|
|
* @param orgId
|
|
* @param orgId
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- @Override
|
|
|
|
|
|
+ @SuppressWarnings("rawtypes")
|
|
|
|
+ @Override
|
|
public IPage<InvigilateListHistoryBean> invigilatePageListHistory(IPage<Map> iPage, Long examId,
|
|
public IPage<InvigilateListHistoryBean> invigilatePageListHistory(IPage<Map> iPage, Long examId,
|
|
Long examActivityId, String roomCode, String courseCode, String status, Integer breachStatus,
|
|
Long examActivityId, String roomCode, String courseCode, String status, Integer breachStatus,
|
|
String finishType, String name, String identity, Integer minMultipleFaceCount, Integer maxMultipleFaceCount,
|
|
String finishType, String name, String identity, Integer minMultipleFaceCount, Integer maxMultipleFaceCount,
|