From 1ca9656140c41165459dfb6f6b7606b3aa6a8747 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: Wed, 24 Jul 2024 15:05:13 +0800
Subject: [PATCH] 三一车辆查询加入关联后bug修改提交

---
 ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/QueueHandler.java |   33 ++++++++++++++++++++++-----------
 1 files changed, 22 insertions(+), 11 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 05ebddc..3ffd02d 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
@@ -138,21 +138,11 @@
             }
             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;
                 Instant startTime = Instant.now();
+                Instant startTime1 = startTime;
                 while (recordFlag) {
                     //判断时间
                     Instant currentTime = Instant.now();
@@ -172,6 +162,27 @@
                             recordFlag = false;//录像停止
                         }
                     }
+                    //region 通知前端
+                    long seconds = Duration.between(startTime1, currentTime).getSeconds();
+                    // 判断当前时间与上次发送数据的时间间隔是否超过2秒
+                    if (seconds == 2) {
+                        Map<String, Object> message = new HashMap<>();
+                        Map<String, String> data = new HashMap<>();
+                        data.put("cameraId", cmd.getCameraId());
+                        data.put("wellId", guideTask.getWellId());
+                        switch (guideTask.getAlarmType())
+                        {
+                            case "sys_radar_move":data.put("type", "雷达移动报警");break;
+                            case "sys_radar_fire":data.put("type", "红外防火报警");break;
+                            case "sys_radar_pump":data.put("type", "抽油机停机报警");break;
+                            default:data.put("type", "雷达报警");break;
+                        }
+
+                        message.put("70000", data);
+                        WebSocketUtils.sendMessageAll(message);
+                        startTime1 = currentTime; // 更新上次发送数据的时间戳
+                    }
+                    //endregion
                 }
                 if (StringUtils.isNotEmpty(url)) {
                     switch (guideTask.getAlarmType()) {

--
Gitblit v1.9.3