Commit 07705a0a0b7fd13c211dbbfe1650ce3f0d3a75a3

Authored by 潘钊
1 parent 16b2b3db

update...

src/main/java/com/bsth/data/gpsdata_v2/handlers/AbnormalStateProcess.java
1 package com.bsth.data.gpsdata_v2.handlers; 1 package com.bsth.data.gpsdata_v2.handlers;
2 2
3 -import com.alibaba.fastjson.JSON;  
4 import com.bsth.data.gpsdata_v2.cache.GeoCacheData; 3 import com.bsth.data.gpsdata_v2.cache.GeoCacheData;
5 import com.bsth.data.gpsdata_v2.entity.CtLineString; 4 import com.bsth.data.gpsdata_v2.entity.CtLineString;
6 import com.bsth.data.gpsdata_v2.entity.GpsEntity; 5 import com.bsth.data.gpsdata_v2.entity.GpsEntity;
7 import com.bsth.data.gpsdata_v2.utils.GeoUtils; 6 import com.bsth.data.gpsdata_v2.utils.GeoUtils;
8 import com.bsth.util.Geo.Point; 7 import com.bsth.util.Geo.Point;
9 -import org.slf4j.Logger;  
10 -import org.slf4j.LoggerFactory;  
11 import org.springframework.stereotype.Component; 8 import org.springframework.stereotype.Component;
12 9
13 import java.util.List; 10 import java.util.List;
@@ -28,40 +25,34 @@ public class AbnormalStateProcess { @@ -28,40 +25,34 @@ public class AbnormalStateProcess {
28 */ 25 */
29 private static final double OUT_BOUNDS_THRESHOLD = 100; 26 private static final double OUT_BOUNDS_THRESHOLD = 100;
30 27
31 - Logger logger = LoggerFactory.getLogger(this.getClass());  
32 -  
33 public void process(GpsEntity gps) { 28 public void process(GpsEntity gps) {
34 - try{  
35 - if(isOffline(gps))  
36 - return;  
37 -  
38 - if(overspeed(gps))  
39 - return;  
40 -  
41 - if(outOfBounds((gps)))  
42 - return;  
43 - }catch (Exception e){  
44 - logger.error("AbnormalStateProcess error", e);  
45 - logger.error("AbnormalStateProcess error data", JSON.toJSONString(gps));  
46 - } 29 + if (isOffline(gps))
  30 + return;
  31 +
  32 + if (overspeed(gps))
  33 + return;
  34 +
  35 + if (outOfBounds((gps)))
  36 + return;
47 } 37 }
48 38
49 - private boolean isOffline(GpsEntity gps){ 39 + private boolean isOffline(GpsEntity gps) {
50 return gps.getAbnormalStatus() != null && gps.getAbnormalStatus().equals("offline"); 40 return gps.getAbnormalStatus() != null && gps.getAbnormalStatus().equals("offline");
51 } 41 }
52 42
53 43
54 /** 44 /**
55 * 是否超速 45 * 是否超速
  46 + *
56 * @param gps 47 * @param gps
57 * @return 48 * @return
58 */ 49 */
59 - private boolean overspeed(GpsEntity gps){ 50 + private boolean overspeed(GpsEntity gps) {
60 double maxSpeed = DEFAULT_SPEED_LIMIT; 51 double maxSpeed = DEFAULT_SPEED_LIMIT;
61 - if(GeoCacheData.speedLimit(gps.getLineId()) != null) 52 + if (GeoCacheData.speedLimit(gps.getLineId()) != null)
62 maxSpeed = GeoCacheData.speedLimit(gps.getLineId()); 53 maxSpeed = GeoCacheData.speedLimit(gps.getLineId());
63 54
64 - if(gps.getSpeed() > maxSpeed){ 55 + if (gps.getSpeed() > maxSpeed) {
65 gps.setAbnormalStatus("overspeed"); 56 gps.setAbnormalStatus("overspeed");
66 return true; 57 return true;
67 } 58 }
@@ -71,12 +62,13 @@ public class AbnormalStateProcess { @@ -71,12 +62,13 @@ public class AbnormalStateProcess {
71 62
72 /** 63 /**
73 * 是否越界 64 * 是否越界
  65 + *
74 * @param gps 66 * @param gps
75 * @return 67 * @return
76 */ 68 */
77 - public boolean outOfBounds(GpsEntity gps){ 69 + public boolean outOfBounds(GpsEntity gps) {
78 //只处理场站外的车 70 //只处理场站外的车
79 - if(gps.getInstation() != 0){ 71 + if (gps.getInstation() != 0) {
80 return false; 72 return false;
81 } 73 }
82 74
@@ -85,15 +77,15 @@ public class AbnormalStateProcess { @@ -85,15 +77,15 @@ public class AbnormalStateProcess {
85 77
86 double min = -1, distance; 78 double min = -1, distance;
87 79
88 - for(CtLineString lineString : list){  
89 - distance = GeoUtils.getDistanceFromLine(lineString.getS(),lineString.getE(), point); 80 + for (CtLineString lineString : list) {
  81 + distance = GeoUtils.getDistanceFromLine(lineString.getS(), lineString.getE(), point);
90 82
91 - if(min == -1 || min > distance) 83 + if (min == -1 || min > distance)
92 min = distance; 84 min = distance;
93 } 85 }
94 86
95 gps.setOutOfBoundDistance(min); 87 gps.setOutOfBoundDistance(min);
96 - if(min > OUT_BOUNDS_THRESHOLD){ 88 + if (min > OUT_BOUNDS_THRESHOLD) {
97 gps.setAbnormalStatus("outBounds"); 89 gps.setAbnormalStatus("outBounds");
98 return true; 90 return true;
99 } 91 }
src/main/java/com/bsth/data/gpsdata_v2/handlers/GpsStateProcess.java
1 package com.bsth.data.gpsdata_v2.handlers; 1 package com.bsth.data.gpsdata_v2.handlers;
2 2
3 -import com.alibaba.fastjson.JSON;  
4 import com.bsth.data.gpsdata_v2.entity.GpsEntity; 3 import com.bsth.data.gpsdata_v2.entity.GpsEntity;
5 import com.bsth.data.gpsdata_v2.status_manager.GpsStatusManager; 4 import com.bsth.data.gpsdata_v2.status_manager.GpsStatusManager;
6 import com.bsth.data.schedule.DayOfSchedule; 5 import com.bsth.data.schedule.DayOfSchedule;
7 import com.bsth.entity.realcontrol.ScheduleRealInfo; 6 import com.bsth.entity.realcontrol.ScheduleRealInfo;
8 -import org.slf4j.Logger;  
9 -import org.slf4j.LoggerFactory;  
10 import org.springframework.beans.factory.annotation.Autowired; 7 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.stereotype.Component; 8 import org.springframework.stereotype.Component;
12 9
@@ -23,35 +20,28 @@ public class GpsStateProcess { @@ -23,35 +20,28 @@ public class GpsStateProcess {
23 @Autowired 20 @Autowired
24 GpsStatusManager gpsStatusManager; 21 GpsStatusManager gpsStatusManager;
25 22
26 - Logger logger = LoggerFactory.getLogger(this.getClass()); 23 + public void process(GpsEntity gps) {
  24 + //在执行的任务
  25 + ScheduleRealInfo sch = dayOfSchedule.executeCurr(gps.getNbbm());
27 26
28 - public void process(GpsEntity gps){  
29 - try{  
30 - //在执行的任务  
31 - ScheduleRealInfo sch = dayOfSchedule.executeCurr(gps.getNbbm()); 27 + if (null == sch)
  28 + return;
32 29
33 - if(null == sch)  
34 - return; 30 + byte upDown = Byte.parseByte(sch.getXlDir());
35 31
36 - byte upDown = Byte.parseByte(sch.getXlDir());  
37 -  
38 - if(gps.getUpDown() != upDown){  
39 - gps.setUpDown(upDown);//修正走向  
40 - } 32 + if (gps.getUpDown() != upDown) {
  33 + gps.setUpDown(upDown);//修正走向
  34 + }
41 35
42 - if((!gps.isService() || gps.getUpDown() != upDown) &&  
43 - !dayOfSchedule.emptyService(sch)){  
44 - //下发指令纠正车载的 营运状态 和 走向  
45 - gpsStatusManager.changeServiceState(gps.getNbbm(), upDown, 0, "同步@系统");  
46 - } 36 + if ((!gps.isService() || gps.getUpDown() != upDown) &&
  37 + !dayOfSchedule.emptyService(sch)) {
  38 + //下发指令纠正车载的 营运状态 和 走向
  39 + gpsStatusManager.changeServiceState(gps.getNbbm(), upDown, 0, "同步@系统");
  40 + }
47 41
48 - if(!sch.getXlBm().equals(gps.getLineId())){  
49 - //切换车载的 线路编码  
50 - gpsStatusManager.changeLine(gps.getNbbm(), sch.getXlBm(), "同步@系统");  
51 - }  
52 - }catch (Exception e){  
53 - logger.error("GpsStateProcess error" , e);  
54 - logger.error("GpsStateProcess error data" , JSON.toJSONString(gps)); 42 + if (!sch.getXlBm().equals(gps.getLineId())) {
  43 + //切换车载的 线路编码
  44 + gpsStatusManager.changeLine(gps.getNbbm(), sch.getXlBm(), "同步@系统");
55 } 45 }
56 } 46 }
57 } 47 }
src/main/java/com/bsth/data/gpsdata_v2/handlers/InStationProcess.java
1 package com.bsth.data.gpsdata_v2.handlers; 1 package com.bsth.data.gpsdata_v2.handlers;
2 2
3 -import com.alibaba.fastjson.JSON;  
4 import com.bsth.data.LineConfigData; 3 import com.bsth.data.LineConfigData;
5 import com.bsth.data.gpsdata_v2.cache.GeoCacheData; 4 import com.bsth.data.gpsdata_v2.cache.GeoCacheData;
6 import com.bsth.data.gpsdata_v2.cache.GpsCacheData; 5 import com.bsth.data.gpsdata_v2.cache.GpsCacheData;
@@ -44,40 +43,35 @@ public class InStationProcess { @@ -44,40 +43,35 @@ public class InStationProcess {
44 Logger logger = LoggerFactory.getLogger(this.getClass()); 43 Logger logger = LoggerFactory.getLogger(this.getClass());
45 44
46 public void process(GpsEntity gps) { 45 public void process(GpsEntity gps) {
47 - try{  
48 - //自动执行的班次信号,滚蛋  
49 - LineConfig config = lineConfigData.get(gps.getLineId());  
50 - if(null != config && config.isAutoExec())  
51 - return;  
52 -  
53 - GpsEntity prev = GpsCacheData.getPrev(gps);  
54 -  
55 - if(null == prev)  
56 - return;  
57 -  
58 - //从站外到站内  
59 - if(prev.getInstation() == 0 && gps.getInstation() > 0){  
60 - inStation(gps, prev);  
61 - }  
62 -  
63 - //从站内到另一个站内  
64 - if(prev.getInstation() == 1 && gps.getInstation() == 1  
65 - && !prev.getStopNo().equals(gps.getStopNo())  
66 - && !prev.getStation().getName().equals(gps.getStation().getName()))  
67 - inStation(gps, prev);  
68 -  
69 - //从场内到站内  
70 - if(prev.getInstation() == 2 && gps.getInstation() == 1){  
71 - inStation(gps, prev);  
72 - }  
73 -  
74 - //被起点站覆盖的情况下进场  
75 - if(isInPark(gps, prev))  
76 - inStation(gps, prev);  
77 - }catch (Exception e){  
78 - logger.error("InStationProcess error", e);  
79 - logger.error("InStationProcess error data", JSON.toJSONString(gps)); 46 + //自动执行的班次信号,滚蛋
  47 + LineConfig config = lineConfigData.get(gps.getLineId());
  48 + if (null != config && config.isAutoExec())
  49 + return;
  50 +
  51 + GpsEntity prev = GpsCacheData.getPrev(gps);
  52 +
  53 + if (null == prev)
  54 + return;
  55 +
  56 + //从站外到站内
  57 + if (prev.getInstation() == 0 && gps.getInstation() > 0) {
  58 + inStation(gps, prev);
80 } 59 }
  60 +
  61 + //从站内到另一个站内
  62 + if (prev.getInstation() == 1 && gps.getInstation() == 1
  63 + && !prev.getStopNo().equals(gps.getStopNo())
  64 + && !prev.getStation().getName().equals(gps.getStation().getName()))
  65 + inStation(gps, prev);
  66 +
  67 + //从场内到站内
  68 + if (prev.getInstation() == 2 && gps.getInstation() == 1) {
  69 + inStation(gps, prev);
  70 + }
  71 +
  72 + //被起点站覆盖的情况下进场
  73 + if (isInPark(gps, prev))
  74 + inStation(gps, prev);
81 } 75 }
82 76
83 /** 77 /**
@@ -102,7 +96,7 @@ public class InStationProcess { @@ -102,7 +96,7 @@ public class InStationProcess {
102 96
103 //进终点 97 //进终点
104 if (flow && null != sch && 98 if (flow && null != sch &&
105 - ((sch.getZdzCode().equals(gps.getStopNo()) && gps.getInstation()>0) || sch.getZdzCode().equals(gps.getCarparkNo()))) { 99 + ((sch.getZdzCode().equals(gps.getStopNo()) && gps.getInstation() > 0) || sch.getZdzCode().equals(gps.getCarparkNo()))) {
106 inEndStation(sch, gps); 100 inEndStation(sch, gps);
107 isEnd = true; 101 isEnd = true;
108 } 102 }
@@ -273,8 +267,8 @@ public class InStationProcess { @@ -273,8 +267,8 @@ public class InStationProcess {
273 } 267 }
274 } 268 }
275 269
276 - private boolean isInPark(GpsEntity gps, GpsEntity prve){  
277 - if(StringUtils.isNotEmpty(gps.getCarparkNo()) && StringUtils.isEmpty(prve.getCarparkNo())) 270 + private boolean isInPark(GpsEntity gps, GpsEntity prve) {
  271 + if (StringUtils.isNotEmpty(gps.getCarparkNo()) && StringUtils.isEmpty(prve.getCarparkNo()))
278 return true; 272 return true;
279 return false; 273 return false;
280 } 274 }
src/main/java/com/bsth/data/gpsdata_v2/handlers/OutStationProcess.java
1 package com.bsth.data.gpsdata_v2.handlers; 1 package com.bsth.data.gpsdata_v2.handlers;
2 2
3 -import com.alibaba.fastjson.JSON;  
4 import com.bsth.data.LineConfigData; 3 import com.bsth.data.LineConfigData;
5 import com.bsth.data.gpsdata_v2.cache.GpsCacheData; 4 import com.bsth.data.gpsdata_v2.cache.GpsCacheData;
6 import com.bsth.data.gpsdata_v2.entity.GpsEntity; 5 import com.bsth.data.gpsdata_v2.entity.GpsEntity;
@@ -43,33 +42,28 @@ public class OutStationProcess { @@ -43,33 +42,28 @@ public class OutStationProcess {
43 private final static int MAX_BEFORE_TIME = 1000 * 60 * 120; 42 private final static int MAX_BEFORE_TIME = 1000 * 60 * 120;
44 43
45 public void process(GpsEntity gps) { 44 public void process(GpsEntity gps) {
46 - try{  
47 - //自动执行的线路,滚蛋  
48 - LineConfig config = lineConfigData.get(gps.getLineId());  
49 - if (null != config && config.isAutoExec())  
50 - return; 45 + //自动执行的线路,滚蛋
  46 + LineConfig config = lineConfigData.get(gps.getLineId());
  47 + if (null != config && config.isAutoExec())
  48 + return;
51 49
52 - GpsEntity prev = GpsCacheData.getPrev(gps); 50 + GpsEntity prev = GpsCacheData.getPrev(gps);
53 51
54 - if (null == prev)  
55 - return; 52 + if (null == prev)
  53 + return;
56 54
57 - //从站内到站外  
58 - if (prev.getInstation() > 0 && gps.getInstation() == 0)  
59 - outStation(gps, prev); 55 + //从站内到站外
  56 + if (prev.getInstation() > 0 && gps.getInstation() == 0)
  57 + outStation(gps, prev);
60 58
61 - //从站内到另一个站内  
62 - if (prev.getInstation() > 0 && gps.getInstation() > 0  
63 - && !prev.getStopNo().equals(gps.getStopNo()))  
64 - outStation(gps, prev); 59 + //从站内到另一个站内
  60 + if (prev.getInstation() > 0 && gps.getInstation() > 0
  61 + && !prev.getStopNo().equals(gps.getStopNo()))
  62 + outStation(gps, prev);
65 63
66 - //在被起点站覆盖的情况下出场  
67 - if (isOutPark(gps, prev))  
68 - outStation(gps, prev);  
69 - }catch (Exception e){  
70 - logger.error("OutStationProcess error", e);  
71 - logger.error("OutStationProcess error", JSON.toJSONString(gps));  
72 - } 64 + //在被起点站覆盖的情况下出场
  65 + if (isOutPark(gps, prev))
  66 + outStation(gps, prev);
73 } 67 }
74 68
75 /** 69 /**
src/main/java/com/bsth/data/gpsdata_v2/handlers/ReverseRouteProcess.java
1 package com.bsth.data.gpsdata_v2.handlers; 1 package com.bsth.data.gpsdata_v2.handlers;
2 2
3 -import com.alibaba.fastjson.JSON;  
4 import com.bsth.data.LineConfigData; 3 import com.bsth.data.LineConfigData;
5 import com.bsth.data.gpsdata_v2.cache.GeoCacheData; 4 import com.bsth.data.gpsdata_v2.cache.GeoCacheData;
6 import com.bsth.data.gpsdata_v2.cache.GpsCacheData; 5 import com.bsth.data.gpsdata_v2.cache.GpsCacheData;
@@ -35,61 +34,56 @@ public class ReverseRouteProcess { @@ -35,61 +34,56 @@ public class ReverseRouteProcess {
35 34
36 Logger logger = LoggerFactory.getLogger(this.getClass()); 35 Logger logger = LoggerFactory.getLogger(this.getClass());
37 36
38 - public void process(GpsEntity gps){  
39 - try{  
40 - LineConfig config = lineConfigData.get(gps.getLineId());  
41 - if(null != config && config.isReadReverse() &&  
42 - reversRoute(gps) && !GeoCacheData.isLoopLine(gps.getLineId())){ 37 + public void process(GpsEntity gps) {
  38 + LineConfig config = lineConfigData.get(gps.getLineId());
  39 + if (null != config && config.isReadReverse() &&
  40 + reversRoute(gps) && !GeoCacheData.isLoopLine(gps.getLineId())) {
43 41
44 - ScheduleRealInfo sch = dayOfSchedule.executeCurr(gps.getNbbm()); 42 + ScheduleRealInfo sch = dayOfSchedule.executeCurr(gps.getNbbm());
45 43
46 - if(null == sch)  
47 - return;  
48 - if(isInOut(sch) || !sch.getXlBm().equals(gps.getLineId()))  
49 - return; 44 + if (null == sch)
  45 + return;
  46 + if (isInOut(sch) || !sch.getXlBm().equals(gps.getLineId()))
  47 + return;
50 48
51 - //next  
52 - ScheduleRealInfo next = dayOfSchedule.next(sch);  
53 - if(isInOut(next))  
54 - return; 49 + //next
  50 + ScheduleRealInfo next = dayOfSchedule.next(sch);
  51 + if (isInOut(next))
  52 + return;
55 53
56 - //跳下一个班次  
57 - if(Math.abs(next.getDfsjT() - gps.getTimestamp()) < TIME_THRESHOLD)  
58 - dayOfSchedule.addExecPlan(next);  
59 - }  
60 - }catch (Exception e){  
61 - logger.error("ReverseRouteProcess error", e);  
62 - logger.error("ReverseRouteProcess error data", JSON.toJSONString(gps)); 54 + //跳下一个班次
  55 + if (Math.abs(next.getDfsjT() - gps.getTimestamp()) < TIME_THRESHOLD)
  56 + dayOfSchedule.addExecPlan(next);
63 } 57 }
64 } 58 }
65 59
66 private boolean reversRoute(GpsEntity gps) { 60 private boolean reversRoute(GpsEntity gps) {
67 - if(gps.getInstation() != 1) 61 + if (gps.getInstation() != 1)
68 return false; 62 return false;
69 63
70 int sortNo = gps.getStation().getRouteSort(); 64 int sortNo = gps.getStation().getRouteSort();
71 - StationRoute prev = GpsCacheData.prevStation(gps); 65 + StationRoute prev = GpsCacheData.prevStation(gps);
72 //和上一个站点是反向 66 //和上一个站点是反向
73 - if(null != prev && sortNo < prev.getRouteSort()){ 67 + if (null != prev && sortNo < prev.getRouteSort()) {
74 68
75 //满足3个进站反向信号 69 //满足3个进站反向信号
76 List<StationRoute> prevs = GpsCacheData.prevMultiStation(gps); 70 List<StationRoute> prevs = GpsCacheData.prevMultiStation(gps);
77 71
78 int count = 0; 72 int count = 0;
79 - for(StationRoute s : prevs){  
80 - if(sortNo < s.getRouteSort())  
81 - count ++; 73 + for (StationRoute s : prevs) {
  74 + if (sortNo < s.getRouteSort())
  75 + count++;
82 sortNo = s.getRouteSort(); 76 sortNo = s.getRouteSort();
83 } 77 }
84 78
85 - if(count >= REVER_THRESHOLD) 79 + if (count >= REVER_THRESHOLD)
86 return true; 80 return true;
87 } 81 }
88 82
89 return false; 83 return false;
90 } 84 }
91 85
92 - private boolean isInOut(ScheduleRealInfo sch){ 86 + private boolean isInOut(ScheduleRealInfo sch) {
93 return sch.getBcType().equals("in") || sch.getBcType().equals("out"); 87 return sch.getBcType().equals("in") || sch.getBcType().equals("out");
94 } 88 }
95 } 89 }
src/main/java/com/bsth/data/gpsdata_v2/handlers/StationInsideProcess.java
1 package com.bsth.data.gpsdata_v2.handlers; 1 package com.bsth.data.gpsdata_v2.handlers;
2 2
3 -import com.alibaba.fastjson.JSON;  
4 import com.bsth.data.gpsdata_v2.cache.GeoCacheData; 3 import com.bsth.data.gpsdata_v2.cache.GeoCacheData;
5 import com.bsth.data.gpsdata_v2.cache.GpsCacheData; 4 import com.bsth.data.gpsdata_v2.cache.GpsCacheData;
6 import com.bsth.data.gpsdata_v2.entity.GpsEntity; 5 import com.bsth.data.gpsdata_v2.entity.GpsEntity;
7 import com.bsth.data.gpsdata_v2.entity.StationRoute; 6 import com.bsth.data.gpsdata_v2.entity.StationRoute;
8 import com.bsth.data.gpsdata_v2.utils.GeoUtils; 7 import com.bsth.data.gpsdata_v2.utils.GeoUtils;
9 -import org.slf4j.Logger;  
10 -import org.slf4j.LoggerFactory;  
11 import org.springframework.stereotype.Component; 8 import org.springframework.stereotype.Component;
12 9
13 import java.util.List; 10 import java.util.List;
@@ -19,48 +16,41 @@ import java.util.List; @@ -19,48 +16,41 @@ import java.util.List;
19 @Component 16 @Component
20 public class StationInsideProcess { 17 public class StationInsideProcess {
21 18
22 - Logger logger = LoggerFactory.getLogger(this.getClass());  
23 -  
24 public void process(GpsEntity gps) { 19 public void process(GpsEntity gps) {
25 - try {  
26 - //是否在场内  
27 - String parkCode = GeoUtils.gpsInCarpark(gps); 20 + //是否在场内
  21 + String parkCode = GeoUtils.gpsInCarpark(gps);
28 22
29 - if (parkCode != null) {  
30 - gps.setInstation(2);  
31 - gps.setStopNo(parkCode);  
32 - gps.setCarparkNo(parkCode);  
33 - } 23 + if (parkCode != null) {
  24 + gps.setInstation(2);
  25 + gps.setStopNo(parkCode);
  26 + gps.setCarparkNo(parkCode);
  27 + }
34 28
35 - //是否在站内  
36 - List<StationRoute> srs = GeoCacheData.getStationRoute(gps.getLineId(), gps.getUpDown());  
37 - StationRoute station = GeoUtils.gpsInStation(gps, srs);  
38 - if (station != null) {  
39 - gps.setInstation(1);  
40 - gps.setStopNo(station.getCode());  
41 - gps.setStation(station);  
42 - } 29 + //是否在站内
  30 + List<StationRoute> srs = GeoCacheData.getStationRoute(gps.getLineId(), gps.getUpDown());
  31 + StationRoute station = GeoUtils.gpsInStation(gps, srs);
  32 + if (station != null) {
  33 + gps.setInstation(1);
  34 + gps.setStopNo(station.getCode());
  35 + gps.setStation(station);
  36 + }
43 37
44 - //是否在进站前置围栏内  
45 - String premiseCode = GeoUtils.gpsInPremiseGeo(gps);  
46 - gps.setPremiseCode(premiseCode); 38 + //是否在进站前置围栏内
  39 + String premiseCode = GeoUtils.gpsInPremiseGeo(gps);
  40 + gps.setPremiseCode(premiseCode);
47 41
48 - //上一个点位  
49 - GpsEntity prev = GpsCacheData.getPrev(gps); 42 + //上一个点位
  43 + GpsEntity prev = GpsCacheData.getPrev(gps);
50 44
51 - if (null != prev) {  
52 - //继承前置围栏状态  
53 - if (null == premiseCode && null != prev.getPremiseCode())  
54 - gps.setPremiseCode(prev.getPremiseCode()); 45 + if (null != prev) {
  46 + //继承前置围栏状态
  47 + if (null == premiseCode && null != prev.getPremiseCode())
  48 + gps.setPremiseCode(prev.getPremiseCode());
55 49
56 - //在场,站外  
57 - if (gps.getInstation() == 0) {  
58 - gps.setStopNo(prev.getStopNo());//继承上一个点的站点编码  
59 - } 50 + //在场,站外
  51 + if (gps.getInstation() == 0) {
  52 + gps.setStopNo(prev.getStopNo());//继承上一个点的站点编码
60 } 53 }
61 - } catch (Exception e) {  
62 - logger.error("StationInsideProcess error", e);  
63 - logger.error("StationInsideProcess error data", JSON.toJSONString(gps));  
64 } 54 }
65 } 55 }
66 } 56 }