From 1dbb559b388831b5f15e690d0b33d24b1faaa983 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 25 一月 2022 15:43:52 +0800
Subject: [PATCH] 优化文件导入判断

---
 src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java
index 729eca2..d83094e 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java
@@ -150,15 +150,21 @@
 		Device device = storager.queryVideoDevice(deviceId);
 		String key = DeferredResultHolder.CALLBACK_CMD_CATALOG + deviceId;
 		String uuid = UUID.randomUUID().toString();
-		DeferredResult<ResponseEntity<Device>> result = new DeferredResult<ResponseEntity<Device>>(15*1000L);
+		// 榛樿瓒呮椂鏃堕棿涓�30鍒嗛挓
+		DeferredResult<ResponseEntity<Device>> result = new DeferredResult<ResponseEntity<Device>>(30*60*1000L);
 		result.onTimeout(()->{
-			logger.warn(String.format("璁惧閫氶亾淇℃伅鍚屾瓒呮椂"));
+			logger.warn("璁惧[{}]閫氶亾淇℃伅鍚屾瓒呮椂", deviceId);
 			// 閲婃斁rtpserver
 			RequestMessage msg = new RequestMessage();
 			msg.setKey(key);
 			msg.setId(uuid);
-			msg.setData("Timeout");
+			WVPResult<Object> wvpResult = new WVPResult<>();
+			wvpResult.setCode(-1);
+			wvpResult.setData(device);
+			wvpResult.setMsg("鏇存柊瓒呮椂");
+			msg.setData(wvpResult);
 			resultHolder.invokeAllResult(msg);
+
 		});
 		// 绛夊緟鍏朵粬鐩稿悓璇锋眰杩斿洖鏃朵竴璧疯繑鍥�
 		if (resultHolder.exist(key, null)) {
@@ -168,7 +174,11 @@
 			RequestMessage msg = new RequestMessage();
 			msg.setKey(key);
 			msg.setId(uuid);
-			msg.setData(String.format("鍚屾閫氶亾澶辫触锛岄敊璇爜锛� %s, %s", event.statusCode, event.msg));
+			WVPResult<Object> wvpResult = new WVPResult<>();
+			wvpResult.setCode(-1);
+			wvpResult.setData(device);
+			wvpResult.setMsg(String.format("鍚屾閫氶亾澶辫触锛岄敊璇爜锛� %s, %s", event.statusCode, event.msg));
+			msg.setData(wvpResult);
 			resultHolder.invokeAllResult(msg);
 		});
 
@@ -306,7 +316,8 @@
 			if (!StringUtils.isEmpty(device.getCharset())) deviceInStore.setCharset(device.getCharset());
 			if (!StringUtils.isEmpty(device.getMediaServerId())) deviceInStore.setMediaServerId(device.getMediaServerId());
 
-			if (deviceInStore.getSubscribeCycleForCatalog() <=0 && device.getSubscribeCycleForCatalog() > 0) {
+			if ((deviceInStore.getSubscribeCycleForCatalog() <=0 && device.getSubscribeCycleForCatalog() > 0)
+					|| deviceInStore.getSubscribeCycleForCatalog() != device.getSubscribeCycleForCatalog()) {
 				deviceInStore.setSubscribeCycleForCatalog(device.getSubscribeCycleForCatalog());
 				// 寮�鍚闃�
 				deviceService.addCatalogSubscribe(deviceInStore);

--
Gitblit v1.8.0