From d2a65f0c13df21354ac83bf13b15f46937bd8ecb Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Mon, 05 Jan 2026 14:07:35 +0800
Subject: [PATCH] 将定时任务迁移到定时模块中

---
 ard-device/src/main/java/com/ard/device/camera/service/impl/ArdCameraServiceImpl.java |   25 ++++++++++++++++++++++---
 1 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/ard-device/src/main/java/com/ard/device/camera/service/impl/ArdCameraServiceImpl.java b/ard-device/src/main/java/com/ard/device/camera/service/impl/ArdCameraServiceImpl.java
index 129ceca..e55b8cc 100644
--- a/ard-device/src/main/java/com/ard/device/camera/service/impl/ArdCameraServiceImpl.java
+++ b/ard-device/src/main/java/com/ard/device/camera/service/impl/ArdCameraServiceImpl.java
@@ -13,10 +13,12 @@
 import com.ard.common.utils.spring.SpringUtils;
 import com.ard.common.utils.uuid.IdUtils;
 import com.ard.device.camera.domain.ArdCamera;
+import com.ard.device.camera.domain.CameraCmd;
 import com.ard.device.camera.mapper.ArdCameraMapper;
 import com.ard.device.camera.service.IArdCameraService;
 import com.ard.device.channel.domain.ArdChannel;
 import com.ard.device.channel.service.IArdChannelService;
+import com.ard.device.component.sdk.common.GlobalVariable;
 import com.ard.device.component.sdk.event.LoginEvent;
 import com.ard.device.component.sdk.service.CameraSDKService;
 import lombok.extern.slf4j.Slf4j;
@@ -25,7 +27,9 @@
 import org.springframework.boot.ApplicationRunner;
 import org.springframework.context.event.EventListener;
 import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
+
 import javax.annotation.Resource;
 import javax.validation.Validator;
 import java.util.*;
@@ -54,6 +58,7 @@
 
     @Resource
     protected Validator validator;
+
 
     @Override
     public void run(ApplicationArguments args) {
@@ -158,7 +163,7 @@
         ardCamera.setUpdateBy(SecurityUtils.getUsername());
         int res = ardCameraMapper.updateArdCamera(ardCamera);
         if (res > 0) {
-            cameraSDKService.logout(ardCamera.getId());//sdk注销
+            cameraSDKService.logout(ardCamera);//sdk注销
             cameraSDKService.login(ardCamera);//sdk登录获取通道信息
         }
         return res;
@@ -181,7 +186,7 @@
                 //删除当前相机的所有通道
                 ardChannelService.deleteArdChannelByDeviceId(id);
                 //sdk注销
-                cameraSDKService.logout(id);
+                cameraSDKService.logout(camera);
             }
         }
         return ardCameraMapper.deleteArdCameraByIds(ids);
@@ -202,7 +207,7 @@
             //删除当前相机的所有通道
             ardChannelService.deleteArdChannelByDeviceId(id);
             //sdk注销
-            cameraSDKService.logout(id);
+            cameraSDKService.logout(ArdCamera.builder().id(id).build());
         }
         return i;
     }
@@ -291,6 +296,20 @@
         return DeviceConstants.UNIQUE;
     }
 
+    /**
+     * 校验机场是否已关联相机
+     *
+     * @param camera 相机
+     * @return 结果
+     */
+    @Override
+    public ArdCamera checkAirportHasCamera(ArdCamera camera) {
+        ArdCamera info = ardCameraMapper.checkAirportHasCamera(camera);
+        if (StringUtils.isNotNull(info)&& !info.getId().equals(camera.getId())) {
+            return info;
+        }
+        return null;
+    }
 
     /**
      * 同步通道

--
Gitblit v1.9.3