|
@@ -1,20 +1,19 @@
|
|
|
package com.qmth.themis.exam.websocketTemplete;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.qmth.themis.business.cache.ExamRecordCacheUtil;
|
|
|
import com.qmth.themis.business.constant.SystemConstant;
|
|
|
import com.qmth.themis.business.dto.WebsocketDto;
|
|
|
+import com.qmth.themis.business.enums.ExamRecordStatusEnum;
|
|
|
import com.qmth.themis.business.enums.WebsocketTypeEnum;
|
|
|
-import com.qmth.themis.business.util.RedisUtil;
|
|
|
import com.qmth.themis.common.enums.ExceptionResultEnum;
|
|
|
import com.qmth.themis.common.exception.BusinessException;
|
|
|
+import com.qmth.themis.exam.config.ExamConstant;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
-import javax.annotation.Resource;
|
|
|
import java.util.Collections;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.Map;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
/**
|
|
@@ -40,6 +39,11 @@ public class WebSocketMobileMessageTemplete {
|
|
|
if (Objects.isNull(jsonObject.get("recordId")) || Objects.equals(jsonObject.get("recordId"), "")) {
|
|
|
throw new BusinessException(ExceptionResultEnum.RECORD_ID_IS_NULL);
|
|
|
}
|
|
|
+ Long recordId = Long.parseLong(String.valueOf(jsonObject.get("recordId")));
|
|
|
+ ExamRecordStatusEnum status = ExamRecordCacheUtil.getStatus(recordId);
|
|
|
+ if (Objects.nonNull(status) && Objects.equals(ExamRecordStatusEnum.BREAK_OFF, status)) {//如果是已中断状态,则给客户端和移动端发送考试停止的消息
|
|
|
+ ExamConstant.sendExamStopMsg(recordId);
|
|
|
+ }
|
|
|
return this.syncAck(body);
|
|
|
}
|
|
|
|