From b5cd784d0cde5b7c82ea78aef4ac0e5a161d8c5d Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Mon, 18 May 2026 14:42:43 +0800
Subject: [PATCH] 优化

---
 ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java |   63 +++++++++++--------------------
 1 files changed, 23 insertions(+), 40 deletions(-)

diff --git a/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java b/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java
index e9591ab..245dd1c 100644
--- a/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java
+++ b/ard-modules/ard-modules-work/src/main/java/com/ard/work/sdk/factory/CameraSDKFactory.java
@@ -3,14 +3,13 @@
 import com.ard.work.sdk.dh.service.DaHuaSDK;
 import com.ard.work.sdk.fjr.service.FjrSDK;
 import com.ard.work.sdk.hb.service.HbSDK;
-import com.ard.work.sdk.hik.service.AbstractHikVisionSDK;
 import com.ard.work.sdk.hik.service.HikSDK;
 import com.ard.work.sdk.hp.service.HpSDK;
 import com.ard.work.sdk.service.CameraSDK;
 import com.ard.work.sdk.zlxd.service.ZlxdSDK;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
+
+import java.util.Map;
 
 
 /**
@@ -22,29 +21,24 @@
 @Component
 public class CameraSDKFactory {
 
-    @Autowired
-    @Qualifier("hikSDK")
-    private HikSDK hikSDK;
+    private final Map<String, CameraSDK> sdkRegistry;
 
-    @Autowired
-    @Qualifier("dahuaSDK")
-    private DaHuaSDK dahuaSDK;
+    public CameraSDKFactory(HikSDK hikSDK,
+                            DaHuaSDK dahuaSDK,
+                            HpSDK hpSDK,
+                            ZlxdSDK zlxdSDK,
+                            HbSDK hbSDK,
+                            FjrSDK fjrSDK) {
+        this.sdkRegistry = Map.of(
+                "1", hikSDK,
+                "2", dahuaSDK,
+                "4", zlxdSDK,
+                "5", hpSDK,
+                "7", hbSDK,
+                "8", fjrSDK
+        );
+    }
 
-    @Autowired
-    @Qualifier("hpSDK")
-    private HpSDK hpSDK;
-
-    @Autowired
-    @Qualifier("zlxdSDK")
-    private ZlxdSDK zlxdSDK;
-
-    @Autowired
-    @Qualifier("hbSDK")
-    private HbSDK hbSDK;
-
-    @Autowired
-    @Qualifier("fjrSDK")
-    private FjrSDK fjrSDK;
     /**
      * 根据传入的工厂参数创建相应的相机SDK实例
      *
@@ -53,21 +47,10 @@
      * @throws IllegalArgumentException 如果传入的工厂参数不支持
      */
     public CameraSDK createCameraSDK(String factory) {
-        switch (factory) {
-            case "1":
-                return hikSDK;
-            case "2":
-                return dahuaSDK;
-            case "4":
-                return zlxdSDK;
-            case "5":
-                return hpSDK;
-            case "7":
-                return hbSDK;
-            case "8":
-                return fjrSDK;
-            default:
-                throw new IllegalArgumentException("Unsupported device: " + factory);
+        CameraSDK sdk = sdkRegistry.get(factory);
+        if (sdk == null) {
+            throw new IllegalArgumentException("Unsupported camera factory: " + factory);
         }
+        return sdk;
     }
-}
\ No newline at end of file
+}

--
Gitblit v1.9.3