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