Commit 3bddd74ebe3540ed3de54d4434398249d773102f
1 parent
ca0939c4
update...
Showing
5 changed files
with
20 additions
and
7 deletions
src/main/java/com/bsth/data/gpsdata_v2/handlers/InStationProcess.java
| @@ -43,6 +43,11 @@ public class InStationProcess { | @@ -43,6 +43,11 @@ public class InStationProcess { | ||
| 43 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 43 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 44 | 44 | ||
| 45 | public void process(GpsEntity gps) { | 45 | public void process(GpsEntity gps) { |
| 46 | + //自动执行的班次信号,滚蛋 | ||
| 47 | + LineConfig config = lineConfigData.get(gps.getLineId()); | ||
| 48 | + if(null != config && config.isAutoExec()) | ||
| 49 | + return; | ||
| 50 | + | ||
| 46 | GpsEntity prev = GpsCacheData.getPrev(gps); | 51 | GpsEntity prev = GpsCacheData.getPrev(gps); |
| 47 | 52 | ||
| 48 | if(null == prev) | 53 | if(null == prev) |
src/main/java/com/bsth/data/gpsdata_v2/handlers/OutStationProcess.java
| @@ -42,6 +42,11 @@ public class OutStationProcess { | @@ -42,6 +42,11 @@ public class OutStationProcess { | ||
| 42 | private final static int MAX_BEFORE_TIME = 1000 * 60 * 120; | 42 | private final static int MAX_BEFORE_TIME = 1000 * 60 * 120; |
| 43 | 43 | ||
| 44 | public void process(GpsEntity gps){ | 44 | public void process(GpsEntity gps){ |
| 45 | + //自动执行的班次信号,滚蛋 | ||
| 46 | + LineConfig config = lineConfigData.get(gps.getLineId()); | ||
| 47 | + if(null != config && config.isAutoExec()) | ||
| 48 | + return; | ||
| 49 | + | ||
| 45 | GpsEntity prev = GpsCacheData.getPrev(gps); | 50 | GpsEntity prev = GpsCacheData.getPrev(gps); |
| 46 | 51 | ||
| 47 | if(null == prev) | 52 | if(null == prev) |
src/main/java/com/bsth/data/gpsdata_v2/handlers/ReverseRouteProcess.java
| @@ -20,9 +20,9 @@ import java.util.List; | @@ -20,9 +20,9 @@ import java.util.List; | ||
| 20 | @Component | 20 | @Component |
| 21 | public class ReverseRouteProcess { | 21 | public class ReverseRouteProcess { |
| 22 | 22 | ||
| 23 | - private static final int REVER_THRESHOLD = 4; | 23 | + private static final int REVER_THRESHOLD = 6; |
| 24 | 24 | ||
| 25 | - private static final long TIME_THRESHOLD = 1000 * 60 * 120; | 25 | + private static final long TIME_THRESHOLD = 1000 * 60 * 30; |
| 26 | 26 | ||
| 27 | @Autowired | 27 | @Autowired |
| 28 | DayOfSchedule dayOfSchedule; | 28 | DayOfSchedule dayOfSchedule; |
src/main/java/com/bsth/data/gpsdata_v2/utils/SignalSchPlanMatcher.java
| @@ -41,7 +41,7 @@ public class SignalSchPlanMatcher { | @@ -41,7 +41,7 @@ public class SignalSchPlanMatcher { | ||
| 41 | try{ | 41 | try{ |
| 42 | //晚于待发时间 10 分钟 ,匹配一下最佳的班次 | 42 | //晚于待发时间 10 分钟 ,匹配一下最佳的班次 |
| 43 | if(t - sch.getDfsjT() > 1000 * 60 * 10){ | 43 | if(t - sch.getDfsjT() > 1000 * 60 * 10){ |
| 44 | - ScheduleRealInfo near = searchNearOut(gps, sch.getXlDir()); | 44 | + ScheduleRealInfo near = searchNearSch(gps, sch.getQdzCode()); |
| 45 | 45 | ||
| 46 | if(null != near && !near.getId().equals(sch.getId())){ | 46 | if(null != near && !near.getId().equals(sch.getId())){ |
| 47 | 47 | ||
| @@ -105,7 +105,7 @@ public class SignalSchPlanMatcher { | @@ -105,7 +105,7 @@ public class SignalSchPlanMatcher { | ||
| 105 | * @param gps | 105 | * @param gps |
| 106 | * @return | 106 | * @return |
| 107 | */ | 107 | */ |
| 108 | - private ScheduleRealInfo searchNearOut(GpsEntity gps, String upDown) { | 108 | + private ScheduleRealInfo searchNearSch(GpsEntity gps, String qdzCode) { |
| 109 | List<ScheduleRealInfo> list = dayOfSchedule.findByNbbm(gps.getNbbm()); | 109 | List<ScheduleRealInfo> list = dayOfSchedule.findByNbbm(gps.getNbbm()); |
| 110 | //排序 | 110 | //排序 |
| 111 | Collections.sort(list, schComp); | 111 | Collections.sort(list, schComp); |
| @@ -113,7 +113,7 @@ public class SignalSchPlanMatcher { | @@ -113,7 +113,7 @@ public class SignalSchPlanMatcher { | ||
| 113 | ScheduleRealInfo near = null; | 113 | ScheduleRealInfo near = null; |
| 114 | int diff, minDiff=-1; | 114 | int diff, minDiff=-1; |
| 115 | for(ScheduleRealInfo sch : list){ | 115 | for(ScheduleRealInfo sch : list){ |
| 116 | - if(!sch.getXlDir().equals(upDown)) | 116 | + if(!sch.getQdzCode().equals(qdzCode)) |
| 117 | continue; | 117 | continue; |
| 118 | 118 | ||
| 119 | if(StringUtils.isNotEmpty(sch.getFcsjActual())) | 119 | if(StringUtils.isNotEmpty(sch.getFcsjActual())) |
src/main/java/com/bsth/data/schedule/auto_exec/RealScheduleAutoExecHandler.java
| @@ -37,6 +37,7 @@ public class RealScheduleAutoExecHandler { | @@ -37,6 +37,7 @@ public class RealScheduleAutoExecHandler { | ||
| 37 | 37 | ||
| 38 | if (StringUtils.isEmpty(sch.getZdsjActual()) && sch.getZdsjT() < t) { | 38 | if (StringUtils.isEmpty(sch.getZdsjActual()) && sch.getZdsjT() < t) { |
| 39 | sch.setZdsjActualAll(sch.getZdsjT()); | 39 | sch.setZdsjActualAll(sch.getZdsjT()); |
| 40 | + flag = true; | ||
| 40 | 41 | ||
| 41 | //准备执行下一个班次 | 42 | //准备执行下一个班次 |
| 42 | ScheduleRealInfo next = dayOfSchedule.next(sch); | 43 | ScheduleRealInfo next = dayOfSchedule.next(sch); |
| @@ -48,11 +49,13 @@ public class RealScheduleAutoExecHandler { | @@ -48,11 +49,13 @@ public class RealScheduleAutoExecHandler { | ||
| 48 | } | 49 | } |
| 49 | } | 50 | } |
| 50 | 51 | ||
| 51 | - //路牌的下一个班次,线调页面显示 | 52 | + //路牌有下一个班次,线调页面显示 |
| 52 | ScheduleRealInfo nextLp = dayOfSchedule.nextByLp(sch); | 53 | ScheduleRealInfo nextLp = dayOfSchedule.nextByLp(sch); |
| 53 | if (null != nextLp) { | 54 | if (null != nextLp) { |
| 54 | - nextLp.setQdzArrDatesj(sch.getZdsjActual()); | 55 | + //入库 |
| 56 | + dayOfSchedule.save(sch); | ||
| 55 | 57 | ||
| 58 | + nextLp.setQdzArrDatesj(sch.getZdsjActual()); | ||
| 56 | List<ScheduleRealInfo> refs = new ArrayList<>(); | 59 | List<ScheduleRealInfo> refs = new ArrayList<>(); |
| 57 | refs.add(sch); | 60 | refs.add(sch); |
| 58 | refs.add(nextLp); | 61 | refs.add(nextLp); |