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