wangliang 4 lat temu
rodzic
commit
e1eee6328a

+ 4 - 1
themis-exam/src/main/java/com/qmth/themis/exam/api/TIeInvigilateCallMobileController.java

@@ -223,7 +223,10 @@ public class TIeInvigilateCallMobileController {
         MonitorVideoSourceEnum source = MonitorVideoSourceEnum.valueOf(String.valueOf(mapParameter.get("source")));
         //获取考试记录缓存
         String liveUrl = null;
-        if (Objects.isNull(source) || Objects.isNull(ExamRecordCacheUtil.getMonitorStatus(recordId, source))) {
+        ExamRecordStatusEnum statusEnum = ExamRecordCacheUtil.getStatus(recordId);
+        if (Objects.isNull(statusEnum) || Objects.equals(statusEnum, ExamRecordStatusEnum.FINISHED) || Objects.equals(statusEnum, ExamRecordStatusEnum.PERSISTED)) {
+            return ResultUtil.ok(Collections.singletonMap("updateTime", System.currentTimeMillis()));
+        } else if (Objects.isNull(ExamRecordCacheUtil.getMonitorStatus(recordId, source))) {
             throw new BusinessException("推流状态为空");
         }
         ExamRecordCacheUtil.setMonitorCallStatus(recordId, source, MonitorCallStatusSourceEnum.STOP);

+ 4 - 1
themis-exam/src/main/java/com/qmth/themis/exam/api/TIeInvigilateCallOeController.java

@@ -198,7 +198,10 @@ public class TIeInvigilateCallOeController {
             source = MonitorVideoSourceEnum.CLIENT_CAMERA;
             liveUrl = ExamRecordCacheUtil.getMonitorLiveUrlClientCamera(recordId);
         }
-        if (Objects.isNull(source) || Objects.isNull(ExamRecordCacheUtil.getMonitorStatus(recordId, source))) {
+        ExamRecordStatusEnum statusEnum = ExamRecordCacheUtil.getStatus(recordId);
+        if (Objects.isNull(statusEnum) || Objects.equals(statusEnum, ExamRecordStatusEnum.FINISHED) || Objects.equals(statusEnum, ExamRecordStatusEnum.PERSISTED)) {
+            return ResultUtil.ok(Collections.singletonMap("updateTime", System.currentTimeMillis()));
+        } else if (Objects.isNull(ExamRecordCacheUtil.getMonitorStatus(recordId, source))) {
             throw new BusinessException("推流状态为空");
         }
         MonitorStatusSourceEnum status = ExamRecordCacheUtil.getMonitorStatus(recordId, source);