From bb22ca2e9b9c60b0138a322ad49cab7ea8aa06e1 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期三, 25 十月 2023 17:12:54 +0800
Subject: [PATCH] 修复雷达引导2个相机引导录像重复问题;

---
 ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java |   45 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 36 insertions(+), 9 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java
index 4de42aa..1ef2e1a 100644
--- a/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/ArdCamerasServiceImpl.java
@@ -4,16 +4,16 @@
 import java.util.stream.Collectors;
 
 import com.ruoyi.common.constant.CacheConstants;
+import com.ruoyi.common.constant.CameraConstants;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.device.camera.domain.CameraCmd;
 import com.ruoyi.device.channel.domain.ArdChannel;
 import com.ruoyi.device.channel.mapper.ArdChannelMapper;
-import com.ruoyi.device.hiksdk.service.IHikClientService;
-import com.ruoyi.media.domain.Vtdu;
 import com.ruoyi.media.service.IVtduService;
 import com.ruoyi.scheduling.domian.SchedulingParam;
 import com.ruoyi.utils.gis.GisUtil;
@@ -51,8 +51,10 @@
     @Resource
     private IVtduService vtduService;
 
+
     @PostConstruct
     public void loadCameras() {
+
         //娓呯┖鐩告満缂撳瓨
         Collection<String> cacheKeys = redisCache.keys(getCacheKey("*"));
         redisCache.deleteObject(cacheKeys);
@@ -84,12 +86,12 @@
     public ArdCameras selectArdCamerasById(String id) {
         ArdCameras ardCameras = ardCamerasMapper.selectArdCamerasById(id);
         if (ardCameras != null) {
-                ArdChannel ardChannel = new ArdChannel();
-                ardChannel.setDeviceId(ardCameras.getId());
-                List<ArdChannel> ardChannels = ardChannelMapper.selectArdChannelList(ardChannel);
-                if (ardChannels != null) {
-                    ardCameras.setChannelList(ardChannels);
-                }
+            ArdChannel ardChannel = new ArdChannel();
+            ardChannel.setDeviceId(ardCameras.getId());
+            List<ArdChannel> ardChannels = ardChannelMapper.selectArdChannelList(ardChannel);
+            if (ardChannels != null) {
+                ardCameras.setChannelList(ardChannels);
+            }
         }
         return ardCameras;
     }
@@ -199,7 +201,15 @@
     }
 
     public List findOptions(ArdCameras ardCameras) {
-        return ardCamerasMapper.findOptions(ardCameras);
+        List<ArdCameras> options = ardCamerasMapper.findOptions(ardCameras);
+        for (ArdCameras camera :
+                options) {
+            ArdChannel ardChannel = new ArdChannel();
+            ardChannel.setDeviceId(camera.getId());
+            List<ArdChannel> ardChannels = ardChannelMapper.selectArdChannelList(ardChannel);
+            camera.setChannelList(ardChannels);
+        }
+        return options;
     }
 
     /**
@@ -412,4 +422,21 @@
         return null;
     }
 
+    /**
+     * 鏍¢獙鐩告満鏄惁鍞竴
+     *
+     * @param camera 鐩告満
+     * @return 缁撴灉
+     */
+    @Override
+    public String checkCameraIpAndPortUnique(ArdCameras camera) {
+        String id = camera.getId();
+        String ip = camera.getIp();
+        Integer port = camera.getPort();
+        ArdCameras info = ardCamerasMapper.checkCameraIpAndPortUnique(ip, port);
+        if (StringUtils.isNotNull(info) && !info.getId().equals(id)) {
+            return CameraConstants.NOT_UNIQUE;
+        }
+        return CameraConstants.UNIQUE;
+    }
 }

--
Gitblit v1.9.3