From a38cb5bb3898f8996321df8f8d537ea18f4af71f Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期五, 30 六月 2023 10:19:11 +0800
Subject: [PATCH] 优化

---
 ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/QueueTaskExecutor.java |   76 +++++++++++++++++++++++++++++++++----
 1 files changed, 67 insertions(+), 9 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/QueueTaskExecutor.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/QueueTaskExecutor.java
index 553da24..3f43366 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/QueueTaskExecutor.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/QueueTaskExecutor.java
@@ -1,25 +1,83 @@
 package com.ruoyi.alarm.globalAlarm.service.impl;
 
+import com.ruoyi.alarm.globalAlarm.domain.GuideTask;
+import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+import com.ruoyi.alarm.radarAlarm.service.IArdAlarmRadarService;
+import com.ruoyi.alarm.tubeAlarm.domain.ArdAlarmTube;
+import com.ruoyi.alarm.tubeAlarm.service.IArdAlarmTubeService;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.device.camera.domain.CameraCmd;
+import com.ruoyi.device.hiksdk.service.IHikClientService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+
 /**
  * @ClassName QueueTaskExecutor
- * @Description:
+ * @Description: 闃熷垪浠诲姟鎵ц鍣�
  * @Author 鍒樿嫃涔�
  * @Date 2023/6/29 21:10
  * @Version 1.0
  */
 
-import com.ruoyi.alarm.globalAlarm.domain.GuideTask;
-import org.springframework.stereotype.Component;
-
 @Component
+@Slf4j
 public class QueueTaskExecutor {
+    @Resource
+    IHikClientService hikClientService;
+    @Resource
+    IArdAlarmTubeService ardAlarmTubeService;
+    @Resource
+    IArdAlarmRadarService ardAlarmRadarService;
+
     public void processTask(GuideTask guideTask) {
-        System.out.println("Executing task: " + guideTask.getAlarmId());
         try {
-            Thread.sleep(30000);
-        } catch (InterruptedException e) {
-            e.printStackTrace();
+            CameraCmd cmd = new CameraCmd();
+            cmd.setCameraId(guideTask.getCameraId());
+            cmd.setChannelNum(guideTask.getNum());
+            boolean guideRes = hikClientService.guideTargetPosition(cmd);
+            if (guideRes) {
+                hikClientService.controlLock(cmd);//涓婇攣
+                cmd.setEnable(true);//寮�濮嬪綍鍍�
+                hikClientService.recordToMinio(cmd);//寮�濮嬪綍鍍�
+                Thread.sleep(30000);
+                cmd.setEnable(false);//鍋滄褰曞儚
+                cmd.setUploadMinio(true);//涓婁紶minio
+                String url = hikClientService.recordToMinio(cmd);//鍋滄褰曞儚杩斿洖url
+                if (StringUtils.isNotEmpty(url)) {
+                    switch (guideTask.getAlarmType()) {
+                        case "sys_tube_leak":
+                            ArdAlarmTube ardAlarmTube = new ArdAlarmTube();
+                            ardAlarmTube.setId(guideTask.getAlarmId());
+                            ardAlarmTube.setRecordUrl(url);
+                            ardAlarmTubeService.updateArdAlarmTube(ardAlarmTube);
+                            break;
+                        case "sys_radar_move":
+                            ArdAlarmRadar ardAlarmRadar = new ArdAlarmRadar();
+                            ardAlarmRadar.setId(guideTask.getAlarmId());
+                            if (guideTask.getRecordSn().equals(1)) {
+                                ardAlarmRadar.setRecordUrl1(url);
+                            } else {
+                                ardAlarmRadar.setRecordUrl2(url);
+                            }
+                            ardAlarmRadarService.updateArdAlarmRadar(ardAlarmRadar);
+                            break;
+                        case "sys_radar_fire":
+                            ardAlarmRadar = new ArdAlarmRadar();
+                            ardAlarmRadar.setId(guideTask.getAlarmId());
+                            if (guideTask.getRecordSn().equals(1)) {
+                                ardAlarmRadar.setRecordUrl1(url);
+                            } else {
+                                ardAlarmRadar.setRecordUrl2(url);
+                            }
+                            ardAlarmRadarService.updateArdAlarmRadar(ardAlarmRadar);
+                            break;
+                    }
+                }
+            }
+        } catch (Exception ex) {
+            log.info("鑷姩寮曞寮傚父:" + ex.getMessage());
         }
-        System.out.println("finished task: " + guideTask.getAlarmId());
     }
 }

--
Gitblit v1.9.3