ard-work/src/main/java/com/ruoyi/alarm/global/domain/GuideTask.java
@@ -45,4 +45,9 @@ * 引导目标经纬度 */ double[] targetPosition; /** * 井号 */ String wellId; } ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
@@ -1086,6 +1086,7 @@ ardAlarmRadarMove.setLatitude(latitude); ardAlarmRadarMove.setUpdateTime(radarAlarmData.getAlarmTime()); ardAlarmRadarMove.setRadarId(radarId); ardAlarmRadarMove.setWellId(well.getWellId()); ardAlarmRadarMoveHandler(ardAlarmRadarMove); break; case "热源检测": @@ -1100,6 +1101,7 @@ ardAlarmRadarFire.setLatitude(latitude); ardAlarmRadarFire.setRadarId(radarId); ardAlarmRadarFire.setUpdateTime(radarAlarmData.getAlarmTime()); ardAlarmRadarFire.setWellId(well.getWellId()); ardAlarmRadarFireHandler(ardAlarmRadarFire); break; case "雷达抽油机停机": @@ -1114,6 +1116,7 @@ ardAlarmRadarPump.setUpdateTime(radarAlarmData.getAlarmTime()); ardAlarmRadarPump.setLongitude(well.getLongitude()); ardAlarmRadarPump.setLatitude(well.getLatitude()); ardAlarmRadarPump.setWellId(well.getWellId()); ardAlarmRadarPumpHandler(ardAlarmRadarPump); break; } @@ -1279,7 +1282,8 @@ return; } guideTask.setPriority(Integer.valueOf(priority)); guideTask.setTargetPosition(guideDataDto.getTargetPosition());//引导井ID guideTask.setTargetPosition(guideDataDto.getTargetPosition());//引导井坐标 guideTask.setWellId(guideDataDto.getWellId());//引导井ID //消息入队 queueHandler.addTaskToQueue(cameraId, guideTask); //打印队列 @@ -1379,6 +1383,7 @@ .setAlarmId(ardAlarmRadarMove.getId()) .setAlarmType(ardAlarmRadarMove.getAlarmType()) .setReceiveTime(ardAlarmRadarMove.getCreateTime()) .setWellId(ardAlarmRadarMove.getWellId()) .setTargetPosition(coordinate); getCameraGuideToQueue(guideDataDto);//获取相机入队 } @@ -1402,6 +1407,7 @@ .setAlarmId(ardAlarmRadarFire.getId()) .setAlarmType(ardAlarmRadarFire.getAlarmType()) .setReceiveTime(ardAlarmRadarFire.getCreateTime()) .setWellId(ardAlarmRadarFire.getWellId()) .setTargetPosition(coordinate); getCameraGuideToQueue(guideDataDto);//获取相机入队 } @@ -1426,6 +1432,7 @@ .setAlarmId(ardAlarmRadarPump.getId()) .setAlarmType(ardAlarmRadarPump.getAlarmType()) .setReceiveTime(ardAlarmRadarPump.getCreateTime()) .setWellId(ardAlarmRadarPump.getWellId()) .setTargetPosition(coordinate); getCameraGuideToQueue(guideDataDto);//获取相机入队 } ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueHandler.java
@@ -1,5 +1,6 @@ package com.ruoyi.alarm.global.service.impl; import com.alibaba.fastjson.JSON; import com.ruoyi.alarm.access.domain.ArdAlarmAccess; import com.ruoyi.alarm.access.service.IArdAlarmAccessService; import com.ruoyi.alarm.external.domain.ArdAlarmExternal; @@ -23,6 +24,7 @@ import com.ruoyi.device.camera.domain.ArdCameras; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.camera.service.ICameraSdkService; import com.ruoyi.utils.websocket.util.WebSocketUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component; @@ -33,6 +35,8 @@ import java.util.HashMap; import java.util.Map; import java.util.concurrent.*; import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS; /** * @Description: 队列处理器 @@ -108,6 +112,17 @@ boolean guideRes = cameraSdkService.guideTargetPosition(cmd); if (guideRes) { log.debug("引导成功"); //region 通知前端 Map<String,Object> message = new HashMap<>(); Map<String,String> data = new HashMap<>(); data.put("cameraId",cmd.getCameraId()); data.put("chanNo",cmd.getChanNo().toString()); data.put("alarmType",cmd.getOperator()); data.put("alarmId", guideTask.getAlarmId()); data.put("wellId",guideTask.getWellId()); message.put("70000",data); WebSocketUtils.sendMessageAll(message); //endregion cameraSdkService.controlLock(cmd);//上锁 cameraSdkService.recordStart(cmd);//开始录像 recordFlag = true; ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarFire.java
@@ -79,5 +79,8 @@ * 雷达ID */ private String radarId; /** * 井号 */ private String wellId; } ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarMove.java
@@ -79,5 +79,9 @@ * 雷达ID */ private String RadarId; /** * 井号 */ private String wellId; } ard-work/src/main/java/com/ruoyi/alarm/radar/domain/ArdAlarmRadarPump.java
@@ -103,6 +103,9 @@ * 雷达ID */ private String radarId; /** * 井号 */ private String wellId; } ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java
@@ -373,6 +373,14 @@ List<DeptAndCamerasDto> deptAndCamerasList = sysDepts.stream() .map(sysDept -> { List<ArdCameras> ardCameras = ardCamerasMapper.selectArdCamerasByDeptId(sysDept.getDeptId()); ardCameras.stream().forEach(ardCamera ->{ ArdChannel ardChannel = new ArdChannel(); ardChannel.setDeviceId(ardCamera.getId()); List<ArdChannel> ardChannels = ardChannelMapper.selectArdChannelList(ardChannel); if (ardChannels != null) { ardCamera.setChannelList(ardChannels); } }); DeptAndCamerasDto deptAndCamerasDto = new DeptAndCamerasDto(); deptAndCamerasDto.setSysDept(sysDept); deptAndCamerasDto.setArdCamerasList(ardCameras);