From 8ad9561f36bda4ccc8a3547d9157af706397c136 Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: 星期二, 24 十月 2023 16:29:17 +0800
Subject: [PATCH] 清淤接口

---
 ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java |  330 +++++++++++++++++++++++++++++-------------------------
 1 files changed, 178 insertions(+), 152 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java
index 126acde..d094ae1 100644
--- a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java
@@ -5,7 +5,6 @@
 import com.ruoyi.common.annotation.SdkOperate;
 import com.ruoyi.common.utils.file.FileUtils;
 import com.ruoyi.common.utils.file.MimeTypeUtils;
-import com.ruoyi.common.utils.spring.SpringUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.device.camera.domain.CameraCmd;
 import com.ruoyi.device.camera.service.IArdCamerasService;
@@ -26,7 +25,7 @@
 import com.sun.jna.Pointer;
 import com.sun.jna.ptr.IntByReference;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
 import java.util.Base64;
@@ -112,6 +111,7 @@
      * @鍒涘缓鏃堕棿 2023/1/17 16:12
      * @淇敼浜哄拰鍏跺畠淇℃伅
      */
+    @Async
     public void syncLogin(ArdCameras camera) {
         // 鍒濆鍖�
         if (!hCNetSDK.NET_DVR_Init()) {
@@ -184,22 +184,23 @@
                     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);
-                        }
+                    if (vtdu != null) {
+                        vtduService.deleteVtduByName(name);
                     }
+                    //娣诲姞鍒版祦濯掍綋
+                    vtdu = new Vtdu();
+                    vtdu.setRtspSource(rtspSource);
+                    vtdu.setName(camera.getId() + "_" + channel.getChanNo());
+                    CameraCmd cmd = new CameraCmd(camera.getId(), channel.getChanNo());
+                    Map<String, Object> videoCompressionCfg = getVideoCompressionCfg(cmd);
+                    if (videoCompressionCfg.get("videoEncType").equals("鏍囧噯h264")) {
+                        vtdu.setIsCode("0");//榛樿涓嶈浆鐮�
+                    } else {
+                        vtdu.setIsCode("1");//榛樿杞爜
+                    }
+                    vtdu.setMode("1");//榛樿CPU杞В鐮�
+                    vtdu.setCameraId(camera.getId());
+                    vtduService.insertVtdu(vtdu);
                 }
             }
             //鍒涘缓寮曞闃熷垪
