|
@@ -261,6 +261,14 @@ public class ExamRecordCacheUtil {
|
|
null;
|
|
null;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public static BreachStatusBean getBreachStatusBean(Long recordId) {
|
|
|
|
+ return Objects.nonNull(
|
|
|
|
+ redisUtil.get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.breach_status.getCode())) ?
|
|
|
|
+ (BreachStatusBean) redisUtil
|
|
|
|
+ .get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.breach_status.getCode()) :
|
|
|
|
+ null;
|
|
|
|
+ }
|
|
|
|
+
|
|
public static ExamRecordStatusEnum getStatus(Long recordId) {
|
|
public static ExamRecordStatusEnum getStatus(Long recordId) {
|
|
ExamStatusBean examStatusBean = getStatusBean(recordId);
|
|
ExamStatusBean examStatusBean = getStatusBean(recordId);
|
|
if (Objects.isNull(examStatusBean) || Objects.isNull(examStatusBean.getExamRecordStatusEnum())) {
|
|
if (Objects.isNull(examStatusBean) || Objects.isNull(examStatusBean.getExamRecordStatusEnum())) {
|
|
@@ -304,16 +312,27 @@ public class ExamRecordCacheUtil {
|
|
.get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.warning_count.getCode());
|
|
.get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.warning_count.getCode());
|
|
}
|
|
}
|
|
|
|
|
|
- public static void setBreachStatus(Long recordId, Integer breachStatus) {
|
|
|
|
- if (Objects.nonNull(getId(recordId))) {
|
|
|
|
- redisUtil.set(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.breach_status.getCode(),
|
|
|
|
- breachStatus);
|
|
|
|
|
|
+ public static void setBreachStatus(Long recordId, Integer breachStatus, Long timestamp) {
|
|
|
|
+ BreachStatusBean breachStatusBean = getBreachStatusBean(recordId);
|
|
|
|
+ if (Objects.isNull(breachStatusBean)) {
|
|
|
|
+ breachStatusBean = new BreachStatusBean(breachStatus, timestamp);
|
|
|
|
+ } else {
|
|
|
|
+ if (Objects.nonNull(breachStatusBean.getTimestamp()) && breachStatusBean.getTimestamp().longValue() < timestamp
|
|
|
|
+ .longValue()) {
|
|
|
|
+ breachStatusBean.setStatus(breachStatus);
|
|
|
|
+ breachStatusBean.setTimestamp(timestamp);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+ redisUtil.set(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.breach_status.getCode(), breachStatusBean);
|
|
}
|
|
}
|
|
|
|
|
|
public static Integer getBreachStatus(Long recordId) {
|
|
public static Integer getBreachStatus(Long recordId) {
|
|
- return (Integer) redisUtil
|
|
|
|
- .get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.breach_status.getCode());
|
|
|
|
|
|
+ BreachStatusBean breachStatusBean = getBreachStatusBean(recordId);
|
|
|
|
+ if (Objects.isNull(breachStatusBean) || Objects.isNull(breachStatusBean.getStatus())) {
|
|
|
|
+ return null;
|
|
|
|
+ } else {
|
|
|
|
+ return breachStatusBean.getStatus();
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
public static void setInProcessLivenessVerifyCount(Long recordId, Integer inProcessLivenessVerifyCount) {
|
|
public static void setInProcessLivenessVerifyCount(Long recordId, Integer inProcessLivenessVerifyCount) {
|
|
@@ -363,7 +382,7 @@ public class ExamRecordCacheUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public static void setMonitorStatus(Long recordId, MonitorVideoSourceEnum source,
|
|
public static void setMonitorStatus(Long recordId, MonitorVideoSourceEnum source,
|
|
- MonitorStatusSourceEnum statusSourceEnum, Long timestamp) {
|
|
|
|
|
|
+ MonitorStatusSourceEnum statusSourceEnum, Long timestamp) {
|
|
MonitorStatusBean monitorStatusBean = getMonitorStatusBean(recordId, source);
|
|
MonitorStatusBean monitorStatusBean = getMonitorStatusBean(recordId, source);
|
|
if (Objects.isNull(monitorStatusBean)) {
|
|
if (Objects.isNull(monitorStatusBean)) {
|
|
monitorStatusBean = new MonitorStatusBean(statusSourceEnum, timestamp);
|
|
monitorStatusBean = new MonitorStatusBean(statusSourceEnum, timestamp);
|
|
@@ -398,7 +417,7 @@ public class ExamRecordCacheUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public static void setMonitorCallStatus(Long recordId, MonitorVideoSourceEnum source,
|
|
public static void setMonitorCallStatus(Long recordId, MonitorVideoSourceEnum source,
|
|
- MonitorCallStatusSourceEnum callStatusSourceEnum, Long timestamp) {
|
|
|
|
|
|
+ MonitorCallStatusSourceEnum callStatusSourceEnum, Long timestamp) {
|
|
MonitorCallStatusBean monitorCallStatusBean = getMonitorCallStatusBean(recordId, source);
|
|
MonitorCallStatusBean monitorCallStatusBean = getMonitorCallStatusBean(recordId, source);
|
|
if (Objects.isNull(monitorCallStatusBean)) {
|
|
if (Objects.isNull(monitorCallStatusBean)) {
|
|
monitorCallStatusBean = new MonitorCallStatusBean(callStatusSourceEnum, timestamp);
|
|
monitorCallStatusBean = new MonitorCallStatusBean(callStatusSourceEnum, timestamp);
|
|
@@ -492,7 +511,7 @@ public class ExamRecordCacheUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public static void setClientWebsocketStatus(Long recordId, WebsocketStatusEnum websocketStatusEnum,
|
|
public static void setClientWebsocketStatus(Long recordId, WebsocketStatusEnum websocketStatusEnum,
|
|
- Long timestamp) {
|
|
|
|
|
|
+ Long timestamp) {
|
|
ClientWebsocketStatusBean clientWebsocketStatusBean = getClientWebsocketStatusBean(recordId);
|
|
ClientWebsocketStatusBean clientWebsocketStatusBean = getClientWebsocketStatusBean(recordId);
|
|
if (Objects.isNull(clientWebsocketStatusBean)) {
|
|
if (Objects.isNull(clientWebsocketStatusBean)) {
|
|
clientWebsocketStatusBean = new ClientWebsocketStatusBean(websocketStatusEnum, timestamp);
|
|
clientWebsocketStatusBean = new ClientWebsocketStatusBean(websocketStatusEnum, timestamp);
|
|
@@ -539,7 +558,7 @@ public class ExamRecordCacheUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public static void setMobileWebsocketStatus(Long record, MonitorVideoSourceEnum source, WebsocketStatusEnum status,
|
|
public static void setMobileWebsocketStatus(Long record, MonitorVideoSourceEnum source, WebsocketStatusEnum status,
|
|
- Long timestamp) {
|
|
|
|
|
|
+ Long timestamp) {
|
|
if (MonitorVideoSourceEnum.MOBILE_FIRST.equals(source)) {
|
|
if (MonitorVideoSourceEnum.MOBILE_FIRST.equals(source)) {
|
|
setMobileFirstWebsocketStatus(record, status, timestamp);
|
|
setMobileFirstWebsocketStatus(record, status, timestamp);
|
|
} else if (MonitorVideoSourceEnum.MOBILE_SECOND.equals(source)) {
|
|
} else if (MonitorVideoSourceEnum.MOBILE_SECOND.equals(source)) {
|
|
@@ -548,7 +567,7 @@ public class ExamRecordCacheUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public static void setMobileFirstWebsocketStatus(Long recordId, WebsocketStatusEnum websocketStatusEnum,
|
|
public static void setMobileFirstWebsocketStatus(Long recordId, WebsocketStatusEnum websocketStatusEnum,
|
|
- Long timestamp) {
|
|
|
|
|
|
+ Long timestamp) {
|
|
MobileWebsocketStatusBean mobileFirstWebsocketStatusBean = getMobileFirstWebsocketStatusBean(recordId);
|
|
MobileWebsocketStatusBean mobileFirstWebsocketStatusBean = getMobileFirstWebsocketStatusBean(recordId);
|
|
if (Objects.isNull(mobileFirstWebsocketStatusBean)) {
|
|
if (Objects.isNull(mobileFirstWebsocketStatusBean)) {
|
|
mobileFirstWebsocketStatusBean = new MobileWebsocketStatusBean(websocketStatusEnum, timestamp);
|
|
mobileFirstWebsocketStatusBean = new MobileWebsocketStatusBean(websocketStatusEnum, timestamp);
|
|
@@ -566,7 +585,7 @@ public class ExamRecordCacheUtil {
|
|
}
|
|
}
|
|
|
|
|
|
public static void setMobileSecondWebsocketStatus(Long recordId, WebsocketStatusEnum websocketStatusEnum,
|
|
public static void setMobileSecondWebsocketStatus(Long recordId, WebsocketStatusEnum websocketStatusEnum,
|
|
- Long timestamp) {
|
|
|
|
|
|
+ Long timestamp) {
|
|
MobileWebsocketStatusBean mobileSecondWebsocketStatusBean = getMobileSecondWebsocketStatusBean(recordId);
|
|
MobileWebsocketStatusBean mobileSecondWebsocketStatusBean = getMobileSecondWebsocketStatusBean(recordId);
|
|
if (Objects.isNull(mobileSecondWebsocketStatusBean)) {
|
|
if (Objects.isNull(mobileSecondWebsocketStatusBean)) {
|
|
mobileSecondWebsocketStatusBean = new MobileWebsocketStatusBean(websocketStatusEnum, timestamp);
|
|
mobileSecondWebsocketStatusBean = new MobileWebsocketStatusBean(websocketStatusEnum, timestamp);
|
|
@@ -995,6 +1014,19 @@ public class ExamRecordCacheUtil {
|
|
.get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.tencent_video_url.getCode());
|
|
.get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.tencent_video_url.getCode());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public static void setUpdateTime(Long recordId, Long date) {
|
|
|
|
+ if (Objects.nonNull(getId(recordId))) {
|
|
|
|
+ redisUtil.set(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.update_time.getCode(),
|
|
|
|
+ date);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public static Long getUpdateTime(Long recordId) {
|
|
|
|
+ return (Long) redisUtil
|
|
|
|
+ .get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.update_time.getCode());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 更新考试记录缓存
|
|
* 更新考试记录缓存
|
|
*
|
|
*
|