From 36de05a5caf9050c49b15a9ef9487f35518b208a Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: Wed, 08 Nov 2023 11:06:45 +0800
Subject: [PATCH] sdk切换更改为工厂模式
---
ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/controller/HikSdkController.java | 4
ard-work/src/main/java/com/ruoyi/device/radar/controller/ArdEquipRadarController.java | 5
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysMenuController.java | 53 +++-----
ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java | 2
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java | 8
ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDK.java | 9
ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties | 2
ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java | 114 +++++++++---------
/dev/null | 43 -------
ruoyi-admin/src/main/resources/i18n/messages_en_US.properties | 3
ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDKFactory.java | 42 +++++++
ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java | 5
ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/controller/DhSdkController.java | 4
ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/lib/LoginResultCallBack.java | 4
ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java | 6
15 files changed, 143 insertions(+), 161 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategy.java b/ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDK.java
similarity index 90%
rename from ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategy.java
rename to ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDK.java
index 3c9e278..1eea46a 100644
--- a/ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategy.java
+++ b/ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDK.java
@@ -1,4 +1,4 @@
-package com.ruoyi.device.camera.strategy;
+package com.ruoyi.device.camera.factory;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
@@ -11,7 +11,7 @@
* 刘苏义
* 2023/11/7 10:48:52
*/
-public interface SdkStrategy {
+public interface CameraSDK {
//同步登录
boolean login(ArdCameras cameras);
@@ -85,7 +85,6 @@
//手动录像
String record(CameraCmd cmd);
-
//引导目标位置
boolean guideTargetPosition(CameraCmd cmd);
@@ -99,8 +98,8 @@
boolean recordStopNotToMinio(CameraCmd cmd);
//获取相机通道信息
- public List<ArdChannel> getCameraChannelList(ArdCameras camera);
+ List<ArdChannel> getCameraChannelList(ArdCameras camera);
//获取GIS信息数据
- public Map<String, Object> getGisInfo(CameraCmd cmd);
+ Map<String, Object> getGisInfo(CameraCmd cmd);
}
diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDKFactory.java b/ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDKFactory.java
new file mode 100644
index 0000000..b6f8813
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDKFactory.java
@@ -0,0 +1,42 @@
+package com.ruoyi.device.camera.factory;
+
+import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK;
+import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+
+
+/**
+ * @Description: SDK策略工厂类
+ * @ClassName: SdkStrategyFactory
+ * @Author: 刘苏义
+ * @Date: 2023年11月07日10:53:00
+ **/
+@Component
+public class CameraSDKFactory {
+
+ @Resource
+ private HikvisionSDK hikvisionSDK;
+ @Resource
+ private DahuaSDK dahuaSDK;
+
+ /**
+ * 根据传入的工厂参数创建相应的相机SDK实例
+ *
+ * @param factory 工厂参数,用于确定要创建的相机SDK类型
+ * @return 创建的相机SDK实例
+ * @throws IllegalArgumentException 如果传入的工厂参数不支持
+ */
+ public CameraSDK createCameraSDK(String factory) {
+ if (factory.equals("1")) {
+ return hikvisionSDK;
+ } else if (factory.equals("2")) {
+ return dahuaSDK;
+ } else {
+ throw new IllegalArgumentException("Unsupported device: " + factory);
+ }
+ }
+
+
+}
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 bd6a533..ef9e57d 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
@@ -7,8 +7,8 @@
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.IArdCamerasService;
import com.ruoyi.device.camera.service.ICameraSdkService;
-import com.ruoyi.device.camera.strategy.SdkStrategy;
-import com.ruoyi.device.camera.strategy.SdkStrategyFactory;
+import com.ruoyi.device.camera.factory.CameraSDK;
+import com.ruoyi.device.camera.factory.CameraSDKFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
@@ -34,7 +34,7 @@
@Resource
private RedisCache redisCache;
@Resource
- private SdkStrategyFactory sdkStrategyFactory;
+ private CameraSDKFactory cameraSDKFactory;
/**
* 启动线程方法,用于执行初始化登录相机的逻辑
@@ -64,9 +64,9 @@
try {
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
//sdkStrategy.login(ardCamera);//同步登录
- sdkStrategy.asyncLogin(ardCamera);//异步登录
+ cameraSDK.asyncLogin(ardCamera);//异步登录
result=true;
}
} catch (Exception ex) {
@@ -84,8 +84,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.logout(cameraId);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.logout(cameraId);
}
} catch (Exception ex) {
log.error("注销异常:" + ex.getMessage());
@@ -103,8 +103,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- onLine = sdkStrategy.isOnLine(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ onLine = cameraSDK.isOnLine(cmd);
}
return onLine;
} catch (Exception ex) {
@@ -123,8 +123,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.pTZControl(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.pTZControl(cmd);
}
return result;
} catch (Exception ex) {
@@ -142,8 +142,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.setFocusPos(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.setFocusPos(cmd);
}
} catch (Exception ex) {
log.error("设置聚焦值异常:" + ex.getMessage());
@@ -161,8 +161,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.getFocusPos(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.getFocusPos(cmd);
}
} catch (Exception ex) {
log.error("获取聚焦值异常:" + ex.getMessage());
@@ -180,8 +180,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.setPreset(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.setPreset(cmd);
}
} catch (Exception ex) {
log.error("设置预置位异常:" + ex.getMessage());
@@ -199,8 +199,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.gotoPreset(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.gotoPreset(cmd);
}
} catch (Exception ex) {
log.error("调用预置位异常:" + ex.getMessage());
@@ -217,8 +217,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- map = sdkStrategy.getVideoCompressionCfg(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ map = cameraSDK.getVideoCompressionCfg(cmd);
}
} catch (Exception ex) {
log.error("获取码流压缩参数异常:" + ex.getMessage());
@@ -235,8 +235,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.controlDefogcfg(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.controlDefogcfg(cmd);
}
} catch (Exception ex) {
log.error("操控透雾异常:" + ex.getMessage());
@@ -253,8 +253,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.controlInfrarecfg(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.controlInfrarecfg(cmd);
}
} catch (Exception ex) {
log.error("操控红外异常:" + ex.getMessage());
@@ -271,8 +271,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.controlFocusMode(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.controlFocusMode(cmd);
}
} catch (Exception ex) {
log.error("操控聚焦模式异常:" + ex.getMessage());
@@ -289,8 +289,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.getFocusMode(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.getFocusMode(cmd);
}
} catch (Exception ex) {
log.error("获取聚焦模式异常:" + ex.getMessage());
@@ -307,8 +307,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.controlPTHeateRpwron(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.controlPTHeateRpwron(cmd);
}
} catch (Exception ex) {
log.error("操控云台加热异常:" + ex.getMessage());
@@ -325,8 +325,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.controlCameraDeicing(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.controlCameraDeicing(cmd);
}
} catch (Exception ex) {
log.error("操控云台加热异常:" + ex.getMessage());
@@ -343,8 +343,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.getPTZLockInfo(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.getPTZLockInfo(cmd);
}
} catch (Exception ex) {
log.error("获取云台锁定信息异常:" + ex.getMessage());
@@ -370,8 +370,8 @@
if (ardCamera != null) {
//获取摄像头工厂
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- url = sdkStrategy.picCutCate(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ url = cameraSDK.picCutCate(cmd);
}
} catch (Exception ex) {
log.error("抓图异常:" + ex.getMessage());
@@ -388,8 +388,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- map = sdkStrategy.getPtz(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ map = cameraSDK.getPtz(cmd);
}
} catch (Exception ex) {
log.error("获取ptz异常:" + ex.getMessage());
@@ -406,8 +406,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- map = sdkStrategy.getPtzScope(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ map = cameraSDK.getPtzScope(cmd);
}
} catch (Exception ex) {
log.error("获取ptz范围异常:" + ex.getMessage());
@@ -425,8 +425,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.setPtz(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.setPtz(cmd);
}
} catch (Exception ex) {
log.error("设置ptz异常:" + ex.getMessage());
@@ -444,8 +444,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.setZeroPtz(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.setZeroPtz(cmd);
}
} catch (Exception ex) {
log.error("设置零方位角异常:" + ex.getMessage());
@@ -463,8 +463,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.guideTargetPosition(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.guideTargetPosition(cmd);
}
} catch (Exception ex) {
log.error("引导指向目标异常:" + ex.getMessage());
@@ -527,8 +527,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- url = sdkStrategy.record(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ url = cameraSDK.record(cmd);
}
} catch (Exception ex) {
log.error("录像异常:" + ex.getMessage());
@@ -545,8 +545,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.recordStart(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.recordStart(cmd);
}
} catch (Exception ex) {
log.error("开始录像异常:" + ex.getMessage());
@@ -563,8 +563,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- url = sdkStrategy.recordStopToMinio(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ url = cameraSDK.recordStopToMinio(cmd);
}
} catch (Exception ex) {
log.error("停止录像异常:" + ex.getMessage());
@@ -581,8 +581,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- result = sdkStrategy.recordStopNotToMinio(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ result = cameraSDK.recordStopNotToMinio(cmd);
}
} catch (Exception ex) {
log.error("停止录像异常:" + ex.getMessage());
@@ -599,8 +599,8 @@
ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
if (ardCamera != null) {
String factory = ardCamera.getFactory();
- SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory);
- map = sdkStrategy.getGisInfo(cmd);
+ CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
+ map = cameraSDK.getGisInfo(cmd);
}
} catch (Exception ex) {
log.error("获取相机架设参数异常:" + ex.getMessage());
diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategyFactory.java b/ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategyFactory.java
deleted file mode 100644
index 56c01bf..0000000
--- a/ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategyFactory.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.ruoyi.device.camera.strategy;
-
-import com.ruoyi.device.camera.domain.ArdCameras;
-import com.ruoyi.utils.sdk.dhsdk.service.impl.DhSdkStrategy;
-import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import javax.annotation.Resource;
-
-
-/**
- * @Description: SDK策略工厂类
- * @ClassName: SdkStrategyFactory
- * @Author: 刘苏义
- * @Date: 2023年11月07日10:53:00
- **/
-@Component
-public class SdkStrategyFactory {
-
- @Resource
- private HikSdkStrategy hikSdkStrategy;
- @Resource
- private DhSdkStrategy dhSdkStrategy;
-
- /**
- * 根据传入的工厂参数获取对应的Sdk策略
- *
- * @param factory 工厂参数
- * @return 对应的Sdk策略
- * @throws IllegalArgumentException 如果不支持该工厂参数
- */
- public SdkStrategy getSdkStrategy(String factory) {
- if (factory.equals("1")) {
- return hikSdkStrategy;
- } else if (factory.equals("2")) {
- return dhSdkStrategy;
- } else {
- throw new IllegalArgumentException("Unsupported device: " + factory);
- }
- }
-
-}
diff --git a/ard-work/src/main/java/com/ruoyi/device/radar/controller/ArdEquipRadarController.java b/ard-work/src/main/java/com/ruoyi/device/radar/controller/ArdEquipRadarController.java
index 62de8d8..42ea28a 100644
--- a/ard-work/src/main/java/com/ruoyi/device/radar/controller/ArdEquipRadarController.java
+++ b/ard-work/src/main/java/com/ruoyi/device/radar/controller/ArdEquipRadarController.java
@@ -117,8 +117,11 @@
return toAjax(ardEquipRadarService.deleteArdEquipRadarByIds(ids));
}
+ /**
+ * 角度引导信息反馈
+ */
@ApiOperation(value = "角度引导信息反馈")
- @PostMapping("/guideInfo")
+ @PostMapping("/guideInfoBack")
public AjaxResult guideInfoBack(@RequestBody GuideInfo guideInfo)
{
return radarClient.guideInfoBack(guideInfo);
diff --git a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java
index be01a5c..cda3474 100644
--- a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java
+++ b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java
@@ -2,11 +2,9 @@
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.ICameraSdkService;
-import com.ruoyi.device.camera.service.impl.CameraSdkServiceImpl;
import com.ruoyi.utils.sdk.common.GlobalVariable;
import com.ruoyi.inspect.domain.ArdVideoInspectTask;
import com.ruoyi.inspect.mapper.ArdVideoInspectTaskMapper;
-import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/controller/DhSdkController.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/controller/DhSdkController.java
index 19504fb..5ad5f7a 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/controller/DhSdkController.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/controller/DhSdkController.java
@@ -8,7 +8,7 @@
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.device.camera.domain.CameraCmd;
-import com.ruoyi.utils.sdk.dhsdk.service.impl.DhSdkStrategy;
+import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
@@ -36,7 +36,7 @@
public class DhSdkController extends BaseController {
@Resource
- private DhSdkStrategy sdk;
+ private DahuaSDK sdk;
@ApiOperation(value = "云台控制", notes = "Code:1-左上 2-上 3-右上 4-左 5-巡航 6-右 7-左下 8-下 9-右下 10-焦距变大 11-焦距变小\n" +
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DhSdkStrategy.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
similarity index 99%
rename from ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DhSdkStrategy.java
rename to ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
index d2a2a2a..1cced79 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DhSdkStrategy.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
@@ -2,11 +2,10 @@
import com.ruoyi.alarm.global.domain.GuidePriorityQueue;
import com.ruoyi.alarm.global.domain.GuideTask;
-import com.ruoyi.common.annotation.SdkOperate;
import com.ruoyi.common.utils.file.FileUtils;
import com.ruoyi.common.utils.file.MimeTypeUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
-import com.ruoyi.device.camera.strategy.SdkStrategy;
+import com.ruoyi.device.camera.factory.CameraSDK;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.IArdCamerasService;
@@ -25,7 +24,6 @@
import com.ruoyi.utils.sdk.dhsdk.module.*;
import com.sun.jna.Pointer;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@@ -54,7 +52,7 @@
**/
@Slf4j(topic = "dhSdk")
@Service
-public class DhSdkStrategy implements SdkStrategy {
+public class DahuaSDK implements CameraSDK {
@Resource
private IArdCamerasService ardCamerasService;
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/controller/HikSdkController.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/controller/HikSdkController.java
index 1701076..b0a3fd4 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/controller/HikSdkController.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/controller/HikSdkController.java
@@ -10,7 +10,7 @@
import com.ruoyi.device.camera.service.IArdCamerasService;
import com.ruoyi.common.annotation.Anonymous;
import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy;
+import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
@@ -35,7 +35,7 @@
public class HikSdkController extends BaseController {
@Resource
- private HikSdkStrategy sdk;
+ private HikvisionSDK sdk;
@Resource
private IArdCamerasService ardCamerasService;
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/lib/LoginResultCallBack.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/lib/LoginResultCallBack.java
index 5185b86..14a235e 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/lib/LoginResultCallBack.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/lib/LoginResultCallBack.java
@@ -11,7 +11,7 @@
import com.ruoyi.utils.sdk.common.GlobalVariable;
import com.ruoyi.media.domain.Vtdu;
import com.ruoyi.media.service.IVtduService;
-import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy;
+import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK;
import com.sun.jna.Pointer;
import lombok.extern.slf4j.Slf4j;
import java.util.Comparator;
@@ -38,7 +38,7 @@
public int invoke(int lUserID, int dwResult, HCNetSDK.NET_DVR_DEVICEINFO_V30 lpDeviceinfo, Pointer pUser) {
IVtduService vtduService = SpringUtils.getBean(IVtduService.class);
IArdChannelService ardChannelService = SpringUtils.getBean(IArdChannelService.class);
- HikSdkStrategy hikClientService = SpringUtils.getBean(HikSdkStrategy.class);
+ HikvisionSDK hikClientService = SpringUtils.getBean(HikvisionSDK.class);
IArdCamerasService ardCamerasService = SpringUtils.getBean(IArdCamerasService.class);
if (GlobalVariable.loginMap.containsKey(camera.getId())) {
GlobalVariable.loginMap.remove(camera.getId());
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikSdkStrategy.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
similarity index 99%
rename from ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikSdkStrategy.java
rename to ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
index b3af56a..4992f17 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikSdkStrategy.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
@@ -2,12 +2,11 @@
import com.ruoyi.alarm.global.domain.GuidePriorityQueue;
import com.ruoyi.alarm.global.domain.GuideTask;
-import com.ruoyi.common.annotation.SdkOperate;
import com.ruoyi.common.utils.file.FileUtils;
import com.ruoyi.common.utils.file.MimeTypeUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.device.camera.service.IArdCamerasService;
-import com.ruoyi.device.camera.strategy.SdkStrategy;
+import com.ruoyi.device.camera.factory.CameraSDK;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.channel.domain.ArdChannel;
@@ -46,7 +45,7 @@
**/
@Service
@Slf4j(topic = "hikSdk")
-public class HikSdkStrategy implements SdkStrategy {
+public class HikvisionSDK implements CameraSDK {
@Resource
private IArdCamerasService ardCamerasService;
@Resource
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysMenuController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysMenuController.java
index a375eeb..32a2326 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysMenuController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysMenuController.java
@@ -1,7 +1,10 @@
package com.ruoyi.web.controller.system;
import java.util.List;
+
+import com.ruoyi.common.utils.MessageUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
@@ -23,13 +26,12 @@
/**
* 菜单信息
- *
+ *
* @author ruoyi
*/
@RestController
@RequestMapping("/system/menu")
-public class SysMenuController extends BaseController
-{
+public class SysMenuController extends BaseController {
@Autowired
private ISysMenuService menuService;
@@ -38,8 +40,7 @@
*/
@PreAuthorize("@ss.hasPermi('system:menu:list')")
@GetMapping("/list")
- public AjaxResult list(SysMenu menu)
- {
+ public AjaxResult list(SysMenu menu) {
List<SysMenu> menus = menuService.selectMenuList(menu, getUserId());
return success(menus);
}
@@ -49,8 +50,7 @@
*/
@PreAuthorize("@ss.hasPermi('system:menu:query')")
@GetMapping(value = "/{menuId}")
- public AjaxResult getInfo(@PathVariable Long menuId)
- {
+ public AjaxResult getInfo(@PathVariable Long menuId) {
return success(menuService.selectMenuById(menuId));
}
@@ -58,8 +58,7 @@
* 获取菜单下拉树列表
*/
@GetMapping("/treeselect")
- public AjaxResult treeselect(SysMenu menu)
- {
+ public AjaxResult treeselect(SysMenu menu) {
List<SysMenu> menus = menuService.selectMenuList(menu, getUserId());
return success(menuService.buildMenuTreeSelect(menus));
}
@@ -68,8 +67,7 @@
* 加载对应角色菜单列表树
*/
@GetMapping(value = "/roleMenuTreeselect/{roleId}")
- public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId)
- {
+ public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId) {
List<SysMenu> menus = menuService.selectMenuList(getUserId());
AjaxResult ajax = AjaxResult.success();
ajax.put("checkedKeys", menuService.selectMenuListByRoleId(roleId));
@@ -83,14 +81,10 @@
@PreAuthorize("@ss.hasPermi('system:menu:add')")
@Log(title = "菜单管理", businessType = BusinessType.INSERT)
@PostMapping
- public AjaxResult add(@Validated @RequestBody SysMenu menu)
- {
- if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu)))
- {
+ public AjaxResult add(@Validated @RequestBody SysMenu menu) {
+ if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) {
return error("新增菜单'" + menu.getMenuName() + "'失败,菜单名称已存在");
- }
- else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath()))
- {
+ } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) {
return error("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头");
}
menu.setCreateBy(getUsername());
@@ -103,18 +97,12 @@
@PreAuthorize("@ss.hasPermi('system:menu:edit')")
@Log(title = "菜单管理", businessType = BusinessType.UPDATE)
@PutMapping
- public AjaxResult edit(@Validated @RequestBody SysMenu menu)
- {
- if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu)))
- {
+ public AjaxResult edit(@Validated @RequestBody SysMenu menu) {
+ if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) {
return error("修改菜单'" + menu.getMenuName() + "'失败,菜单名称已存在");
- }
- else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath()))
- {
+ } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) {
return error("修改菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头");
- }
- else if (menu.getMenuId().equals(menu.getParentId()))
- {
+ } else if (menu.getMenuId().equals(menu.getParentId())) {
return error("修改菜单'" + menu.getMenuName() + "'失败,上级菜单不能选择自己");
}
menu.setUpdateBy(getUsername());
@@ -127,14 +115,11 @@
@PreAuthorize("@ss.hasPermi('system:menu:remove')")
@Log(title = "菜单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{menuId}")
- public AjaxResult remove(@PathVariable("menuId") Long menuId)
- {
- if (menuService.hasChildByMenuId(menuId))
- {
+ public AjaxResult remove(@PathVariable("menuId") Long menuId) {
+ if (menuService.hasChildByMenuId(menuId)) {
return warn("存在子菜单,不允许删除");
}
- if (menuService.checkMenuExistRole(menuId))
- {
+ if (menuService.checkMenuExistRole(menuId)) {
return warn("菜单已分配,不允许删除");
}
return toAjax(menuService.deleteMenuById(menuId));
diff --git a/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties b/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties
index b7ceca4..82fc0f4 100644
--- a/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties
+++ b/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties
@@ -38,4 +38,5 @@
##\u7EDF\u4E00\u8FD4\u56DE
operation.failed=Operation failed
-operation.success=Operation successful
\ No newline at end of file
+operation.success=Operation successful
+
diff --git a/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties b/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties
index 95bb2b3..8769e7b 100644
--- a/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties
+++ b/ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties
@@ -38,4 +38,4 @@
##\u7EDF\u4E00\u8FD4\u56DE
operation.failed=\u64CD\u4F5C\u5931\u8D25
-operation.success=\u64CD\u4F5C\u6210\u529F
\ No newline at end of file
+operation.success=\u64CD\u4F5C\u6210\u529F
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java
index e857c30..3ca2b61 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java
@@ -10,8 +10,8 @@
import com.ruoyi.media.service.IVtduService;
import com.ruoyi.rongcloud.service.RongCloudService;
import com.ruoyi.system.service.ISysUserService;
-import com.ruoyi.utils.sdk.dhsdk.service.impl.DhSdkStrategy;
-import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy;
+import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK;
+import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@@ -33,9 +33,9 @@
@Resource
IArdCamerasService iArdCamerasService;
@Resource
- HikSdkStrategy hikClientService;
+ HikvisionSDK hikClientService;
@Resource
- DhSdkStrategy dhClientService;
+ DahuaSDK dhClientService;
@Resource
IVtduService vtduService;
@Resource
--
Gitblit v1.9.3