From 1253e030e4b805f9f8adc3c664ad9de014670ad9 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: 星期六, 25 五月 2024 17:22:39 +0800
Subject: [PATCH] 优化
---
ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java | 16 +++----
ard-work/src/main/java/com/ruoyi/utils/sdk/common/SdkErrorCodeEnum.java | 1
ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java | 67 ++++++++-------------------------
3 files changed, 24 insertions(+), 60 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/common/SdkErrorCodeEnum.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/common/SdkErrorCodeEnum.java
index 7efaa05..ac9bcd0 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/common/SdkErrorCodeEnum.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/common/SdkErrorCodeEnum.java
@@ -17,6 +17,7 @@
NET_DVR_NETWORK_SEND_ERROR(8, "鍚戣澶囧彂閫佸け璐�"),
NET_DVR_NETWORK_RECV_TIMEOUT(10, "浠庤澶囨帴鏀舵暟鎹秴鏃�"),
NET_DVR_NETWORK_ERRORDATA(11, "浼犻�佺殑鏁版嵁鏈夎銆傚彂閫佺粰璁惧鎴栬�呬粠璁惧鎺ユ敹鍒扮殑鏁版嵁閿欒锛屽杩滅▼鍙傛暟閰嶇疆鏃惰緭鍏ヨ澶囦笉鏀寔鐨勫��"),
+ NET_DVR_NOSUPPORT(23, "璁惧涓嶆敮鎸�"),
NET_DVR_DVROPRATEFAILED(29, "璁惧鎿嶄綔澶辫触"),
NET_DVR_USERNOTEXIST(47, "鐢ㄦ埛涓嶅瓨鍦ㄣ�傛敞鍐岀殑鐢ㄦ埛ID宸叉敞閿�鎴栦笉鍙敤");
/**
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
index 15cd216..e374b7a 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
@@ -123,58 +123,22 @@
NetSDKLib.AV_CFG_ChannelName av_cfg_channelName = new NetSDKLib.AV_CFG_ChannelName();
boolean b = ConfigModule.GetNewDevConfig(loginId, i - 1, CFG_CMD_CHANNELTITLE, av_cfg_channelName);
if (b) {
- String chanName = null;
+ String chanName = "";
try {
chanName = new String(av_cfg_channelName.szName, "GBK").trim();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
- channel.setName(chanName);
- } else {
- channel.setName("閫氶亾" + i);
+ channel.setName(chanName.equals("") ? "閫氶亾" + i : chanName);
}
channel.setDeviceId(camera.getId());
channel.setChanNo(i);
ardChannelService.insertArdChannel(channel);
}
//閰嶇疆鍒版祦濯掍綋
- for (int i = 1; i < m_stDeviceInfo.byChanNum + 1; i++) {
- String name = camera.getId() + "_" + i;
- String rtspSource = "rtsp://" + camera.getUsername() + ":" + camera.getPassword() + "@" + camera.getIp() + ":" + camera.getRtspPort() + "/cam/realmonitor?channel=" + i + "&subtype=0";
- Vtdu vtdu = vtduService.selectVtduByName(name);
- if (vtdu != null) {
- vtduService.deleteVtduByName(name);
- }
- //娣诲姞鍒版祦濯掍綋
- CameraCmd cmd = new CameraCmd(camera.getId(), i);
- Map<String, Object> videoCompressionCfg = getVideoCompressionCfg(cmd);
- vtdu = new Vtdu();
- if (videoCompressionCfg.get("videoEncType") != null) {
- if (videoCompressionCfg.get("videoEncType").equals("鏍囧噯h264")) {
- vtdu.setIsCode("0");//榛樿涓嶈浆鐮�
- } else {
- vtdu.setIsCode("1");//榛樿杞爜
- }
- } else {
- vtdu.setIsCode("0");//榛樿涓嶈浆鐮�
- }
- vtdu.setRtspSource(rtspSource);
- vtdu.setName(camera.getId() + "_" + i);
- vtdu.setMode("1");//榛樿CPU杞В鐮�
- vtdu.setCameraId(camera.getId());
- vtduService.insertVtdu(vtdu);
- }
-
+ addVtdu(camera);
//鍒涘缓寮曞闃熷垪
- if (camera.getCamAlarmGuideEnable() != null && camera.getCamAlarmGuideEnable() == 1) {
- if (!GuidePriorityQueue.cameraQueueMap.containsKey(camera.getId())) {
- Comparator<GuideTask> comparator = GuidePriorityQueue.getComparator();
- PriorityBlockingQueue<GuideTask> priorityQueue = new PriorityBlockingQueue<>(1000, comparator);
- GuidePriorityQueue.cameraQueueMap.put(camera.getId(), priorityQueue);
- }
- //鍚姩闃熷垪澶勭悊鍣�
- queueHandler.process(camera.getId());
- }
+ createGuideQueue(camera);
return AjaxResult.success("璁惧鐧诲綍鎴愬姛");
} catch (Exception ex) {
log.error("璁惧鐧诲綍寮傚父:" + ex.getMessage());
@@ -215,18 +179,19 @@
for (int i = 1; i < m_stDeviceInfo.byChanNum + 1; i++) {
ArdChannel channel = new ArdChannel();
NetSDKLib.AV_CFG_ChannelName av_cfg_channelName = new NetSDKLib.AV_CFG_ChannelName();
- boolean b = ConfigModule.GetNewDevConfig(loginId, i - 1, CFG_CMD_CHANNELTITLE, av_cfg_channelName);
- if (b) {
- String chanName = null;
- try {
- chanName = new String(av_cfg_channelName.szName, "GBK").trim();
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
- channel.setName(chanName);
- } else {
- channel.setName("閫氶亾" + i);
+ boolean b = ConfigModule.GetNewDevConfig(loginId, i-1, CFG_CMD_CHANNELTITLE, av_cfg_channelName);
+ if (!b) {
+ log.error("鑾峰彇閰嶇疆澶辫触,璇风◢鍚庨噸璇�" + getErrorCodePrint());
+ // return AjaxResult.warn(ErrorCode.getErrorCode(LoginModule.netsdk.CLIENT_GetLastError()));
}
+ String chanName = "";
+ try {
+ chanName = new String(av_cfg_channelName.szName, "GBK").trim();
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ }
+ channel.setName(chanName.equals("") ? "閫氶亾" + i : chanName);
+
channel.setDeviceId(camera.getId());
channel.setChanNo(i);
ardChannelService.insertArdChannel(channel);
diff --git a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
index 3b0c5ce..cd34865 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
@@ -161,20 +161,17 @@
List<ArdChannel> cameraChannelList = getIPChannelInfo(camera);
if (cameraChannelList.size() > 0) {
camera.setChannelList(cameraChannelList);
+ camera.setChanNum(cameraChannelList.size());
for (ArdChannel channel : cameraChannelList) {
channel.setId(IdUtils.simpleUUID());
ardChannelService.insertArdChannel(channel);
}
+ ardCamerasService.updateArdCameras(camera);
//娣诲姞鍒版祦濯掍綋
addVtdu(camera);
}
//鍒涘缓寮曞闃熷垪
- if (!GuidePriorityQueue.cameraQueueMap.containsKey(camera.getId())) {
- Comparator<GuideTask> comparator = GuidePriorityQueue.getComparator();
- PriorityBlockingQueue<GuideTask> priorityQueue = new PriorityBlockingQueue<>(1000, comparator);
- GuidePriorityQueue.cameraQueueMap.put(camera.getId(), priorityQueue);
- }
- ardCamerasService.updateArdCameras(camera);
+ createGuideQueue(camera);
return AjaxResult.success("璁惧鐧诲綍鎴愬姛");
} catch (Exception ex) {
log.error("璁惧鐧诲綍寮傚父", ex);
@@ -284,10 +281,11 @@
channel.setId(IdUtils.simpleUUID());
ardChannelService.insertArdChannel(channel);
}
+ ardCamerasService.updateArdCameras(camera);
+ //娣诲姞鍒版祦濯掍綋
+ addVtdu(camera);
}
- ardCamerasService.updateArdCameras(camera);
- //娣诲姞鍒版祦濯掍綋
- addVtdu(camera);
+
//鍒涘缓寮曞闃熷垪
createGuideQueue(camera);
return AjaxResult.success("璁惧鐧诲綍鎴愬姛");
--
Gitblit v1.9.3