From 901dee2bf4c91fa92306b5d8aa66b3148658186c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 23 四月 2024 10:12:00 +0800
Subject: [PATCH] 修复转发国标notify-update时信息错误的问题

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/NotifyRequestForMobilePositionProcessor.java |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/NotifyRequestForMobilePositionProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/NotifyRequestForMobilePositionProcessor.java
index 460a507..1b7daf0 100755
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/NotifyRequestForMobilePositionProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/NotifyRequestForMobilePositionProcessor.java
@@ -25,6 +25,7 @@
 
 import javax.sip.RequestEvent;
 import javax.sip.header.FromHeader;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
@@ -67,7 +68,7 @@
 
 	private final static String talkKey = "notify-request-for-mobile-position-task";
 
-//	@Async("taskExecutor")
+	@Async("taskExecutor")
 	public void process(RequestEvent evt) {
 		try {
 			FromHeader fromHeader = (FromHeader) evt.getRequest().getHeader(FromHeader.NAME);
@@ -172,11 +173,11 @@
 			deviceChannel.setGpsTime(mobilePosition.getTime());
 			updateChannelMap.put(deviceId + channelId, deviceChannel);
 			addMobilePositionList.add(mobilePosition);
-			if(updateChannelMap.size() > 100) {
+			if(updateChannelMap.size() > 2000) {
 				executeSaveChannel();
 			}
 			if (userSetting.isSavePositionHistory()) {
-				if(addMobilePositionList.size() > 100) {
+				if(addMobilePositionList.size() > 2000) {
 					executeSaveMobilePosition();
 				}
 			}
@@ -212,8 +213,8 @@
 		dynamicTask.execute();
 		try {
 			logger.info("[绉诲姩浣嶇疆璁㈤槄]鏇存柊閫氶亾浣嶇疆锛� {}", updateChannelMap.size());
-//			ArrayList<DeviceChannel> deviceChannels = new ArrayList<>(updateChannelMap.values());
-//			deviceChannelService.batchUpdateChannelGPS(deviceChannels);
+			ArrayList<DeviceChannel> deviceChannels = new ArrayList<>(updateChannelMap.values());
+			deviceChannelService.batchUpdateChannelGPS(deviceChannels);
 			updateChannelMap.clear();
 		}catch (Exception e) {
 
@@ -223,8 +224,8 @@
 	public void executeSaveMobilePosition(){
 		if (userSetting.isSavePositionHistory()) {
 			try {
-//				logger.info("[绉诲姩浣嶇疆璁㈤槄] 娣诲姞閫氶亾杞ㄨ抗鐐逛綅锛� {}", addMobilePositionList.size());
-//				deviceChannelService.batchAddMobilePosition(addMobilePositionList);
+				logger.info("[绉诲姩浣嶇疆璁㈤槄] 娣诲姞閫氶亾杞ㄨ抗鐐逛綅锛� {}", addMobilePositionList.size());
+				deviceChannelService.batchAddMobilePosition(addMobilePositionList);
 				addMobilePositionList.clear();
 			}catch (Exception e) {
 				logger.info("[绉诲姩浣嶇疆璁㈤槄] b娣诲姞閫氶亾杞ㄨ抗鐐逛綅淇濆瓨澶辫触锛� {}", addMobilePositionList.size());

--
Gitblit v1.8.0