From f840c85666369d407ff08ceb6ba30b17aa9d0d4e Mon Sep 17 00:00:00 2001
From: lawrencehj <1934378145@qq.com>
Date: 星期三, 10 三月 2021 12:21:05 +0800
Subject: [PATCH] 修正一处可能导致死循环的代码
---
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java | 62 +++++++++++++++++++++++++++---
1 files changed, 55 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
index dac0aa2..ac2ed5b 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -6,11 +6,13 @@
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatformCatch;
import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
+import com.genersoft.iot.vmp.gb28181.bean.MobilePosition;
import com.genersoft.iot.vmp.storager.dao.DeviceChannelMapper;
import com.genersoft.iot.vmp.storager.dao.DeviceMapper;
import com.genersoft.iot.vmp.storager.dao.ParentPlatformMapper;
import com.genersoft.iot.vmp.storager.dao.PatformChannelMapper;
import com.genersoft.iot.vmp.vmanager.platform.bean.ChannelReduce;
+import com.genersoft.iot.vmp.storager.dao.DeviceMobilePositionMapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
@@ -25,6 +27,7 @@
* @author: swwheihei
* @date: 2020骞�5鏈�6鏃� 涓嬪崍2:31:42
*/
+@SuppressWarnings("rawtypes")
@Component
public class VideoManagerStoragerImpl implements IVideoManagerStorager {
@@ -32,7 +35,10 @@
private DeviceMapper deviceMapper;
@Autowired
- private DeviceChannelMapper deviceChannelMapper;
+ private DeviceChannelMapper deviceChannelMapper;
+
+ @Autowired
+ private DeviceMobilePositionMapper deviceMobilePositionMapper;
@Autowired
private ParentPlatformMapper platformMapper;
@@ -194,11 +200,11 @@
@Override
public synchronized boolean online(String deviceId) {
Device device = deviceMapper.getDeviceByDeviceId(deviceId);
- device.setOnline(1);
- System.out.println("鏇存柊璁惧鍦ㄧ嚎");
if (device == null) {
return false;
}
+ device.setOnline(1);
+ System.out.println("鏇存柊璁惧鍦ㄧ嚎");
return deviceMapper.update(device) > 0;
}
@@ -216,10 +222,33 @@
return deviceMapper.update(device) > 0;
}
-
+ /**
+ * 娓呯┖閫氶亾
+ * @param deviceId
+ */
@Override
public void cleanChannelsForDevice(String deviceId) {
- int result = deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
+ deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
+ }
+
+ /**
+ * 娣诲姞Mobile Position璁惧绉诲姩浣嶇疆
+ * @param MobilePosition
+ */
+ @Override
+ public synchronized boolean insertMobilePosition(MobilePosition mobilePosition) {
+ return deviceMobilePositionMapper.insertNewPosition(mobilePosition) > 0;
+ }
+
+ /**
+ * 鏌ヨ绉诲姩浣嶇疆杞ㄨ抗
+ * @param deviceId
+ * @param startTime
+ * @param endTime
+ */
+ @Override
+ public synchronized List<MobilePosition> queryMobilePositions(String deviceId, String startTime, String endTime) {
+ return deviceMobilePositionMapper.queryPositionByDeviceIdAndTime(deviceId, startTime, endTime);
}
@Override
@@ -283,7 +312,7 @@
@Override
public PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online,
- Boolean channelType, String platformId, Boolean inPlatform) {
+ Boolean channelType, String platformId, Boolean inPlatform) {
PageHelper.startPage(page, count);
List<ChannelReduce> all = deviceChannelMapper.queryChannelListInAll(query, online, channelType, platformId, inPlatform);
return new PageInfo<>(all);
@@ -338,6 +367,25 @@
@Override
public Device queryVideoDeviceByPlatformIdAndChannelId(String platformId, String channelId) {
- return null;
+ Device device = patformChannelMapper.queryVideoDeviceByPlatformIdAndChannelId(platformId, channelId);
+ return device;
}
+
+ /**
+ * 鏌ヨ鏈�鏂扮Щ鍔ㄤ綅缃�
+ * @param deviceId
+ */
+ @Override
+ public MobilePosition queryLatestPosition(String deviceId) {
+ return deviceMobilePositionMapper.queryLatestPositionByDevice(deviceId);
+ }
+
+ /**
+ * 鍒犻櫎鎸囧畾璁惧鐨勬墍鏈夌Щ鍔ㄤ綅缃�
+ * @param deviceId
+ */
+ public int clearMobilePositionsByDeviceId(String deviceId) {
+ return deviceMobilePositionMapper.clearMobilePositionsByDeviceId(deviceId);
+ }
+
}
--
Gitblit v1.8.0