From 93cecfaf0fae080ebd0212adea714726290d0d4a Mon Sep 17 00:00:00 2001 From: zhangnaisong <2434969829@qq.com> Date: 星期四, 01 八月 2024 20:36:54 +0800 Subject: [PATCH] 电磁锁串口协议发送加入线程排队提交 --- ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java | 54 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 44 insertions(+), 10 deletions(-) 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 d6ed2c3..edd182e 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 @@ -3,17 +3,22 @@ import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.device.camera.domain.ArdCameras; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.camera.factory.CameraSDK; import com.ruoyi.device.camera.factory.CameraSDKFactory; import com.ruoyi.device.camera.service.IArdCamerasService; import com.ruoyi.device.camera.service.ICameraSdkService; +import com.ruoyi.device.channel.domain.ArdChannel; +import com.ruoyi.device.channel.service.IArdChannelService; +import com.ruoyi.device.channel.service.impl.ArdChannelServiceImpl; import com.ruoyi.media.domain.Vtdu; import com.ruoyi.media.service.IMediaService; import com.ruoyi.media.service.IVtduService; import com.ruoyi.rongcloud.service.RongCloudService; import com.ruoyi.system.service.ISysUserService; +import com.ruoyi.utils.sdk.common.GlobalVariable; import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK; import lombok.extern.slf4j.Slf4j; @@ -21,6 +26,8 @@ import javax.annotation.Resource; import java.util.List; +import java.util.UUID; +import java.util.stream.Collectors; /** * @Description: 鍚屾浠诲姟 @@ -43,6 +50,11 @@ IMediaService mediaService; @Resource private ICameraSdkService cameraSdkService; + @Resource + private CameraSDKFactory cameraSDKFactory; + @Resource + private IArdChannelService ardChannelService; + /** * 鍚屾鐩告満鍦ㄧ嚎鐘舵�� * 鍒樿嫃涔� @@ -69,6 +81,32 @@ } } catch (Exception ex) { log.error("鍚屾鐩告満鍦ㄧ嚎鐘舵�佸紓甯�:" + ex.getMessage()); + } + } + + /** + * @Author 鍒樿嫃涔� + * @Description 鍚屾閫氶亾鐘舵�佸疄鏃跺悓姝ユ祦濯掍綋 + * @Date 2024/7/9 16:01 + */ + public void syncChannelState(){ + log.debug("瀹氭椂鍚屾閫氶亾浠诲姟寮�濮�"); + //鑾峰彇鎵�鏈塶vr璁惧 + List<ArdCameras> ardCamerasList = GlobalVariable.loginedSet.stream().collect(Collectors.toList()); + if (ardCamerasList.size() > 0) { + ardCamerasList.stream() + .forEach(ardCameras -> { + if (ardCameras.getLoginId() > 0) { + //閫氳繃SDK鑾峰彇NVR瀹為檯閫氶亾 + CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(ardCameras.getFactory()); + List<ArdChannel> ardChannelList = cameraSDK.getChannels(ardCameras); + //鍚屾閫氶亾琛� + ArdChannel ardChannel = new ArdChannel(); + ardChannel.setDeviceId(ardCameras.getId()); + List<ArdChannel> ardChannelListDb = ardChannelService.selectArdChannelList(ardChannel); + ardChannelService.asyncChannel(ardCameras, ardChannelListDb, ardChannelList); + } + }); } } @@ -104,14 +142,10 @@ * 鍒樿嫃涔� * 2023/10/13 14:13:53 */ - public void vtdu() { - - List<Vtdu> vtdus = vtduService.selectVtduList(new Vtdu()); - for (Vtdu vtdu : vtdus) { - boolean nameExist = mediaService.checkNameExist(vtdu.getName()); - if (!nameExist) { - mediaService.addPath(vtdu.getName(), vtdu.getRtspSource(), vtdu.getMode(), vtdu.getIsCode()); - } - } + public void syncVtdu() { + log.debug("瀹氭椂鍚屾娴佸獟浣撲换鍔″紑濮�"); + List<String> nameList = mediaService.getNameList(); + List<Vtdu> vtduList = vtduService.selectVtduList(new Vtdu()); + vtduService.asyncVtdu(vtduList, nameList); } -} +} \ No newline at end of file -- Gitblit v1.9.3