Commit ca0939c40586d084ccec13349c00ce5c70450caa

Authored by 潘钊
1 parent ec6480bb

update...

src/main/java/com/bsth/data/gpsdata_v2/handlers/ReverseRouteProcess.java
... ... @@ -35,6 +35,7 @@ public class ReverseRouteProcess {
35 35 LineConfig config = lineConfigData.get(gps.getLineId());
36 36 if(null != config && config.isReadReverse() &&
37 37 reversRoute(gps) && !GeoCacheData.isLoopLine(gps.getLineId())){
  38 +
38 39 ScheduleRealInfo sch = dayOfSchedule.executeCurr(gps.getNbbm());
39 40 if(isInOut(sch) || !sch.getXlBm().equals(gps.getLineId()))
40 41 return;
... ...
src/main/java/com/bsth/data/gpsdata_v2/utils/SignalSchPlanMatcher.java
... ... @@ -41,11 +41,15 @@ public class SignalSchPlanMatcher {
41 41 try{
42 42 //晚于待发时间 10 分钟 ,匹配一下最佳的班次
43 43 if(t - sch.getDfsjT() > 1000 * 60 * 10){
44   - ScheduleRealInfo near = searchNearOut(gps);
  44 + ScheduleRealInfo near = searchNearOut(gps, sch.getXlDir());
45 45  
46 46 if(null != near && !near.getId().equals(sch.getId())){
47   - dayOfSchedule.addExecPlan(near);
48   - return false;
  47 +
  48 + if(Math.abs(t - near.getDfsjT()) < Math.abs((t - sch.getDfsjT()))){
  49 +
  50 + dayOfSchedule.addExecPlan(near);
  51 + return false;
  52 + }
49 53 }
50 54 }
51 55  
... ... @@ -101,7 +105,7 @@ public class SignalSchPlanMatcher {
101 105 * @param gps
102 106 * @return
103 107 */
104   - private ScheduleRealInfo searchNearOut(GpsEntity gps) {
  108 + private ScheduleRealInfo searchNearOut(GpsEntity gps, String upDown) {
105 109 List<ScheduleRealInfo> list = dayOfSchedule.findByNbbm(gps.getNbbm());
106 110 //排序
107 111 Collections.sort(list, schComp);
... ... @@ -109,6 +113,8 @@ public class SignalSchPlanMatcher {
109 113 ScheduleRealInfo near = null;
110 114 int diff, minDiff=-1;
111 115 for(ScheduleRealInfo sch : list){
  116 + if(!sch.getXlDir().equals(upDown))
  117 + continue;
112 118  
113 119 if(StringUtils.isNotEmpty(sch.getFcsjActual()))
114 120 continue;
... ...