From 38f29e38fcc668171dc05c53d40a36b895c86102 Mon Sep 17 00:00:00 2001 From: liusuyi <1951119284@qq.com> Date: 星期四, 10 十月 2024 13:34:28 +0800 Subject: [PATCH] init --- ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java | 46 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 34 insertions(+), 12 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java index eb62b1c..4478731 100644 --- a/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java @@ -25,12 +25,17 @@ import com.ruoyi.utils.sdk.common.GlobalVariable; import com.ruoyi.utils.tools.ArdTool; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; +import org.springframework.context.ApplicationEventPublisher; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.*; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @@ -41,7 +46,7 @@ * @Date: 2023骞�10鏈�16鏃�15:21:01 **/ @Service -@Slf4j(topic = "SDK") +@Slf4j(topic = "sdk") public class CameraSdkServiceImpl implements ICameraSdkService, ApplicationRunner { @Resource private IArdCamerasService ardCamerasService; @@ -64,10 +69,27 @@ @Override public void run(ApplicationArguments args) { try { + log.info("鍒濆鍖栫櫥褰曠浉鏈哄紑濮�"); + ardCamerasService.resetCameraLoginId(); List<ArdCameras> ardCameras = ardCamerasService.selectArdCamerasListNoDataScope(new ArdCameras()); - for (ArdCameras camera : ardCameras) { - asyncLogin(camera); - } + ardCameras.stream().forEach(ardCamera -> asyncLogin(ardCamera)); + //寮�鍚櫥褰曞け璐ョ浉鏈洪噸杩炲畾鏃朵换鍔� + ScheduledExecutorService executor = Executors.newScheduledThreadPool(1); + executor.scheduleAtFixedRate(new Runnable() { + @Override + public void run() { + try { + log.info("寮�濮嬫墽琛岀櫥褰曞け璐ョ浉鏈洪噸杩炲畾鏃朵换鍔�"); + List<Object> ardCameras = redisCache.getListKey(CacheConstants.CAMERA_LIST_KEY); + ardCameras.stream() + .map(object -> (ArdCameras) object) // 灏哋bject杞崲涓篈rdCameras + .filter(camera -> !GlobalVariable.loginMap.containsKey(camera.getId())) + .forEach(camera -> asyncLogin(camera)); + } catch (Exception ex) { + log.error("閲嶈繛鐩告満寮傚父锛�" + ex.getMessage()); + } + } + }, 30, 30, TimeUnit.SECONDS); // 浠诲姟寤惰繜 } catch (Exception ex) { log.error("鍒濆鍖栫櫥褰曠浉鏈哄紓甯革細" + ex.getMessage()); } @@ -586,17 +608,17 @@ case 1: if (ardWellGuideCamera.getP1() != null) { ptzMap = new HashMap<>(); - ptzMap.put("p" , ardWellGuideCamera.getP1()); - ptzMap.put("t" , ardWellGuideCamera.getT1()); - ptzMap.put("z" , ardWellGuideCamera.getZ1()); + ptzMap.put("p", ardWellGuideCamera.getP1()); + ptzMap.put("t", ardWellGuideCamera.getT1()); + ptzMap.put("z", ardWellGuideCamera.getZ1()); } break; case 2: if (ardWellGuideCamera.getP2() != null) { ptzMap = new HashMap<>(); - ptzMap.put("p" , ardWellGuideCamera.getP2()); - ptzMap.put("t" , ardWellGuideCamera.getT2()); - ptzMap.put("z" , ardWellGuideCamera.getZ2()); + ptzMap.put("p", ardWellGuideCamera.getP2()); + ptzMap.put("t", ardWellGuideCamera.getT2()); + ptzMap.put("z", ardWellGuideCamera.getZ2()); } break; @@ -624,9 +646,9 @@ } //鎸変簳鍧愭爣寮�濮嬪紩瀵� if (!guideTargetPosition(cmd).get("code").equals(200)) { - return AjaxResult.warn("浜曞潗鏍囧紩瀵煎け璐�" , "cameraId:" + cameraId); + return AjaxResult.warn("浜曞潗鏍囧紩瀵煎け璐�", "cameraId:" + cameraId); } - return AjaxResult.success("浜曞潗鏍囧紩瀵兼垚鍔�" , "cameraId:" + cameraId); + return AjaxResult.success("浜曞潗鏍囧紩瀵兼垚鍔�", "cameraId:" + cameraId); } -- Gitblit v1.9.3