From 81dd45819944baa8032d942e2e28c5c859c0cc81 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期四, 15 六月 2023 10:37:46 +0800
Subject: [PATCH] 优化巡检

---
 ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java |   30 +++++++++++++++++-------------
 1 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
index bd28cfe..0405f7a 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
@@ -8,7 +8,6 @@
 import com.ruoyi.alarm.stealAlarm.mapper.ArdAlarmStealelecMapper;
 import com.ruoyi.alarm.tubeAlarm.domain.ArdAlarmTube;
 import com.ruoyi.alarm.tubeAlarm.mapper.ArdAlarmTubeMapper;
-import com.ruoyi.alarm.tubeAlarm.service.IArdAlarmTubeService;
 import com.ruoyi.alarmpoints.tube.domain.ArdTubes;
 import com.ruoyi.alarmpoints.tube.domain.ArdTubesDetails;
 import com.ruoyi.alarmpoints.tube.mapper.ArdTubesDetailsMapper;
@@ -19,10 +18,10 @@
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.tools.ArdTool;
 import com.ruoyi.common.utils.uuid.IdUtils;
-import com.ruoyi.common.utils.uuid.UUID;
 import com.ruoyi.device.camera.domain.ArdCameras;
 import com.ruoyi.device.camera.domain.CameraCmd;
 import com.ruoyi.device.camera.mapper.ArdCamerasMapper;
+import com.ruoyi.device.hiksdk.common.GlobalVariable;
 import com.ruoyi.device.hiksdk.config.MinioClientSingleton;
 import com.ruoyi.device.hiksdk.service.IHikClientService;
 import com.ruoyi.device.hiksdk.util.hikSdkUtil.GisUtil;
@@ -30,16 +29,13 @@
 import com.ruoyi.utils.tube.GeoPoint;
 import com.ruoyi.utils.tube.TubeTools;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.poi.ss.formula.functions.T;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
-
 import javax.annotation.Resource;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
 
-import static jdk.nashorn.internal.runtime.regexp.joni.Config.log;
 
 /**
  * @ClassName: globalAlarmServiceImpl
@@ -198,26 +194,34 @@
                         String minDistanceCameraId = ArdTool.getKeyByMinValue(distanceMap);
                         //寮曞鍏夌數
                         CameraCmd cmd = new CameraCmd();
-                        cmd.setOperator("sys_tube_leak");
                         cmd.setCameraId(minDistanceCameraId);
                         cmd.setChannelNum(1);
                         cmd.setTargetPosition(new double[]{ardAlarmTube.getLongitude(), ardAlarmTube.getLatitude()});
+                        cmd.setOperator("sys_tube_leak");
+                        cmd.setExpired(30);
                         boolean guideRes = hikClientService.setTargetPosition(cmd);
                         if(guideRes) {
+                            hikClientService.controlLock(cmd);
                             cmd.setEnable(true);
                             cmd.setRecordBucketName("record");
                             String time = new SimpleDateFormat("yyyyMMdd").format(new Date());
                             String recordName = minDistanceCameraId + "/" + time + "/" + simpleUUID + ".mp4";
                             cmd.setRecordObjectName(recordName);
                             hikClientService.recordToMinio(cmd);
+                            GlobalVariable.threadMap.put(minDistanceCameraId,Thread.currentThread().getName());//灏嗙浉鏈篿d涓庡綋鍓嶅鐞嗙嚎绋嬪悕绉扮粦瀹�
                             Thread.sleep(30000);
-                            cmd.setEnable(false);
-                            cmd.setUploadMinio(true);
-                            hikClientService.recordToMinio(cmd);
-                            //鏇存柊褰曞儚
-                            String url = MinioClientSingleton.domainUrl + "/" + cmd.getRecordBucketName() + "/" + recordName;
-                            ardAlarmTube.setRecordUrl(url);
-                            ardAlarmTubeMapper.updateArdAlarmTube(ardAlarmTube);
+                            String thread = GlobalVariable.threadMap.get(minDistanceCameraId);
+                            String currentThread = Thread.currentThread().getName();
+                            //鍒ゆ柇鐩告満缁戝畾绾跨▼鏄惁鏄綋鍓嶇嚎绋嬶紝濡傛灉鏄紝鍋滄褰曞儚锛屽鏋滀笉鏄紝璇存槑鐩告満琚叾浠栫嚎绋嬫姠鍗狅紝涓嶅仠姝㈠綍鍍�
+                            if(thread.equals(currentThread)) {
+                                cmd.setEnable(false);
+                                cmd.setUploadMinio(true);
+                                hikClientService.recordToMinio(cmd);
+                                //鏇存柊褰曞儚
+                                String url = MinioClientSingleton.domainUrl + "/" + cmd.getRecordBucketName() + "/" + recordName;
+                                ardAlarmTube.setRecordUrl(url);
+                                ardAlarmTubeMapper.updateArdAlarmTube(ardAlarmTube);
+                            }
                         }
                     }
                     break;

--
Gitblit v1.9.3