Commit 7b007ff426691d0064317d836b376cbe8aea8112

Authored by 潘钊
1 parent af3beaa5

update...

src/main/java/com/bsth/XDApplication.java
@@ -98,7 +98,8 @@ public class XDApplication implements CommandLineRunner { @@ -98,7 +98,8 @@ public class XDApplication implements CommandLineRunner {
98 //sexec.scheduleWithFixedDelay(schedulePstThread, 60, 15, TimeUnit.SECONDS); 98 //sexec.scheduleWithFixedDelay(schedulePstThread, 60, 15, TimeUnit.SECONDS);
99 //班次修正日志延迟入库 99 //班次修正日志延迟入库
100 //sexec.scheduleWithFixedDelay(seiPstThread, 60, 30, TimeUnit.SECONDS); 100 //sexec.scheduleWithFixedDelay(seiPstThread, 60, 30, TimeUnit.SECONDS);
101 - 101 + //调度指令延迟入库
  102 + //sexec.scheduleWithFixedDelay(directivesPstThread, 180, 180, TimeUnit.SECONDS);
102 //线程监听(防止重要的线程阻塞、异常结束。以及部分主备切换工作) 103 //线程监听(防止重要的线程阻塞、异常结束。以及部分主备切换工作)
103 //sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS); 104 //sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS);
104 } 105 }
@@ -116,7 +117,7 @@ public class XDApplication implements CommandLineRunner { @@ -116,7 +117,7 @@ public class XDApplication implements CommandLineRunner {
116 sexec.scheduleWithFixedDelay(scheduleRefreshThread, 15, 240, TimeUnit.SECONDS); 117 sexec.scheduleWithFixedDelay(scheduleRefreshThread, 15, 240, TimeUnit.SECONDS);
117 //班次延迟入库线程 118 //班次延迟入库线程
118 sexec.scheduleWithFixedDelay(schedulePstThread, 60, 10, TimeUnit.SECONDS); 119 sexec.scheduleWithFixedDelay(schedulePstThread, 60, 10, TimeUnit.SECONDS);
119 - //班次修正日志延迟入库 120 + //班次修正日志入库
120 sexec.scheduleWithFixedDelay(seiPstThread, 60, 60, TimeUnit.SECONDS); 121 sexec.scheduleWithFixedDelay(seiPstThread, 60, 60, TimeUnit.SECONDS);
121 //检查班次误点 122 //检查班次误点
122 sexec.scheduleWithFixedDelay(scheduleLateThread, 60, 30, TimeUnit.SECONDS); 123 sexec.scheduleWithFixedDelay(scheduleLateThread, 60, 30, TimeUnit.SECONDS);
src/main/java/com/bsth/data/directive/DirectivesPstThread.java
@@ -34,6 +34,7 @@ public class DirectivesPstThread extends Thread { @@ -34,6 +34,7 @@ public class DirectivesPstThread extends Thread {
34 34
35 @Override 35 @Override
36 public void run() { 36 public void run() {
  37 +
37 LinkedList<Directive> list = DayOfDirectives.pstDirectives; 38 LinkedList<Directive> list = DayOfDirectives.pstDirectives;
38 39
39 Directive directive; 40 Directive directive;
@@ -46,8 +47,10 @@ public class DirectivesPstThread extends Thread { @@ -46,8 +47,10 @@ public class DirectivesPstThread extends Thread {
46 if(d60.isDispatch()){ 47 if(d60.isDispatch()){
47 ScheduleRealInfo sch = d60.getSch(); 48 ScheduleRealInfo sch = d60.getSch();
48 //如果关联的班次已经不存在了,放弃入库 49 //如果关联的班次已经不存在了,放弃入库
49 - if(dayOfSchedule.get(sch.getId()) == null) 50 + if(dayOfSchedule.get(sch.getId()) == null){
  51 + logger.warn("班次:" + sch.getId() + "不存在了,调度指令放弃入库。");
50 continue; 52 continue;
  53 + }
51 } 54 }
52 d60Repository.save(d60); 55 d60Repository.save(d60);
53 } 56 }
src/main/java/com/bsth/data/schedule/DayOfSchedule.java
@@ -649,7 +649,12 @@ public class DayOfSchedule { @@ -649,7 +649,12 @@ public class DayOfSchedule {
649 nbbmScheduleMap.remove(sch.getClZbh(), sch); 649 nbbmScheduleMap.remove(sch.getClZbh(), sch);
650 id2SchedulMap.remove(sch.getId()); 650 id2SchedulMap.remove(sch.getId());
651 lpScheduleMap.remove(sch.getXlBm() + "_" + sch.getLpName(), sch); 651 lpScheduleMap.remove(sch.getXlBm() + "_" + sch.getLpName(), sch);
652 - //return sch; 652 +
  653 + //如果正在执行该班次
  654 + if(carExecutePlanMap.get(sch.getClZbh()) == sch){
  655 + //重新计算车辆当前执行班次
  656 + reCalcExecPlan(sch.getClZbh());
  657 + }
653 } 658 }
654 659
655 660