From 32174535f5cd608c87992a9cdec259a803af63e4 Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期六, 13 四月 2024 13:35:35 +0800 Subject: [PATCH] 增加视频巡检兴趣点上报 --- ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java | 105 ++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 85 insertions(+), 20 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 8f1a9b0..e3aac54 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 @@ -29,6 +29,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; import java.util.*; @@ -59,12 +60,11 @@ */ @Override public void run(ApplicationArguments args) { - try { // 浠巃rdCamerasService涓幏鍙朅rdCameras鍒楄〃 List<ArdCameras> ardCameras = ardCamerasService.selectArdCamerasListNoDataScope(new ArdCameras()); for (ArdCameras camera : ardCameras) { - login(camera); + asyncLogin(camera); } } catch (Exception ex) { // 鍒濆鍖栫櫥褰曠浉鏈哄紓甯革紝璁板綍閿欒鏃ュ織 @@ -73,23 +73,35 @@ } - //鐧诲綍 + //鍚屾鐧诲綍 @Override - public Boolean login(ArdCameras ardCamera) { - boolean result = false; + public AjaxResult login(ArdCameras ardCamera) { try { - if (ardCamera != null) { - String factory = ardCamera.getFactory(); - CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); - //sdkStrategy.login(ardCamera);//鍚屾鐧诲綍 - cameraSDK.asyncLogin(ardCamera);//寮傛鐧诲綍 - result = true; + if (ardCamera == null) { + return AjaxResult.error("鐧诲綍鐩告満澶辫触锛岀浉鏈轰笉瀛樺湪"); } + String factory = ardCamera.getFactory(); + CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); + return cameraSDK.login(ardCamera);//鍚屾鐧诲綍 } catch (Exception ex) { log.error("鐧诲綍寮傚父锛�" + ex.getMessage()); - return false; + return AjaxResult.error("鐧诲綍寮傚父锛�" + ex.getMessage()); } - return result; + } + + @Override + public AjaxResult asyncLogin(ArdCameras ardCamera) { + try { + if (ardCamera == null) { + return AjaxResult.error("鐧诲綍鐩告満澶辫触锛岀浉鏈轰笉瀛樺湪"); + } + String factory = ardCamera.getFactory(); + CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); + return cameraSDK.asyncLogin(ardCamera);//寮傛鐧诲綍 + } catch (Exception ex) { + log.error("鐧诲綍寮傚父锛�" + ex.getMessage()); + return AjaxResult.error("鐧诲綍寮傚父锛�" + ex.getMessage()); + } } //娉ㄩ攢 @@ -373,9 +385,25 @@ } } + //鏈湴鎶撳浘 @Override - public String captureJPEGPicture(CameraCmd cmd) { - return null; + public AjaxResult localCapture(CameraCmd cmd) { + try { + String cameraId = cmd.getCameraId(); + ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); + if (ardCamera != null) { + String factory = ardCamera.getFactory(); + CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); + return cameraSDK.localCapture(cmd); + } + else + { + return AjaxResult.error("鎽勫儚澶翠笉瀛樺湪"); + } + } catch (Exception ex) { + log.error("鎵嬪姩鎶撳浘寮傚父:" + ex.getMessage()); + return AjaxResult.error("鎵嬪姩鎶撳浘寮傚父:" + ex.getMessage()); + } } //鎶撳浘 @@ -463,7 +491,7 @@ } catch (Exception ex) { log.error("璁剧疆ptz寮傚父锛�" + ex.getMessage()); - return AjaxResult.error("璁剧疆ptz寮傚父:" + ex.getMessage()); + return AjaxResult.error("璁剧疆ptz寮傚父:" + ex.getMessage()); } } @@ -689,8 +717,7 @@ public AjaxResult controlLock(CameraCmd cmd) { String cameraId = cmd.getCameraId();//鐢宠閿佺殑鐩告満 ArdCameras ardCameras = ardCamerasService.selectArdCamerasById(cameraId); - if(ardCameras==null) - { + if (ardCameras == null) { return AjaxResult.error("璁惧鏈櫥褰�"); } Date now = new Date(); @@ -713,8 +740,7 @@ String cameraId = cmd.getCameraId();//鐢宠瑙i攣鐨勭浉鏈� String operator = cmd.getOperator();//鐢宠鑰� ArdCameras ardCameras = ardCamerasService.selectArdCamerasById(cameraId); - if(ardCameras==null) - { + if (ardCameras == null) { return AjaxResult.error("璁惧鏈櫥褰�"); } if (ardCameras.getOperatorId().equals(operator)) { @@ -820,4 +846,43 @@ return AjaxResult.error("鑾峰彇鐩告満鏋惰鍙傛暟寮傚父锛�" + ex.getMessage()); } } + + //鏈湴褰曞儚寮�濮� + @Override + public AjaxResult localRecordStart(CameraCmd cmd) { + try { + String cameraId = cmd.getCameraId(); + ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); + if (ardCamera != null) { + String factory = ardCamera.getFactory(); + CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); + return cameraSDK.localRecordStart(cmd); + } else { + return AjaxResult.error("鐩告満涓嶅瓨鍦�"); + } + } catch (Exception ex) { + log.error("鏈湴褰曞儚寮�濮嬪紓甯革細" + ex.getMessage()); + return AjaxResult.error("鏈湴褰曞儚寮�濮嬪紓甯革細" + ex.getMessage()); + } + } + //鏈湴褰曞儚鍋滄 + @Override + public AjaxResult localRecordStop(CameraCmd cmd) { + try { + String cameraId = cmd.getCameraId(); + ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); + if (ardCamera != null) { + String factory = ardCamera.getFactory(); + CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); + return cameraSDK.localRecordStop(cmd); + } + else + { + return AjaxResult.error("鐩告満涓嶅瓨鍦�"); + } + } catch (Exception ex) { + log.error("鏈湴褰曞儚鍋滄寮傚父锛�" + ex.getMessage()); + return AjaxResult.error("鏈湴褰曞儚鍋滄寮傚父锛�" + ex.getMessage()); + } + } } -- Gitblit v1.9.3