‘liusuyi’
2023-10-24 3ed3f6c299eabbda1c161408732d71ecb60b8959
ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java
@@ -3,6 +3,7 @@
import com.ruoyi.common.annotation.SdkOperate;
import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.Threads;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.IArdCamerasService;
@@ -11,6 +12,8 @@
import com.ruoyi.device.hiksdk.service.IHikClientService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.SmartInitializingSingleton;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
@@ -29,7 +32,7 @@
 **/
@Service
@Slf4j(topic = "SDK")
public class CameraSdkServiceImpl implements ICameraSdkService {
public class CameraSdkServiceImpl implements ICameraSdkService, ApplicationRunner {
    @Resource
    private IArdCamerasService ardCamerasService;
    @Resource
@@ -38,22 +41,16 @@
    IDhClientService dhClientService;
    @Resource
    RedisCache redisCache;
    @Resource
    AsyncLogin asyncLogin;
    //初始化SDK
    @PostConstruct
    @Override
    public void loginAll() {
    public void run(ApplicationArguments args) throws Exception {
        try {
            List<ArdCameras> ardCameras = ardCamerasService.selectArdCamerasListNoDataScope(new ArdCameras());
            for (ArdCameras camera : ardCameras) {
                if ("1".equals(camera.getFactory())) {
                    asyncLogin.hikLogin(camera);
                    hikClientService.login(camera);
                } else if ("2".equals(camera.getFactory())) {
                    asyncLogin.dhLogin(camera);
                    dhClientService.login(camera);
                }
            }
        } catch (Exception ex) {
@@ -72,7 +69,8 @@
                    hikClientService.login(ardCamera);
                    result = true;
                } else if (factory.equals("2")) {
                    result = dhClientService.login(ardCamera);
                    dhClientService.login(ardCamera);
                    result = true;
                }
            }
        } catch (Exception ex) {