From 7265b3d4b666f3a59f69c6dbc556098475041a27 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期一, 16 十月 2023 17:25:18 +0800
Subject: [PATCH] 1. 增加获取和设置PTZ接口 2. 增加相机抓图和录像接口 3. 增加设置零方位角接口 4. 增加在线状态检测接口 5. 增加云台控制接口

---
 ard-work/src/main/java/com/ruoyi/device/hiksdk/sdk/LoginResultCallBack.java |   30 +++++++++++++++++++++++++++++-
 1 files changed, 29 insertions(+), 1 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/device/hiksdk/sdk/LoginResultCallBack.java b/ard-work/src/main/java/com/ruoyi/device/hiksdk/sdk/LoginResultCallBack.java
index a665815..a385d70 100644
--- a/ard-work/src/main/java/com/ruoyi/device/hiksdk/sdk/LoginResultCallBack.java
+++ b/ard-work/src/main/java/com/ruoyi/device/hiksdk/sdk/LoginResultCallBack.java
@@ -10,9 +10,13 @@
 import com.ruoyi.device.channel.service.IArdChannelService;
 import com.ruoyi.device.hiksdk.common.GlobalVariable;
 import com.ruoyi.device.hiksdk.service.IHikClientService;
+import com.ruoyi.media.domain.Vtdu;
+import com.ruoyi.media.service.IVtduService;
+import com.ruoyi.utils.forest.MediaClient;
 import com.sun.jna.Pointer;
 import lombok.extern.slf4j.Slf4j;
 
+import javax.annotation.Resource;
 import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.PriorityBlockingQueue;
@@ -35,6 +39,7 @@
 
     @Override
     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);
         IHikClientService hikClientService = SpringUtils.getBean(IHikClientService.class);
         IArdCamerasService ardCamerasService = SpringUtils.getBean(IArdCamerasService.class);
@@ -53,9 +58,32 @@
             //鑾峰彇鏈�鏂伴�氶亾
             List<ArdChannel> cameraChannelList = hikClientService.getCameraChannelList(camera);
             if (cameraChannelList.size() > 0) {
+                //娣诲姞閫氶亾
                 for (ArdChannel channel : cameraChannelList) {
                     channel.setId(IdUtils.simpleUUID());
                     ardChannelService.insertArdChannel(channel);
+                }
+                //閰嶇疆鍒版祦濯掍綋
+                for (ArdChannel channel : cameraChannelList) {
+                    String name = camera.getId() + "_" + channel.getChanNo();
+                    String rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/h264/ch" + channel.getChanNo() + "/main/av_stream";
+                    Vtdu vtdu = vtduService.selectVtduByName(name);
+                    if (vtdu == null) {
+                        //娣诲姞鍒版祦濯掍綋
+                        vtdu = new Vtdu();
+                        vtdu.setRtspSource(rtspSource);
+                        vtdu.setName(camera.getId() + "_" + channel.getChanNo());
+                        vtdu.setIsCode("0");//榛樿涓嶈浆鐮�
+                        vtdu.setMode("1");//榛樿CPU杞В鐮�
+                        vtdu.setCameraId(camera.getId());
+                        vtduService.insertVtdu(vtdu);
+                    } else {
+                        if (!rtspSource.equals(vtdu.getRtspSource())) {
+                            //鏇存柊rtsp鍦板潃
+                            vtdu.setRtspSource(rtspSource);
+                            vtduService.updateVtdu(vtdu);
+                        }
+                    }
                 }
             }
             //鍒涘缓寮曞闃熷垪
@@ -74,4 +102,4 @@
         ardCamerasService.updateArdCameras(camera);
         return 1;
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.3