Commit 57dc87b83bd39bd824c9fb575e663d6698503ecc
1 parent
cbc35119
update...
Showing
2 changed files
with
17 additions
and
1 deletions
src/main/java/com/bsth/data/gpsdata_v2/GpsRealData.java
| @@ -97,7 +97,7 @@ public class GpsRealData { | @@ -97,7 +97,7 @@ public class GpsRealData { | ||
| 97 | /** | 97 | /** |
| 98 | * @Title: get @Description: TODO(设备号获取GPS) | 98 | * @Title: get @Description: TODO(设备号获取GPS) |
| 99 | */ | 99 | */ |
| 100 | - public GpsEntity get(String deviceId) { | 100 | + public static GpsEntity get(String deviceId) { |
| 101 | return gpsMap.get(deviceId); | 101 | return gpsMap.get(deviceId); |
| 102 | } | 102 | } |
| 103 | 103 |
src/main/java/com/bsth/data/gpsdata_v2/utils/GpsDataUtils.java
| 1 | package com.bsth.data.gpsdata_v2.utils; | 1 | package com.bsth.data.gpsdata_v2.utils; |
| 2 | 2 | ||
| 3 | +import com.bsth.data.gpsdata_v2.GpsRealData; | ||
| 3 | import com.bsth.data.gpsdata_v2.entity.GpsEntity; | 4 | import com.bsth.data.gpsdata_v2.entity.GpsEntity; |
| 4 | import org.slf4j.Logger; | 5 | import org.slf4j.Logger; |
| 5 | import org.slf4j.LoggerFactory; | 6 | import org.slf4j.LoggerFactory; |
| @@ -24,7 +25,22 @@ public class GpsDataUtils { | @@ -24,7 +25,22 @@ public class GpsDataUtils { | ||
| 24 | List<GpsEntity> rs = new ArrayList<>(); | 25 | List<GpsEntity> rs = new ArrayList<>(); |
| 25 | 26 | ||
| 26 | try { | 27 | try { |
| 28 | + GpsEntity prev; | ||
| 27 | for (GpsEntity gps : list) { | 29 | for (GpsEntity gps : list) { |
| 30 | + prev = GpsRealData.get(gps.getDeviceId()); | ||
| 31 | + | ||
| 32 | + //不接收过期数据 | ||
| 33 | + if(prev != null){ | ||
| 34 | + | ||
| 35 | + if(gps.getTimestamp().longValue() < prev.getTimestamp().longValue()) | ||
| 36 | + continue; | ||
| 37 | + | ||
| 38 | + if(prev.getTimestamp().equals(gps.getTimestamp())&& | ||
| 39 | + prev.getLat().equals(gps.getLat()) && | ||
| 40 | + prev.getLon().equals(gps.getLon())) | ||
| 41 | + continue; | ||
| 42 | + } | ||
| 43 | + | ||
| 28 | if (gps.getValid() == 0 && Math.abs(gps.getTimestamp() - gps.getServerTimestamp()) < 1000 * 60 * 20) | 44 | if (gps.getValid() == 0 && Math.abs(gps.getTimestamp() - gps.getServerTimestamp()) < 1000 * 60 * 20) |
| 29 | rs.add(gps); | 45 | rs.add(gps); |
| 30 | } | 46 | } |