|
@@ -578,7 +578,10 @@ public class GeoHazardMonitorTokenController {
|
|
|
List<TerminalHeartbeatLog> heartbeatLogList = terminalHeartbeatLogService.list(new LambdaQueryWrapper<TerminalHeartbeatLog>()
|
|
|
.orderByDesc(TerminalHeartbeatLog::getCreateTime)
|
|
|
.last("limit 2"));
|
|
|
- List<String> codeList = heartbeatLogList.stream().map(TerminalHeartbeatLog::getCameraCode).collect(Collectors.toList());
|
|
|
+ List<String> codeList = new ArrayList<>();
|
|
|
+ if (!ObjectUtils.isEmpty(heartbeatLogList)) {
|
|
|
+ codeList = heartbeatLogList.stream().map(TerminalHeartbeatLog::getCameraCode).collect(Collectors.toList());
|
|
|
+ }
|
|
|
|
|
|
//目视距离和里程位置
|
|
|
if (save && update) {
|
|
@@ -656,10 +659,12 @@ public class GeoHazardMonitorTokenController {
|
|
|
if (baseCameraManagementList.size() > 0) {
|
|
|
String playFlv = cameraUtil.heartbeatgetUrl(baseCameraManagementList.get(0).getCameraCode(), baseCameraManagementList.get(0).getChannel(), type);
|
|
|
//判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseCameraManagementList.get(0).getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(codeList)) {
|
|
|
+ if (!codeList.contains(baseCameraManagementList.get(0).getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -728,10 +733,12 @@ public class GeoHazardMonitorTokenController {
|
|
|
//判断流媒体是否有流
|
|
|
String playFlv = cameraUtil.heartbeatgetUrl(baseList.get(o).getCameraCode(), baseList.get(o).getChannel(), type);
|
|
|
//判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseList.get(o).getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(codeList)) {
|
|
|
+ if (!codeList.contains(baseList.get(o).getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -785,10 +792,12 @@ public class GeoHazardMonitorTokenController {
|
|
|
for (BaseCameraManagement baseCameraManagement : list1) {
|
|
|
cameraUtil.heartbeatgetUrl(baseCameraManagement.getCameraCode(), baseCameraManagement.getChannel(), type);
|
|
|
//判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseCameraManagement.getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(codeList)) {
|
|
|
+ if (!codeList.contains(baseCameraManagement.getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -827,13 +836,16 @@ public class GeoHazardMonitorTokenController {
|
|
|
log.info("--------------->>已进入拉四路视频");
|
|
|
for (BaseCameraManagement baseCameraManagement : list1) {
|
|
|
boolean finalType = type;
|
|
|
+ List<String> finalCodeList4 = codeList;
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
cameraUtil.heartbeatgetUrl(baseCameraManagement.getCameraCode(), baseCameraManagement.getChannel(), finalType);
|
|
|
//判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseCameraManagement.getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(finalCodeList4)) {
|
|
|
+ if (!finalCodeList4.contains(baseCameraManagement.getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -846,13 +858,16 @@ public class GeoHazardMonitorTokenController {
|
|
|
log.info("list1-------------->>" + list1.size());
|
|
|
for (BaseCameraManagement baseCameraManagement : list1) {
|
|
|
boolean finalType1 = type;
|
|
|
+ List<String> finalCodeList5 = codeList;
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
cameraUtil.heartbeatgetUrl(baseCameraManagement.getCameraCode(), baseCameraManagement.getChannel(), finalType1);
|
|
|
- //判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseCameraManagement.getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(finalCodeList5)) {
|
|
|
+ //判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
+ if (!finalCodeList5.contains(baseCameraManagement.getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -900,14 +915,17 @@ public class GeoHazardMonitorTokenController {
|
|
|
if (StringUtils.isEmpty(playFlv)) {
|
|
|
log.info("--------------->>已进入拉四路视频");
|
|
|
for (BaseCameraManagement baseCameraManagement : list1) {
|
|
|
+ List<String> finalCodeList2 = codeList;
|
|
|
boolean finalType2 = type;
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
cameraUtil.heartbeatgetUrl(baseCameraManagement.getCameraCode(), baseCameraManagement.getChannel(), finalType2);
|
|
|
- //判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseCameraManagement.getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(finalCodeList2)) {
|
|
|
+ //判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
+ if (!finalCodeList2.contains(baseCameraManagement.getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -920,13 +938,16 @@ public class GeoHazardMonitorTokenController {
|
|
|
log.info("list1-------------->>" + list1.size());
|
|
|
for (BaseCameraManagement baseCameraManagement : list1) {
|
|
|
boolean finalType3 = type;
|
|
|
+ List<String> finalCodeList3 = codeList;
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
cameraUtil.heartbeatgetUrl(baseCameraManagement.getCameraCode(), baseCameraManagement.getChannel(), finalType3);
|
|
|
- //判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
- if (!codeList.contains(baseCameraManagement.getCameraCode())) {
|
|
|
- //如果不包含此相机编码
|
|
|
- for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
- cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ if (!ObjectUtils.isEmpty(finalCodeList3)) {
|
|
|
+ //判断心跳相机日志表后两条数据是否包含该相机编码
|
|
|
+ if (!finalCodeList3.contains(baseCameraManagement.getCameraCode())) {
|
|
|
+ //如果不包含此相机编码
|
|
|
+ for (TerminalHeartbeatLog terminalHeartbeatLog : heartbeatLogList) {
|
|
|
+ cameraUtil.stopStream(terminalHeartbeatLog.getCameraCode(), terminalHeartbeatLog.getChannel());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
//添加心跳相机日志信息
|
|
@@ -1350,12 +1371,12 @@ public class GeoHazardMonitorTokenController {
|
|
|
if (ObjectUtils.isEmpty(one.getReleasedUrl())) {
|
|
|
//获取报警里程所监控的所有相机
|
|
|
LambdaQueryWrapper<BaseCameraManagement> camera = new LambdaQueryWrapper<BaseCameraManagement>();
|
|
|
- if (one.getLineDir()==1){
|
|
|
+ if (one.getLineDir() == 1) {
|
|
|
camera.ge(BaseCameraManagement::getBeginMile, one.getAlarmMile());
|
|
|
camera.le(BaseCameraManagement::getEndMile, one.getAlarmMile());
|
|
|
camera.in(BaseCameraManagement::getMonitoringDirection, 1, 3);
|
|
|
camera.orderByAsc(BaseCameraManagement::getInstallMile);
|
|
|
- }else if (one.getLineDir()==2){
|
|
|
+ } else if (one.getLineDir() == 2) {
|
|
|
camera.le(BaseCameraManagement::getBeginMile, one.getAlarmMile());
|
|
|
camera.ge(BaseCameraManagement::getEndMile, one.getAlarmMile());
|
|
|
camera.in(BaseCameraManagement::getMonitoringDirection, 2, 3);
|