From 3591fc47eaa3e301252dc06d257d46bd3a45e120 Mon Sep 17 00:00:00 2001
From: liusuyi <13324259@qq.com>
Date: 星期一, 23 十月 2023 22:10:19 +0800
Subject: [PATCH] 相机sdk异步登录
---
ard-work/src/main/java/com/ruoyi/device/dhsdk/service/impl/DhClientServiceImpl.java | 43 ++++++-------------------------------------
1 files changed, 6 insertions(+), 37 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/device/dhsdk/service/impl/DhClientServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/dhsdk/service/impl/DhClientServiceImpl.java
index 2a20d7e..4fcaf12 100644
--- a/ard-work/src/main/java/com/ruoyi/device/dhsdk/service/impl/DhClientServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/device/dhsdk/service/impl/DhClientServiceImpl.java
@@ -18,6 +18,7 @@
import com.ruoyi.device.dhsdk.module.*;
import com.ruoyi.device.dhsdk.service.IDhClientService;
import com.ruoyi.device.hiksdk.common.GlobalVariable;
+import com.ruoyi.device.camera.service.impl.AsyncLogin;
import com.ruoyi.media.domain.Vtdu;
import com.ruoyi.media.service.IVtduService;
import com.ruoyi.utils.gis.GisUtil;
@@ -25,7 +26,6 @@
import com.sun.jna.Pointer;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -59,41 +59,12 @@
@Value("${minio.endpoint}")
private String minioEndPoint;
+
// 璁惧鏂嚎閫氱煡鍥炶皟
private static DisConnect disConnect = new DisConnect();
// 缃戠粶杩炴帴鎭㈠
private static HaveReConnect haveReConnect = new HaveReConnect();
- /**
- * 鐧诲綍鎵�鏈夌浉鏈�
- * 鍒樿嫃涔�
- * 2023/10/17 8:28:13
- */
- @Override
- public void loginAll() {
- try {
- ArdCameras ardCamera = new ArdCameras();
- ardCamera.setFactory("2");//鑾峰彇澶у崕鐩告満
- List<ArdCameras> ardCameras = ardCamerasService.selectArdCamerasListNoDataScope(ardCamera);
- for (ArdCameras camera : ardCameras) {
- Thread.sleep(500);
- //寮傛鐧诲綍
- login(camera);
- }
- } catch (Exception ex) {
- log.error("鍒濆鍖栫櫥褰曠浉鏈哄紓甯革細" + ex.getMessage());
- }
- }
-
- /**
- * sdk鍒濆鍖�
- * 鍒樿嫃涔�
- * 2023/10/17 8:28:13
- */
- @Override
- public Boolean init() {
- return LoginModule.init(disConnect, haveReConnect); // 鎵撳紑宸ョ▼锛屽垵濮嬪寲
- }
/**
* 鐧诲綍
@@ -101,8 +72,8 @@
* 2023/10/17 8:28:13
*/
@Override
- @Async
public Boolean login(ArdCameras camera) {
+ LoginModule.init(disConnect, haveReConnect);
LLong loginId = LoginModule.login(camera.getIp(), camera.getPort(), camera.getUsername(), camera.getPassword());
if (loginId.longValue() > 0) {
//log.debug(camera.getIp() + ":" + camera.getPort() + "鐧诲綍鎴愬姛");
@@ -168,7 +139,6 @@
ardCamerasService.updateArdCameras(camera);
return false;
}
-
return true;
}
@@ -217,6 +187,7 @@
* 2023/10/17 8:28:13
*/
@Override
+ @SdkOperate
public boolean pTZControl(CameraCmd cmd) {
String cameraId = cmd.getCameraId();
boolean enable = cmd.isEnable();
@@ -368,7 +339,6 @@
* @淇敼浜哄拰鍏跺畠淇℃伅 娉ㄦ剰淇话瑙掑害璐熷�奸渶瑕佸姞涓�360寰楀埌鐨勬鍊艰繘琛岃缃�
*/
@Override
- @SdkOperate
public boolean setZeroPtz(CameraCmd cmd) {
String cameraId = cmd.getCameraId();
Integer chanNo = cmd.getChanNo();
@@ -392,7 +362,6 @@
* @淇敼浜哄拰鍏跺畠淇℃伅
*/
@Override
- @SdkOperate
public String picCutCate(CameraCmd cmd) {
String cameraId = cmd.getCameraId();
Integer chanNo = cmd.getChanNo();
@@ -912,7 +881,7 @@
// 璁惧鏂嚎鍥炶皟: 褰撹澶囧嚭鐜版柇绾挎椂锛孲DK浼氳皟鐢ㄨ鍑芥暟
private static class DisConnect implements NetSDKLib.fDisConnect {
public void invoke(LLong m_hLoginHandle, String pchDVRIP, int nDVRPort, Pointer dwUser) {
- System.out.printf("Device[%s] Port[%d] DisConnect!\n", pchDVRIP, nDVRPort);
+ log.warn("Device["+pchDVRIP+"] Port["+nDVRPort+"] DisConnect!");
}
}
@@ -920,7 +889,7 @@
private static class HaveReConnect implements NetSDKLib.fHaveReConnect {
@Override
public void invoke(LLong lLoginID, String pchDVRIP, int nDVRPort, Pointer dwUser) {
- System.out.printf("ReConnect Device[%s] Port[%d]\n", pchDVRIP, nDVRPort);
+ log.warn("ReConnect Device["+pchDVRIP+"] Port["+nDVRPort+"]");
}
}
--
Gitblit v1.9.3