@@ -285,7 +286,7 @@
             for (ArdCameras camera : ardCameras) {
                 Thread.sleep(500);
                 //寮傛鐧诲綍
-                asyncLogin(camera);
+                syncLogin(camera);
             }
         } catch (Exception ex) {
             log.error("鍒濆鍖栫櫥褰曠浉鏈哄紓甯革細" + ex.getMessage());
@@ -305,7 +306,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         boolean b = hCNetSDK.NET_DVR_Logout(userId);
         if (b) {
             GlobalVariable.loginMap.remove(cameraId);
@@ -325,7 +326,7 @@
             if (!GlobalVariable.loginMap.containsKey(cameraId)) {
                 return false;
             }
-            Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+            Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
             return hCNetSDK.NET_DVR_RemoteControl(userId, NET_DVR_CHECK_USER_STATUS, null, 0);
         } catch (Exception ex) {
             log.error("妫�娴嬪湪绾垮紓甯革細" + ex.getMessage());
@@ -344,7 +345,6 @@
      * @淇敼浜哄拰鍏跺畠淇℃伅
      */
     @Override
-    @SdkOperate
     public boolean pTZControlWithSpeed(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         boolean enable = cmd.isEnable();
@@ -354,7 +354,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         int dwStop;
         if (enable) {
             dwStop = 0;//寮�鍚�
@@ -431,7 +431,6 @@
      * @param cmd 鐩告満鍛戒护
      */
     @Override
-    @SdkOperate
     public boolean setFocusPos(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         Integer channelNum = cmd.getChanNo();
@@ -440,7 +439,7 @@
             return false;
         }
         // 鑾峰彇鍙傛暟
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         HCNetSDK.NET_DVR_STD_CONFIG struStdCfg = new HCNetSDK.NET_DVR_STD_CONFIG();
         HCNetSDK.NET_DVR_GIS_INFO struGisInfo = new HCNetSDK.NET_DVR_GIS_INFO();
         struGisInfo.struPtzPosEx.dwFocus = dwFocusPos;
@@ -467,14 +466,15 @@
      * @param cmd 鐩告満鍛戒护
      */
     @Override
-    public Map<String, Object> getFocusPos(CameraCmd cmd) {
+    public int getFocusPos(CameraCmd cmd) {
+        int result = 0;
         String cameraId = cmd.getCameraId();
         Integer channelNum = cmd.getChanNo();
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
-            return new HashMap<>();
+            return result;
         }
         // 鑾峰彇鍙傛暟
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         HCNetSDK.NET_DVR_STD_CONFIG struStdCfg = new HCNetSDK.NET_DVR_STD_CONFIG();
         HCNetSDK.NET_DVR_GIS_INFO struGisInfo = new HCNetSDK.NET_DVR_GIS_INFO();
         struStdCfg.read();
@@ -488,13 +488,12 @@
         if (!bool) {
             int code = hCNetSDK.NET_DVR_GetLastError();
             log.error("鑾峰彇GIS淇℃伅鏁版嵁澶辫触,璇风◢鍚庨噸璇�" + code);
-            return new HashMap<>();
+            return result;
         } else {
             struGisInfo.read();
-            Map<String, Object> map = new HashMap<>();
-            map.put("dwFocus", struGisInfo.struPtzPosEx.dwFocus);
-            return map;
+            result = struGisInfo.struPtzPosEx.dwFocus;
         }
+        return result;
     }
 
     /**
@@ -503,7 +502,6 @@
      * @param cmd 鐩告満鍛戒护
      */
     @Override
-    @SdkOperate
     public boolean setPreset(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         Integer channelNum = cmd.getChanNo();
@@ -511,7 +509,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         boolean bool = hCNetSDK.NET_DVR_PTZPreset_Other(userId, channelNum, SET_PRESET, PresetIndex);
         if (!bool) {
             int code = hCNetSDK.NET_DVR_GetLastError();
@@ -526,7 +524,6 @@
      * @param cmd 鐩告満鍛戒护
      */
     @Override
-    @SdkOperate
     public boolean gotoPreset(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         Integer channelNum = cmd.getChanNo();
@@ -534,7 +531,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         boolean bool = hCNetSDK.NET_DVR_PTZPreset_Other(userId, channelNum, GOTO_PRESET, PresetIndex);
         if (!bool) {
             int code = hCNetSDK.NET_DVR_GetLastError();
@@ -552,15 +549,15 @@
      * @淇敼浜哄拰鍏跺畠淇℃伅
      */
     @Override
-    public Map<String, String> getVideoCompressionCfg(CameraCmd cmd) {
+    public Map<String, Object> getVideoCompressionCfg(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         Integer chanNo = cmd.getChanNo();
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return null;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
 
-        Map<String, String> map = new HashMap<>();
+        Map<String, Object> map = new HashMap<>();
         NET_DVR_COMPRESSIONCFG_V30 compressioncfg = new NET_DVR_COMPRESSIONCFG_V30();
         compressioncfg.write();
         Pointer pioint = compressioncfg.getPointer();
@@ -617,85 +614,85 @@
                         videoBitrate = "淇濈暀";
                         break;
                     case 1:
-                        videoBitrate = "16K(淇濈暀)";
+                        videoBitrate = "16(淇濈暀)";
                         break;
                     case 2:
-                        videoBitrate = "32K";
+                        videoBitrate = "32";
                         break;
                     case 3:
-                        videoBitrate = "48k";
+                        videoBitrate = "48";
                         break;
                     case 4:
-                        videoBitrate = "64k";
+                        videoBitrate = "64";
                         break;
                     case 5:
-                        videoBitrate = "80k";
+                        videoBitrate = "80";
                         break;
                     case 6:
-                        videoBitrate = "96k";
+                        videoBitrate = "96";
                         break;
                     case 7:
-                        videoBitrate = "128k";
+                        videoBitrate = "128";
                         break;
                     case 8:
-                        videoBitrate = "160k";
+                        videoBitrate = "160";
                         break;
                     case 9:
-                        videoBitrate = "192k";
+                        videoBitrate = "192";
                         break;
                     case 10:
-                        videoBitrate = "224k";
+                        videoBitrate = "224";
                         break;
                     case 11:
-                        videoBitrate = "256K";
+                        videoBitrate = "256";
                         break;
                     case 12:
-                        videoBitrate = "320K";
+                        videoBitrate = "320";
                         break;
                     case 13:
-                        videoBitrate = "384K";
+                        videoBitrate = "384";
                         break;
                     case 14:
-                        videoBitrate = "448K";
+                        videoBitrate = "448";
                         break;
                     case 15:
-                        videoBitrate = "512K";
+                        videoBitrate = "512";
                         break;
                     case 16:
-                        videoBitrate = "640K";
+                        videoBitrate = "640";
                         break;
                     case 17:
-                        videoBitrate = "768K";
+                        videoBitrate = "768";
                         break;
                     case 18:
-                        videoBitrate = "896K";
+                        videoBitrate = "896";
                         break;
                     case 19:
-                        videoBitrate = "1024K";
+                        videoBitrate = "1024";
                         break;
                     case 20:
-                        videoBitrate = "1280K";
+                        videoBitrate = "1280";
                         break;
                     case 21:
-                        videoBitrate = "1536K";
+                        videoBitrate = "1536";
                         break;
                     case 22:
-                        videoBitrate = "1792K";
+                        videoBitrate = "1792";
                         break;
                     case 23:
                         videoBitrate = "2048K";
                         break;
                     case 24:
-                        videoBitrate = "3072K";
+                        videoBitrate = "3072";
                         break;
                     case 25:
-                        videoBitrate = "4096K";
+                        videoBitrate = "4096";
                         break;
                     case 26:
-                        videoBitrate = "8192K";
+                        videoBitrate = "8192";
                         break;
                     case 27:
-                        videoBitrate = "16384K";
+                        videoBitrate = "16384";
                         break;
                     default:
                         videoBitrate = "鍏朵粬";
@@ -705,43 +702,43 @@
                 String resolution = "";
                 switch (compressioncfg.struNormHighRecordPara.byResolution) {
                     case 0:
-                        resolution = "DCIF(528*384/528*320)";
+                        resolution = "528*384/528*320";
                         break;
                     case 1:
-                        resolution = "CIF(352*288/352*240)";
+                        resolution = "352*288/352*240";
                         break;
                     case 2:
-                        resolution = "QCIF(176*144/176*120)";
+                        resolution = "176*144/176*120";
                         break;
                     case 3:
-                        resolution = "4CIF(704*576/704*480)";
+                        resolution = "704*576/704*480";
                         break;
                     case 4:
-                        resolution = "2CIF(704*288/704*240)";
+                        resolution = "704*288/704*240";
                         break;
                     case 6:
-                        resolution = "QVGA(320*240)";
+                        resolution = "320*240";
                         break;
                     case 7:
-                        resolution = "QQVGA(160*120)";
+                        resolution = "160*120";
                         break;
                     case 16:
-                        resolution = "VGA(640*480)";
+                        resolution = "640*480";
                         break;
                     case 17:
-                        resolution = "UXGA(1600*1200)";
+                        resolution = "1600*1200";
                         break;
                     case 18:
-                        resolution = "SVGA(800*600)";
+                        resolution = "800*600";
                         break;
                     case 19:
-                        resolution = "HD720P(1280*720)";
+                        resolution = "1280*720";
                         break;
                     case 20:
-                        resolution = "XVGA(1280*960)";
+                        resolution = "1280*960";
                         break;
                     case 21:
-                        resolution = "HD900P(1600*900)";
+                        resolution = "1600*900";
                         break;
                     case 22:
                         resolution = "1360*1024";
@@ -753,7 +750,7 @@
                         resolution = "1920*1920";
                         break;
                     case 27:
-                        resolution = "1920*1080p";
+                        resolution = "1920*1080";
                         break;
                     case 28:
                         resolution = "2560*1920";
@@ -768,10 +765,80 @@
                         resolution = "涓嶅湪褰撳墠鍒嗚鲸鐜囩储寮曪紝璇疯仈绯荤鐞嗗憳娣诲姞";
                         break;
                 }
-                map.put("resolution", resolution);
-                map.put("videoBitrate", videoBitrate);
-                map.put("videoEncType", videoEncType);
-                map.put("streamType", streamType);
+                //甯х巼
+                String nFrameRate = "";
+                switch (compressioncfg.struNormHighRecordPara.dwVideoFrameRate) {
+                    case 0:
+                        nFrameRate = "0";
+                        break;
+                    case 1:
+                        nFrameRate = "1/16";
+                        break;
+                    case 2:
+                        nFrameRate = "1/8";
+                        break;
+                    case 3:
+                        nFrameRate = "1/4";
+                        break;
+                    case 4:
+                        nFrameRate = "1/2";
+                        break;
+                    case 5:
+                        nFrameRate = "1";
+                        break;
+                    case 6:
+                        nFrameRate = "2";
+                        break;
+                    case 7:
+                        nFrameRate = "4";
+                        break;
+                    case 8:
+                        nFrameRate = "6";
+                        break;
+                    case 9:
+                        nFrameRate = "8";
+                        break;
+                    case 10:
+                        nFrameRate = "10";
+                        break;
+                    case 11:
+                        nFrameRate = "12";
+                        break;
+                    case 12:
+                        nFrameRate = "16";
+                        break;
+                    case 13:
+                        nFrameRate = "20";
+                        break;
+                    case 14:
+                        nFrameRate = "15";
+                        break;
+                    case 15:
+                        nFrameRate = "18";
+                        break;
+                    case 16:
+                        nFrameRate = "22";
+                        break;
+                    case 17:
+                        nFrameRate = "25";
+                        break;
+                    case 18:
+                        nFrameRate = "30";
+                        break;
+                    case 19:
+                        nFrameRate = "35";
+                        break;
+                    case 20:
+                        nFrameRate = "40";
+                        break;
+                    default:
+                        nFrameRate = "鏈煡";
+                        break;
+                }
+                map.put("resolution", resolution);//鍒嗚鲸鐜�
+                map.put("videoBitrate", videoBitrate);//姣旂壒鐜�
+                map.put("videoEncType", videoEncType);//缂栫爜
+                map.put("nFrameRate", nFrameRate);//甯х巼
 
             } else {
                 int code = hCNetSDK.NET_DVR_GetLastError();
@@ -798,7 +865,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return new HashMap<>();
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
 
         NET_DVR_PTZPOS m_ptzPosCurrent = new NET_DVR_PTZPOS();
         Pointer pioint = m_ptzPosCurrent.getPointer();
@@ -842,7 +909,6 @@
      * @淇敼浜哄拰鍏跺畠淇℃伅 娉ㄦ剰淇话瑙掑害璐熷�奸渶瑕佸姞涓�360寰楀埌鐨勬鍊艰繘琛岃缃�
      */
     @Override
-    @SdkOperate
     public boolean setPtz(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         Integer channelNum = cmd.getChanNo();
@@ -850,13 +916,13 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_PTZPOS m_ptzPosCurrent = new NET_DVR_PTZPOS();
         m_ptzPosCurrent.wAction = 1;
         try {
-            String p = String.valueOf((int)(ptz.get("p") * 10));
-            String t = String.valueOf((int)(ptz.get("t") * 10));
-            String z = String.valueOf((int)(ptz.get("z") * 10));
+            String p = String.valueOf((int) (ptz.get("p") * 10));
+            String t = String.valueOf((int) (ptz.get("t") * 10));
+            String z = String.valueOf((int) (ptz.get("z") * 10));
             m_ptzPosCurrent.wPanPos = (short) (Integer.parseInt(p, 16));
             m_ptzPosCurrent.wTiltPos = (short) (Integer.parseInt(t, 16));
             m_ptzPosCurrent.wZoomPos = (short) (Integer.parseInt(z, 16));
@@ -875,14 +941,13 @@
     }
 
     @Override
-    @SdkOperate
     public boolean guideTargetPosition(CameraCmd cmd) {
         String cameraId = cmd.getCameraId();
         Integer channelNum = cmd.getChanNo();
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_PTZPOS m_ptzPosCurrent = new NET_DVR_PTZPOS();
         m_ptzPosCurrent.wAction = 1;
         try {
@@ -910,49 +975,6 @@
         }
     }
 
-    /**
-     * @鎻忚堪 鎿嶆帶閿佸畾
-     * @鍙傛暟 [userId, channelNum]
-     * @杩斿洖鍊� boolean
-     * @鍒涘缓浜� 鍒樿嫃涔�
-     * @鍒涘缓鏃堕棿 2023/1/17 16:36
-     * @淇敼浜哄拰鍏跺畠淇℃伅 0-瑙i攣 1-閿佸畾
-     */
-    @Override
-    @SdkOperate
-    public boolean controlLock(CameraCmd cmd) {
-        String cameraId = cmd.getCameraId();//鐢宠閿佺殑鐩告満
-        ArdCameras ardCameras = ardCamerasService.selectArdCamerasById(cameraId);
-        Date now = new Date();
-        now.setTime(now.getTime() + cmd.getExpired() * 1000);
-        ardCameras.setOperatorExpired(now);//璁剧疆褰撳墠杩囨湡鏃堕棿
-        ardCamerasService.updateArdCameras(ardCameras);
-        return true;
-    }
-
-    /**
-     * @鎻忚堪 鎿嶆帶瑙i攣
-     * @鍙傛暟 [userId, channelNum]
-     * @杩斿洖鍊� boolean
-     * @鍒涘缓浜� 鍒樿嫃涔�
-     * @鍒涘缓鏃堕棿 2023/6/30 15:36
-     * @淇敼浜哄拰鍏跺畠淇℃伅
-     */
-    @Override
-    public boolean controlUnLock(CameraCmd cmd) {
-        String cameraId = cmd.getCameraId();//鐢宠瑙i攣鐨勭浉鏈�
-        String operator = cmd.getOperator();//鐢宠鑰�
-        ArdCameras ardCameras = ardCamerasService.selectArdCamerasById(cameraId);
-        if (ardCameras.getOperatorId().equals(operator)) {
-            //濡傛灉瑙i攣鐩告満鐨勫綋鍓嶇敤鎴锋槸鐢宠鑰咃紝鍒欐竻绌鸿鐩告満鐨勮繃鏈熸椂闂�
-            ardCameras.setOperatorExpired(null);
-            int i = ardCamerasService.updateArdCameras(ardCameras);
-            if (i > 0) {
-                log.debug(cameraId + "--瑙i攣鎴愬姛");
-            }
-        }
-        return true;
-    }
 
     /**
      * @鎻忚堪 鑾峰彇ptz閿佸畾淇℃伅
@@ -969,7 +991,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return -1;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_PTZ_LOCKCFG netDvrPtzLockcfg = new NET_DVR_PTZ_LOCKCFG();
         Pointer point = netDvrPtzLockcfg.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1001,7 +1023,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_INITIALPOSITIONCTRL initialpositionctrl = new NET_DVR_INITIALPOSITIONCTRL();
 
         initialpositionctrl.dwSize = initialpositionctrl.size();
@@ -1033,7 +1055,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return new HashMap<>();
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_PTZSCOPE m_ptzPosCurrent = new NET_DVR_PTZSCOPE();
         Pointer point = m_ptzPosCurrent.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1082,7 +1104,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_CAMERAPARAMCFG_EX struCameraParam = new NET_DVR_CAMERAPARAMCFG_EX();
         Pointer point = struCameraParam.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1128,7 +1150,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_CAMERAPARAMCFG_EX struDayNigh = new NET_DVR_CAMERAPARAMCFG_EX();
         Pointer point = struDayNigh.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1176,7 +1198,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_FOCUSMODE_CFG struFocusMode = new NET_DVR_FOCUSMODE_CFG();
         Pointer point = struFocusMode.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1219,7 +1241,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return "";
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_FOCUSMODE_CFG struFocusMode = new NET_DVR_FOCUSMODE_CFG();
         Pointer point = struFocusMode.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1249,7 +1271,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         int dwStop;
         if (enable) {
             dwStop = 0;//寮�鍚�
@@ -1282,7 +1304,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return false;
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_DEVSERVER_CFG struDeicing = new NET_DVR_DEVSERVER_CFG();
         Pointer point = struDeicing.getPointer();
         IntByReference ibrBytesReturned = new IntByReference(0);
@@ -1319,7 +1341,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return "";
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         NET_DVR_WORKSTATE_V30 devwork = new NET_DVR_WORKSTATE_V30();
         if (!hCNetSDK.NET_DVR_GetDVRWorkState_V30(userId, devwork)) {
             // 杩斿洖Boolean鍊硷紝鍒ゆ柇鏄惁鑾峰彇璁惧鑳藉姏
@@ -1362,7 +1384,7 @@
         if (!GlobalVariable.loginMap.containsKey(cameraId)) {
             return "";
         }
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         //鍥剧墖淇℃伅
         NET_DVR_JPEGPARA jpeg = new NET_DVR_JPEGPARA();
         //璁剧疆鍥剧墖鍒嗚鲸鐜�
@@ -1426,7 +1448,7 @@
             if (!GlobalVariable.loginMap.containsKey(cameraId)) {
                 return "";
             }
-            Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+            Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
             //寮哄埗I甯х粨鏋勪綋瀵硅薄
             HCNetSDK.NET_DVR_I_FRAME netDvrIFrame = new HCNetSDK.NET_DVR_I_FRAME();   //鏂板缓缁撴瀯浣撳璞�
             netDvrIFrame.read();
@@ -1472,7 +1494,7 @@
                 log.debug("褰曞儚鍋滄");
                 //瀛樺叆minio
                 String BucketName = "record";
-                String ObjectName =IdUtils.simpleUUID() + ".mp4";
+                String ObjectName = IdUtils.simpleUUID() + ".mp4";
                 FileInputStream stream = new FileInputStream(path);
                 boolean b = MinioUtil.uploadObject(BucketName, ObjectName, stream, stream.available(), "video/MP4");
                 if (b) {
@@ -1496,7 +1518,7 @@
             if (!GlobalVariable.loginMap.containsKey(cameraId)) {
                 return false;
             }
-            Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+            Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
             //寮哄埗I甯х粨鏋勪綋瀵硅薄
             HCNetSDK.NET_DVR_I_FRAME netDvrIFrame = new HCNetSDK.NET_DVR_I_FRAME();   //鏂板缓缁撴瀯浣撳璞�
             netDvrIFrame.read();
@@ -1553,7 +1575,7 @@
             if (!GlobalVariable.loginMap.containsKey(cameraId)) {
                 return "";
             }
-            Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+            Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
             //region 寮哄埗I甯�
             HCNetSDK.NET_DVR_I_FRAME netDvrIFrame = new HCNetSDK.NET_DVR_I_FRAME();   //鏂板缓缁撴瀯浣撳璞�
             netDvrIFrame.read();
@@ -1599,14 +1621,15 @@
     }
 
     @Override
-    public void recordStopNotToMinio(CameraCmd cmd) {
+    public boolean recordStopNotToMinio(CameraCmd cmd) {
+        boolean result = false;
         try {
             String cameraId = cmd.getCameraId();
             Integer channelNum = cmd.getChanNo();
             if (!GlobalVariable.loginMap.containsKey(cameraId)) {
-                return;
+                return false;
             }
-            Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+            Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
             //寮哄埗I甯х粨鏋勪綋瀵硅薄
             HCNetSDK.NET_DVR_I_FRAME netDvrIFrame = new HCNetSDK.NET_DVR_I_FRAME();   //鏂板缓缁撴瀯浣撳璞�
             netDvrIFrame.read();
@@ -1633,9 +1656,12 @@
                 GlobalVariable.previewMap.remove(cameraId);
             }
             log.debug("褰曞儚鍋滄");
+            result = true;
         } catch (Exception ex) {
             log.error("褰曞儚鍋滄寮傚父" + ex.getMessage());
+            result = false;
         }
+        return result;
     }
 
     //鑾峰彇IP閫氶亾
@@ -1691,7 +1717,7 @@
             return new HashMap<>();
         }
         // 鑾峰彇鍙傛暟
-        Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId);
+        Integer userId = (Integer) GlobalVariable.loginMap.get(cameraId);
         HCNetSDK.NET_DVR_STD_CONFIG struStdCfg = new HCNetSDK.NET_DVR_STD_CONFIG();
         HCNetSDK.NET_DVR_GIS_INFO struGisInfo = new HCNetSDK.NET_DVR_GIS_INFO();
         struStdCfg.read();

--
Gitblit v1.9.3