From 0a93967d8028733169ef9bcad7207026d4dea74e Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期一, 11 三月 2024 16:07:57 +0800 Subject: [PATCH] 增加雷达报警引导优先ptz引导 修改海康红外开关接口命令值 优化坐标数组改为实体类 --- ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueHandler.java | 42 ++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 40 insertions(+), 2 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueHandler.java b/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueHandler.java index 9d5fe47..484f0b7 100644 --- a/ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueHandler.java +++ b/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: 闃熷垪澶勭悊鍣� @@ -87,6 +91,7 @@ } } } + //寮傛澶勭悊浠诲姟 public void processTask(GuideTask guideTask) { try { @@ -99,15 +104,48 @@ cmd.setChanNo(guideTask.getChanNo()); cmd.setOperator(guideTask.getAlarmType()); cmd.setExpired(30); + Map<String, Double> ptzMap=new HashMap<>(); + if(guideTask.getTargetPTZ()!=null) { + if (guideTask.getChanNo() == 1) { + ptzMap.put("p", guideTask.getTargetPTZ().getP1()); + ptzMap.put("t", guideTask.getTargetPTZ().getT1()); + ptzMap.put("z", guideTask.getTargetPTZ().getZ1()); + } + if (guideTask.getChanNo() == 2) { + ptzMap.put("p", guideTask.getTargetPTZ().getP2()); + ptzMap.put("t", guideTask.getTargetPTZ().getT2()); + ptzMap.put("z", guideTask.getTargetPTZ().getZ2()); + } + cmd.setPtzMap(ptzMap); + } cmd.setRecordBucketName("record"); cmd.setTargetPosition(guideTask.getTargetPosition()); - cmd.setRecordObjectName("alarmGuide/"+ DateUtils.getDateYYYYMMDD()+"/"+guideTask.getAlarmType()+"/"+guideTask.getAlarmId()); + cmd.setRecordObjectName("alarmGuide/" + DateUtils.getDateYYYYMMDD() + "/" + guideTask.getAlarmType() + "/" + guideTask.getAlarmId()); ICameraSdkService cameraSdkService = SpringUtils.getBean(ICameraSdkService.class); log.debug("寮�濮嬪紩瀵�"); boolean recordFlag = false; - boolean guideRes = cameraSdkService.guideTargetPosition(cmd); + boolean guideRes = false; + if (guideTask.getIsGuidePTZ()) { + AjaxResult result = cameraSdkService.setPtz(cmd); + if (result.get("code").equals(200)) { + guideRes = true; + } + } else { + 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; -- Gitblit v1.9.3