From 4dcc7df555e0027adcea89aa2590eb56605398c2 Mon Sep 17 00:00:00 2001
From: xiaoxie <hotcoffie@163.com>
Date: 星期四, 21 四月 2022 10:03:21 +0800
Subject: [PATCH] 修复前端一处v-for没有key的警告
---
src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java | 37 ++++++++++++++++++-------------------
1 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java
index 8cd2c77..f287c5e 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java
@@ -14,6 +14,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import javax.sip.DialogState;
+
/**
* 璁惧涓氬姟锛堢洰褰曡闃咃級
*/
@@ -39,19 +41,13 @@
if (device == null || device.getSubscribeCycleForCatalog() < 0) {
return false;
}
- if (dynamicTask.contains(device.getDeviceId() + "catalog")) {
- // 瀛樺湪鍒欏仠姝㈢幇鏈夌殑锛屽紑鍚柊鐨�
- dynamicTask.stop(device.getDeviceId() + "catalog");
- }
logger.info("[娣诲姞鐩綍璁㈤槄] 璁惧{}", device.getDeviceId());
// 娣诲姞鐩綍璁㈤槄
CatalogSubscribeTask catalogSubscribeTask = new CatalogSubscribeTask(device, sipCommander);
- catalogSubscribeTask.run();
// 鎻愬墠寮�濮嬪埛鏂拌闃�
- int subscribeCycleForCatalog = device.getSubscribeCycleForCatalog();
+ int subscribeCycleForCatalog = Math.max(device.getSubscribeCycleForCatalog(),30);
// 璁剧疆鏈�灏忓�间负30
- subscribeCycleForCatalog = Math.max(subscribeCycleForCatalog, 30);
- dynamicTask.startCron(device.getDeviceId() + "catalog", catalogSubscribeTask, subscribeCycleForCatalog);
+ dynamicTask.startCron(device.getDeviceId() + "catalog", catalogSubscribeTask, subscribeCycleForCatalog -1);
return true;
}
@@ -70,18 +66,12 @@
if (device == null || device.getSubscribeCycleForMobilePosition() < 0) {
return false;
}
- if (dynamicTask.contains(device.getDeviceId() + "mobile_position")) {
- // 瀛樺湪鍒欏仠姝㈢幇鏈夌殑锛屽紑鍚柊鐨�
- dynamicTask.stop(device.getDeviceId() + "mobile_position");
- }
logger.info("[娣诲姞绉诲姩浣嶇疆璁㈤槄] 璁惧{}", device.getDeviceId());
// 娣诲姞鐩綍璁㈤槄
MobilePositionSubscribeTask mobilePositionSubscribeTask = new MobilePositionSubscribeTask(device, sipCommander);
- mobilePositionSubscribeTask.run();
// 鎻愬墠寮�濮嬪埛鏂拌闃�
- int subscribeCycleForCatalog = device.getSubscribeCycleForCatalog();
// 璁剧疆鏈�灏忓�间负30
- subscribeCycleForCatalog = Math.max(subscribeCycleForCatalog, 30);
+ int subscribeCycleForCatalog = Math.max(device.getSubscribeCycleForMobilePosition(),30);
dynamicTask.startCron(device.getDeviceId() + "mobile_position" , mobilePositionSubscribeTask, subscribeCycleForCatalog -1 );
return true;
}
@@ -102,12 +92,21 @@
}
@Override
- public void setChannelSyncReady(String deviceId) {
- catalogResponseMessageHandler.setChannelSyncReady(deviceId);
+ public Boolean isSyncRunning(String deviceId) {
+ return catalogResponseMessageHandler.isSyncRunning(deviceId);
}
@Override
- public void setChannelSyncEnd(String deviceId, String errorMsg) {
- catalogResponseMessageHandler.setChannelSyncEnd(deviceId, errorMsg);
+ public void sync(Device device) {
+ if (catalogResponseMessageHandler.isSyncRunning(device.getDeviceId())) {
+ logger.info("寮�鍚悓姝ユ椂鍙戠幇鍚屾宸茬粡瀛樺湪");
+ return;
+ }
+ int sn = (int)((Math.random()*9+1)*100000);
+ catalogResponseMessageHandler.setChannelSyncReady(device, sn);
+ sipCommander.catalogQuery(device, sn, event -> {
+ String errorMsg = String.format("鍚屾閫氶亾澶辫触锛岄敊璇爜锛� %s, %s", event.statusCode, event.msg);
+ catalogResponseMessageHandler.setChannelSyncEnd(device.getDeviceId(), errorMsg);
+ });
}
}
--
Gitblit v1.8.0