ソースを参照

监控源+预警不提醒修改

wangliang 4 年 前
コミット
bc042f0c69

+ 30 - 4
themis-backend/src/main/java/com/qmth/themis/backend/api/TIeInvigilateController.java

@@ -150,9 +150,18 @@ public class TIeInvigilateController {
                     if (Objects.nonNull(monitorVideoSource)) {
                         source = MonitorVideoSourceEnum.valueOf(monitorVideoSource);
                     }
-                    s.setMonitorLiveUrl(ExamRecordCacheUtil.getMonitorLiveUrl(s.getExamRecordId(), source.name()));
-                    s.setClientWebsocketStatus(ExamRecordCacheUtil.getClientWebsocketStatus(s.getExamRecordId()));
-                    s.setPaperDownload(ExamRecordCacheUtil.getPaperDownload(s.getExamRecordId()));
+                    String monitorLiveUrl = ExamRecordCacheUtil.getMonitorLiveUrl(s.getExamRecordId(), source.name());
+                    if (Objects.nonNull(monitorLiveUrl)) {
+                        s.setMonitorLiveUrl(monitorLiveUrl);
+                    }
+                    WebsocketStatusEnum websocketStatusEnum = ExamRecordCacheUtil.getClientWebsocketStatus(s.getExamRecordId());
+                    if (Objects.nonNull(websocketStatusEnum)) {
+                        s.setClientWebsocketStatus(websocketStatusEnum);
+                    }
+                    Integer paperDownLoad = ExamRecordCacheUtil.getPaperDownload(s.getExamRecordId());
+                    if (Objects.nonNull(paperDownLoad)) {
+                        s.setPaperDownload(paperDownLoad);
+                    }
                 });
             }
         }
@@ -173,7 +182,24 @@ public class TIeInvigilateController {
         if (authDto.getRoleCodes().toString().contains(RoleEnum.INVIGILATE.name())) {
             userId = tbUser.getId();
         }
-        return ResultUtil.ok(tOeExamRecordService.invigilatePageListVideoRandom(examId, userId, randomNum));
+        List<InvigilateListVideoBean> invigilateListVideoBeanList = tOeExamRecordService.invigilatePageListVideoRandom(examId, userId, randomNum);
+        if (Objects.nonNull(invigilateListVideoBeanList) && invigilateListVideoBeanList.size() > 0) {
+            invigilateListVideoBeanList.forEach(s -> {
+                String monitorLiveUrl = ExamRecordCacheUtil.getMonitorLiveUrl(s.getExamRecordId(), MonitorVideoSourceEnum.CLIENT_CAMERA.name());
+                if (Objects.nonNull(monitorLiveUrl)) {
+                    s.setMonitorLiveUrl(monitorLiveUrl);
+                }
+                WebsocketStatusEnum websocketStatusEnum = ExamRecordCacheUtil.getClientWebsocketStatus(s.getExamRecordId());
+                if (Objects.nonNull(websocketStatusEnum)) {
+                    s.setClientWebsocketStatus(websocketStatusEnum);
+                }
+                Integer paperDownLoad = ExamRecordCacheUtil.getPaperDownload(s.getExamRecordId());
+                if (Objects.nonNull(paperDownLoad)) {
+                    s.setPaperDownload(paperDownLoad);
+                }
+            });
+        }
+        return ResultUtil.ok(invigilateListVideoBeanList);
     }
 
     @ApiOperation(value = "监考明细管理列表接口")