wangliang 2 年之前
父節點
當前提交
8c8c58a3b4

+ 5 - 4
themis-admin/src/main/java/com/qmth/themis/admin/api/TENotifyController.java

@@ -33,6 +33,7 @@ import io.swagger.annotations.*;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -290,7 +291,7 @@ public class TENotifyController {
 //                }
 //                }
 //            } else
 //            } else
             if (source == Source.MOBILE_MONITOR_FIRST && (platform == Platform.ANDROID || platform == Platform.IOS)) {
             if (source == Source.MOBILE_MONITOR_FIRST && (platform == Platform.ANDROID || platform == Platform.IOS)) {
-                if (Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()))) {
+                if (!CollectionUtils.isEmpty(monitorRecordMap) && Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()))) {
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name())));
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name())));
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.START)) {
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.START)) {
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()), MonitorStatusSourceEnum.START, eventTime);
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()), MonitorStatusSourceEnum.START, eventTime);
@@ -298,7 +299,7 @@ public class TENotifyController {
                     }
                     }
                 }
                 }
             } else if (source == Source.MOBILE_MONITOR_SECOND && (platform == Platform.ANDROID || platform == Platform.IOS)) {
             } else if (source == Source.MOBILE_MONITOR_SECOND && (platform == Platform.ANDROID || platform == Platform.IOS)) {
-                if (Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()))) {
+                if (!CollectionUtils.isEmpty(monitorRecordMap) && Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()))) {
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name())));
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name())));
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.START)) {
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.START)) {
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()), MonitorStatusSourceEnum.START, eventTime);
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()), MonitorStatusSourceEnum.START, eventTime);
@@ -335,7 +336,7 @@ public class TENotifyController {
 //                }
 //                }
 //            } else
 //            } else
             if (source == Source.MOBILE_MONITOR_FIRST && (platform == Platform.ANDROID || platform == Platform.IOS)) {
             if (source == Source.MOBILE_MONITOR_FIRST && (platform == Platform.ANDROID || platform == Platform.IOS)) {
-                if (Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()))) {
+                if (!CollectionUtils.isEmpty(monitorRecordMap) && Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()))) {
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name())));
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name())));
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.STOP)) {
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.STOP)) {
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()), MonitorStatusSourceEnum.STOP, eventTime);
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_FIRST.name()), MonitorStatusSourceEnum.STOP, eventTime);
@@ -343,7 +344,7 @@ public class TENotifyController {
                     }
                     }
                 }
                 }
             } else if (source == Source.MOBILE_MONITOR_SECOND && (platform == Platform.ANDROID || platform == Platform.IOS)) {
             } else if (source == Source.MOBILE_MONITOR_SECOND && (platform == Platform.ANDROID || platform == Platform.IOS)) {
-                if (Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()))) {
+                if (!CollectionUtils.isEmpty(monitorRecordMap) && Objects.nonNull(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()))) {
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name())));
                     MonitorStatusBean monitorStatusBean = ExamRecordCacheUtil.getMonitorStatusBean(recordId, MonitorVideoSourceEnum.valueOf(monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name())));
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.STOP)) {
                     if (Objects.isNull(monitorStatusBean) || (Objects.nonNull(monitorStatusBean) && monitorStatusBean.getMonitorStatusSourceEnum() != MonitorStatusSourceEnum.STOP)) {
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()), MonitorStatusSourceEnum.STOP, eventTime);
                         this.updateStatus(recordId, monitorRecordMap.get(MonitorVideoSourceEnum.MOBILE_SECOND.name()), MonitorStatusSourceEnum.STOP, eventTime);

+ 2 - 1
themis-admin/src/main/java/com/qmth/themis/admin/api/TIeInvigilateCallMobileController.java

@@ -28,6 +28,7 @@ import io.swagger.annotations.*;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
@@ -161,7 +162,7 @@ public class TIeInvigilateCallMobileController {
         Map<String, String> monitorRecordMap = SystemConstant.getMonitorRecordMap(monitorRecord);
         Map<String, String> monitorRecordMap = SystemConstant.getMonitorRecordMap(monitorRecord);
         List<TIeExamInvigilateCall> tIeExamInvigilateCallList = new ArrayList<>();
         List<TIeExamInvigilateCall> tIeExamInvigilateCallList = new ArrayList<>();
         for (TIeExamInvigilateCall t : tIeExamInvigilateCallTempList) {
         for (TIeExamInvigilateCall t : tIeExamInvigilateCallTempList) {
-            if (Objects.nonNull(monitorRecordMap.get(t.getSource().name()))) {
+            if (!CollectionUtils.isEmpty(monitorRecordMap) && Objects.nonNull(monitorRecordMap.get(t.getSource().name()))) {
                 tIeExamInvigilateCallList.add(t);
                 tIeExamInvigilateCallList.add(t);
             }
             }
         }
         }