|
@@ -653,14 +653,10 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
Long groupId = insertPlanAbnormalLog(labRiskPlanLevel, riskPlanJson, groupList, 1L, subFunction, riskAttribute);
|
|
Long groupId = insertPlanAbnormalLog(labRiskPlanLevel, riskPlanJson, groupList, 1L, subFunction, riskAttribute);
|
|
|
if (groupId != null) {
|
|
if (groupId != null) {
|
|
|
log.info("日志组id不为空时,预警消息记录,groupId = {}", groupId);
|
|
log.info("日志组id不为空时,预警消息记录,groupId = {}", groupId);
|
|
|
- try {
|
|
|
|
|
- //记录通知
|
|
|
|
|
- recordNotice(subFunction, labRiskPlanLevel, groupId);
|
|
|
|
|
- //向前端发送mqtt预案触发提示
|
|
|
|
|
- messageSendService.riskPlanTriggerNotice();
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("test日志={}",e);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ //记录通知
|
|
|
|
|
+ recordNotice(subFunction, labRiskPlanLevel, groupId);
|
|
|
|
|
+ //向前端发送mqtt预案触发提示
|
|
|
|
|
+ messageSendService.riskPlanTriggerNotice();
|
|
|
//打开喇叭
|
|
//打开喇叭
|
|
|
openLoudSpeaker(subFunction.getSubId(), labRiskPlanLevel.getFloorId(), labRiskPlanLevel.getRiskPlanId());
|
|
openLoudSpeaker(subFunction.getSubId(), labRiskPlanLevel.getFloorId(), labRiskPlanLevel.getRiskPlanId());
|
|
|
//远程调用开始录制视频接口
|
|
//远程调用开始录制视频接口
|
|
@@ -671,6 +667,7 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
if (redisService.getCacheObject("subjectByYa" + subFunction.getSubId()) != null) {
|
|
if (redisService.getCacheObject("subjectByYa" + subFunction.getSubId()) != null) {
|
|
|
return flag;
|
|
return flag;
|
|
|
}
|
|
}
|
|
|
|
|
+ log.info("传感器触发关闭预案!实验室id={}",subFunction.getSubId());
|
|
|
for (LabRiskPlanAbnormalGroupVO groupVo : groupList) {
|
|
for (LabRiskPlanAbnormalGroupVO groupVo : groupList) {
|
|
|
//更新结束预案日志
|
|
//更新结束预案日志
|
|
|
updateLogs(subFunction, groupVo);
|
|
updateLogs(subFunction, groupVo);
|
|
@@ -779,7 +776,7 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
log.info("未查询到实验室关联摄像头信息!请检查ip是否为空!");
|
|
log.info("未查询到实验室关联摄像头信息!请检查ip是否为空!");
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- log.error("远程调用结束录制视频接口失败!{}", e);
|
|
|
|
|
|
|
+ log.error("远程调用结束录制视频接口异常!{}", e);
|
|
|
}
|
|
}
|
|
|
//更新风险概要 recordVideo - 视频记录存放地址
|
|
//更新风险概要 recordVideo - 视频记录存放地址
|
|
|
String handlePerson = "";
|
|
String handlePerson = "";
|
|
@@ -825,7 +822,7 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
log.info("关闭喇叭-合成音乐列表为空,此预案不关闭喇叭!riskPlanId={}", riskPlanId);
|
|
log.info("关闭喇叭-合成音乐列表为空,此预案不关闭喇叭!riskPlanId={}", riskPlanId);
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- log.info("关闭喇叭失败!!={}", e);
|
|
|
|
|
|
|
+ log.error("关闭喇叭异常!{}", e);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1020,7 +1017,7 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
log.info("打开喇叭-合成音乐列表为空,此预案不触发音乐!riskPlanId={}", riskPlanId);
|
|
log.info("打开喇叭-合成音乐列表为空,此预案不触发音乐!riskPlanId={}", riskPlanId);
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- log.error("开启喇叭异常!={}",e);
|
|
|
|
|
|
|
+ log.error("开启喇叭异常!{}",e);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1033,17 +1030,20 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
private void startVideo(Long subjectId) {
|
|
private void startVideo(Long subjectId) {
|
|
|
try {
|
|
try {
|
|
|
LabHardware labHardware = labHardwareService.selectLabHardwareCameraBySub(subjectId);
|
|
LabHardware labHardware = labHardwareService.selectLabHardwareCameraBySub(subjectId);
|
|
|
- if (labHardware == null) {
|
|
|
|
|
|
|
+ if (labHardware != null || labHardware.getIpAddress() != null) {
|
|
|
|
|
+ //开始录制视频
|
|
|
|
|
+ log.info("远程调用开始录制视频ip地址={}", labHardware.getIpAddress());
|
|
|
|
|
+ remoteCameraService.stopRecord(labHardware.getIpAddress());
|
|
|
|
|
+ R r = remoteCameraService.startRecord(labHardware.getIpAddress());
|
|
|
|
|
+ log.info("开始录制视频返回结果打印={}", JSON.toJSONString(r));
|
|
|
|
|
+ if (r.getCode() == HttpStatus.SUCCESS) {
|
|
|
|
|
+ log.info("开始录制视频成功!");
|
|
|
|
|
+ }else {
|
|
|
|
|
+ log.info("开始录制视频失败!");
|
|
|
|
|
+ }
|
|
|
|
|
+ }else {
|
|
|
log.info("未查询到实验室关联摄像头信息!请检查ip是否为空!");
|
|
log.info("未查询到实验室关联摄像头信息!请检查ip是否为空!");
|
|
|
}
|
|
}
|
|
|
- //开始录制视频
|
|
|
|
|
- log.info("远程调用开始录制视频ip地址={}", labHardware.getIpAddress());
|
|
|
|
|
- remoteCameraService.stopRecord(labHardware.getIpAddress());
|
|
|
|
|
- R r = remoteCameraService.startRecord(labHardware.getIpAddress());
|
|
|
|
|
- log.info("开始录制视频返回结果打印={}", JSON.toJSONString(r));
|
|
|
|
|
- if (r.getCode() != HttpStatus.SUCCESS) {
|
|
|
|
|
- log.info("开始录制视频失败!");
|
|
|
|
|
- }
|
|
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
log.error("远程调用开始录制视频接口失败!{}", e);
|
|
log.error("远程调用开始录制视频接口失败!{}", e);
|
|
|
}
|
|
}
|
|
@@ -1052,25 +1052,33 @@ public class LabRiskPlanServiceImpl extends ServiceImpl<LabRiskPlanMapper, LabRi
|
|
|
@Override
|
|
@Override
|
|
|
public int closeRiskPlan(SubFunction<SensorFunctionStatus> subFunction) {
|
|
public int closeRiskPlan(SubFunction<SensorFunctionStatus> subFunction) {
|
|
|
//将风险预案写入归属组级表里面
|
|
//将风险预案写入归属组级表里面
|
|
|
- List<LabRiskPlanAbnormalGroupVO> groupList = getLabRiskPlanAbnormalGroupVOS(subFunction.getSubId());
|
|
|
|
|
- if (redisService.getCacheObject("subjectByYa" + subFunction.getSubId()) != null) {
|
|
|
|
|
- redisService.deleteObject("subjectByYa" + subFunction.getSubId());
|
|
|
|
|
- }
|
|
|
|
|
- for (LabRiskPlanAbnormalGroupVO groupVo : groupList) {
|
|
|
|
|
- //向一体机传感器预警
|
|
|
|
|
- messageSendService.sendWranFunctionToSub(subFunction.getSubId());
|
|
|
|
|
- //首页预案流程通知
|
|
|
|
|
- messageSendService.SendBigViewUpdate(BigViewDataType.SUB_RISKPLAN_GROUP);
|
|
|
|
|
- messageSendService.riskPlanTriggerNotice();
|
|
|
|
|
- messageSendService.SendBigViewUpdate(BigViewDataType.SUB_RISKPLAN_LOG);
|
|
|
|
|
- //首页预案是否同步疏散线路
|
|
|
|
|
- messageSendService.SendBigViewUpdate(BigViewDataType.SUB_RISKPLAN_EXIT);
|
|
|
|
|
- //关闭喇叭
|
|
|
|
|
- closeLoudSpeaker(subFunction.getSubId(), groupVo.getFloorId(), groupVo.getRiskPlanId());
|
|
|
|
|
- //停止录像并记录日志
|
|
|
|
|
- stopVideoAndRecordLog(subFunction.getSubId(), groupVo.getId());
|
|
|
|
|
- //更新结束预案日志
|
|
|
|
|
- updateLogs(subFunction, groupVo);
|
|
|
|
|
|
|
+ try {
|
|
|
|
|
+ List<LabRiskPlanAbnormalGroupVO> groupList = getLabRiskPlanAbnormalGroupVOS(subFunction.getSubId());
|
|
|
|
|
+ for (LabRiskPlanAbnormalGroupVO groupVo : groupList) {
|
|
|
|
|
+ //向一体机传感器预警
|
|
|
|
|
+ messageSendService.sendWranFunctionToSub(subFunction.getSubId());
|
|
|
|
|
+ //首页预案流程通知
|
|
|
|
|
+ messageSendService.SendBigViewUpdate(BigViewDataType.SUB_RISKPLAN_GROUP);
|
|
|
|
|
+ messageSendService.riskPlanTriggerNotice();
|
|
|
|
|
+ messageSendService.SendBigViewUpdate(BigViewDataType.SUB_RISKPLAN_LOG);
|
|
|
|
|
+ //首页预案是否同步疏散线路
|
|
|
|
|
+ messageSendService.SendBigViewUpdate(BigViewDataType.SUB_RISKPLAN_EXIT);
|
|
|
|
|
+ //关闭喇叭
|
|
|
|
|
+ closeLoudSpeaker(subFunction.getSubId(), groupVo.getFloorId(), groupVo.getRiskPlanId());
|
|
|
|
|
+ //停止录像并记录日志
|
|
|
|
|
+ stopVideoAndRecordLog(subFunction.getSubId(), groupVo.getId());
|
|
|
|
|
+ //更新结束预案日志
|
|
|
|
|
+ updateLogs(subFunction, groupVo);
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ log.error("手动关闭火焰预案发生异常!{}",e);
|
|
|
|
|
+ } finally {
|
|
|
|
|
+ //删除火焰报警的redis验证,这样其他传感器上报预案就能执行了
|
|
|
|
|
+ redisService.deleteObject("subjectByHuoyan"+subFunction.getSubId());
|
|
|
|
|
+ //删除预案升级火焰预案时,基本预案缓存
|
|
|
|
|
+ if (redisService.getCacheObject("subjectByYa" + subFunction.getSubId()) != null) {
|
|
|
|
|
+ redisService.deleteObject("subjectByYa" + subFunction.getSubId());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|