Commit 26b86228ee30d285d135eff9375090ec449e7263
1 parent
cad8712b
末二班车、到站时间大于发车时间页面和js,退出线调判断方式、撤销实发的时候撤销实到
Showing
11 changed files
with
270 additions
and
39 deletions
src/main/java/com/bsth/XDApplication.java
| @@ -275,7 +275,7 @@ public class XDApplication implements CommandLineRunner { | @@ -275,7 +275,7 @@ public class XDApplication implements CommandLineRunner { | ||
| 275 | //sexec.scheduleWithFixedDelay(fcxxUpdateThread, 160, 30, TimeUnit.SECONDS);//发车信息(发车屏、信息发布) | 275 | //sexec.scheduleWithFixedDelay(fcxxUpdateThread, 160, 30, TimeUnit.SECONDS);//发车信息(发车屏、信息发布) |
| 276 | //线路首末班数据(网关用,班次更新时写入) | 276 | //线路首末班数据(网关用,班次更新时写入) |
| 277 | //com.bsth.data.schedule.f_a_l.FirstAndLastHandler | 277 | //com.bsth.data.schedule.f_a_l.FirstAndLastHandler |
| 278 | - sexec.scheduleWithFixedDelay(schSiginUpdateDBThread, 160, 60 * 30, TimeUnit.SECONDS);//无法自动完成的班次信息(网关用,补信号) | 278 | + //sexec.scheduleWithFixedDelay(schSiginUpdateDBThread, 160, 60 * 30, TimeUnit.SECONDS);//无法自动完成的班次信息(网关用,补信号) |
| 279 | 279 | ||
| 280 | //运管处静态数据提交 | 280 | //运管处静态数据提交 |
| 281 | //log.info(timeDiff / 1000 / 60 + "分钟之后提交到运管处"); | 281 | //log.info(timeDiff / 1000 / 60 + "分钟之后提交到运管处"); |
src/main/java/com/bsth/data/zndd/AutomaticSch.java
| @@ -429,14 +429,14 @@ public class AutomaticSch { | @@ -429,14 +429,14 @@ public class AutomaticSch { | ||
| 429 | /** | 429 | /** |
| 430 | *每辆车倒数第二个班次执行之前3分钟提示 | 430 | *每辆车倒数第二个班次执行之前3分钟提示 |
| 431 | */ | 431 | */ |
| 432 | - public void TowdescSch(){ | 432 | + public void TowdescSch(int snt){ //snt开关用于控制执行方法 0末二班车 1发车时间小于到站时间 |
| 433 | logger.warn("末二班车执行方法开始"); | 433 | logger.warn("末二班车执行方法开始"); |
| 434 | try { | 434 | try { |
| 435 | //获取所有线路 | 435 | //获取所有线路 |
| 436 | Map<String, String> lineMap = BasicData.lineCode2NameMap; | 436 | Map<String, String> lineMap = BasicData.lineCode2NameMap; |
| 437 | //findByNbbm车辆索引获取的班次 | 437 | //findByNbbm车辆索引获取的班次 |
| 438 | Map<String, List<ScheduleRealInfo>> groupedByCity = new HashMap<>(); | 438 | Map<String, List<ScheduleRealInfo>> groupedByCity = new HashMap<>(); |
| 439 | - if(System.currentTimeMillis() < DateUtils.getTimestamp() + (1000 * 60 * 60 * 20)){ | 439 | + if(snt == 0 && System.currentTimeMillis() < DateUtils.getTimestamp() + (1000 * 60 * 60 * 20)){ |
| 440 | logger.info("未到晚上8点----"+(DateUtils.getTimestamp() + (1000 * 60 * 60 * 20))); | 440 | logger.info("未到晚上8点----"+(DateUtils.getTimestamp() + (1000 * 60 * 60 * 20))); |
| 441 | return; | 441 | return; |
| 442 | } | 442 | } |
| @@ -462,19 +462,37 @@ public class AutomaticSch { | @@ -462,19 +462,37 @@ public class AutomaticSch { | ||
| 462 | //判断倒数第二个班次是否快要发车 | 462 | //判断倒数第二个班次是否快要发车 |
| 463 | for (String key : mapType.keySet()) { | 463 | for (String key : mapType.keySet()) { |
| 464 | List<ScheduleRealInfo> carList = mapType.get(key); | 464 | List<ScheduleRealInfo> carList = mapType.get(key); |
| 465 | - Collections.sort(carList, new ScheduleComparator.FCSJ()); | ||
| 466 | - //倒数第二个班次保证数量超过两条 | ||
| 467 | - ScheduleRealInfo scht = carList.size() >= 2 ? carList.get(carList.size() - 2) : null; | ||
| 468 | - if (scht == null) | ||
| 469 | - continue; | ||
| 470 | - | ||
| 471 | - if (scht.getDfsjT() > DateUtils.getTimestamp() + (1000 * 60 * 60 * 20) && | ||
| 472 | - scht.getDfsjT() - System.currentTimeMillis() < (1000* 60 * 4) && | ||
| 473 | - scht.getDfsjT() - System.currentTimeMillis() >= (1000* 60 *3)) { | ||
| 474 | - //推送一下 | ||
| 475 | - ts(addStationPeople(scht,"DESCTWO",0l)); | ||
| 476 | - | ||
| 477 | - LogerWait("末二班车推送",scht); | 465 | + if (snt == 1) { |
| 466 | + for (int i = 0; i < carList.size(); i++) { | ||
| 467 | + ScheduleRealInfo sr = carList.get(i); | ||
| 468 | + //2.到达时间大于发车时间 | ||
| 469 | + if (i < carList.size() - 1) { | ||
| 470 | + ScheduleRealInfo src = carList.get(i + 1); | ||
| 471 | + if (sr.getZdsjActual() != null && src.getFcsjActual() != null && sr.getStatus() != -1 && src.getStatus() != -1) { | ||
| 472 | + if (src.getFcsjActualTime() < sr.getZdsjActualTime()) { | ||
| 473 | + ts(addStationPeople(src, "FCSJXZD", 0l)); | ||
| 474 | + LogerWait("班次发车时间小于到站时间", src); | ||
| 475 | + } | ||
| 476 | + } | ||
| 477 | + } | ||
| 478 | + } | ||
| 479 | + } | ||
| 480 | + if (snt == 0) { | ||
| 481 | + //倒数第二班方法 | ||
| 482 | + Collections.sort(carList, new ScheduleComparator.FCSJ()); | ||
| 483 | + //倒数第二个班次保证数量超过两条 | ||
| 484 | + ScheduleRealInfo scht = carList.size() >= 2 ? carList.get(carList.size() - 2) : null; | ||
| 485 | + if (scht == null) | ||
| 486 | + continue; | ||
| 487 | + | ||
| 488 | + if (scht.getDfsjT() > DateUtils.getTimestamp() + (1000 * 60 * 60 * 20) && | ||
| 489 | + scht.getDfsjT() - System.currentTimeMillis() < (1000 * 60 * 4) && | ||
| 490 | + scht.getDfsjT() - System.currentTimeMillis() >= (1000 * 60 * 3)) { | ||
| 491 | + //推送一下 | ||
| 492 | + ts(addStationPeople(scht, "DESCTWO", 0l)); | ||
| 493 | + | ||
| 494 | + LogerWait("末二班车推送", scht); | ||
| 495 | + } | ||
| 478 | } | 496 | } |
| 479 | } | 497 | } |
| 480 | } | 498 | } |
| @@ -484,6 +502,47 @@ public class AutomaticSch { | @@ -484,6 +502,47 @@ public class AutomaticSch { | ||
| 484 | } | 502 | } |
| 485 | } | 503 | } |
| 486 | 504 | ||
| 505 | + //班次发车时间小于到站时间 | ||
| 506 | + public void FCSJXZD(){ | ||
| 507 | + /* logger.warn("到达时间大于发车时间方法开始"); | ||
| 508 | + //获取所有线路 | ||
| 509 | + | ||
| 510 | + //findByNbbm车辆索引获取的 | ||
| 511 | + try { | ||
| 512 | + //两种检测 1、当前班次的实发 小于 实到 2.下一班次的实发 小于 上一班次的实到 | ||
| 513 | + | ||
| 514 | + for (Map.Entry<String, String> t : lineMap.entrySet()) { | ||
| 515 | + List<ScheduleRealInfo> srList = dayOfSchedule.findByLineCode(t.getKey()); | ||
| 516 | + for (int i = 0; i < srList.size(); i++) { | ||
| 517 | + ScheduleRealInfo sr = srList.get(i); | ||
| 518 | + *//* //1.当前班次的实发 小于 实到 | ||
| 519 | + if (sr.getFcsjActual() != null && sr.getZdsjActual() != null && sr.getStatus() != -1) { | ||
| 520 | + //提示 | ||
| 521 | + if (sr.getFcsjActualTime() > sr.getZdsjActualTime()) { | ||
| 522 | + ts(addStationPeople(sr, "FCSJXZD", 0l)); | ||
| 523 | + | ||
| 524 | + LogerWait("班次发车时间小于到站时间", sr); | ||
| 525 | + } | ||
| 526 | + | ||
| 527 | + }*//* | ||
| 528 | + //2.到达时间大于发车时间 | ||
| 529 | + if (i < srList.size() -1){ | ||
| 530 | + ScheduleRealInfo src = srList.get(i + 1); | ||
| 531 | + if (sr.getZdsjActual() != null && src.getFcsjActual() != null && sr.getStatus() != -1 && src.getStatus() != -1){ | ||
| 532 | + if (src.getFcsjActualTime() < sr.getZdsjActualTime()){ | ||
| 533 | + ts(addStationPeople(sr, "FCSJXZD", 0l)); | ||
| 534 | + LogerWait("班次发车时间小于到站时间", sr); | ||
| 535 | + } | ||
| 536 | + } | ||
| 537 | + } | ||
| 538 | + } | ||
| 539 | + } | ||
| 540 | + }catch (Exception e){ | ||
| 541 | + logger.error("班次发车时间小于到站时间执行方法出错"+ e); | ||
| 542 | + }*/ | ||
| 543 | + | ||
| 544 | + } | ||
| 545 | + | ||
| 487 | 546 | ||
| 488 | 547 | ||
| 489 | public void ts(Map m) throws ParseException { | 548 | public void ts(Map m) throws ParseException { |
src/main/java/com/bsth/data/zndd/OutEntrance.java
| @@ -80,6 +80,9 @@ public class OutEntrance { | @@ -80,6 +80,9 @@ public class OutEntrance { | ||
| 80 | @Autowired | 80 | @Autowired |
| 81 | BasicData basicData; | 81 | BasicData basicData; |
| 82 | 82 | ||
| 83 | + @Autowired | ||
| 84 | + ZnddMessage znddMessage; | ||
| 85 | + | ||
| 83 | //调度屏小程序接口。 | 86 | //调度屏小程序接口。 |
| 84 | @RequestMapping(value = "/OutCar", method = RequestMethod.POST) | 87 | @RequestMapping(value = "/OutCar", method = RequestMethod.POST) |
| 85 | public Map OutCarOutCar(@RequestParam Map m,@RequestBody StationSignsLogger ssLogger) { | 88 | public Map OutCarOutCar(@RequestParam Map m,@RequestBody StationSignsLogger ssLogger) { |
| @@ -320,14 +323,14 @@ public class OutEntrance { | @@ -320,14 +323,14 @@ public class OutEntrance { | ||
| 320 | return rtn; | 323 | return rtn; |
| 321 | } | 324 | } |
| 322 | 325 | ||
| 323 | -/* | 326 | + |
| 324 | //大客流消息测试接口 | 327 | //大客流消息测试接口 |
| 325 | @RequestMapping(value="/znMeeage",method = RequestMethod.GET) | 328 | @RequestMapping(value="/znMeeage",method = RequestMethod.GET) |
| 326 | public Map znddMessagejk(@RequestParam Map m){ | 329 | public Map znddMessagejk(@RequestParam Map m){ |
| 327 | Map rtn = new HashMap<>(); | 330 | Map rtn = new HashMap<>(); |
| 328 | try { | 331 | try { |
| 329 | List<ScheduleRealInfo> sr = dayOfSchedule.findByBcType(m.get("nbbm").toString(),"normal"); | 332 | List<ScheduleRealInfo> sr = dayOfSchedule.findByBcType(m.get("nbbm").toString(),"normal"); |
| 330 | - ZnddMessage.saveSch(sr.get(Integer.parseInt(m.get("num").toString()))); | 333 | + znddMessage.saveSch(sr.get(Integer.parseInt(m.get("num").toString()))); |
| 331 | rtn.put("status",ResponseCode.SUCCESS); | 334 | rtn.put("status",ResponseCode.SUCCESS); |
| 332 | } catch (Exception e) { | 335 | } catch (Exception e) { |
| 333 | rtn.put("err",ResponseCode.ERROR); | 336 | rtn.put("err",ResponseCode.ERROR); |
| @@ -335,7 +338,7 @@ public class OutEntrance { | @@ -335,7 +338,7 @@ public class OutEntrance { | ||
| 335 | } | 338 | } |
| 336 | return rtn; | 339 | return rtn; |
| 337 | } | 340 | } |
| 338 | -*/ | 341 | + |
| 339 | 342 | ||
| 340 | 343 | ||
| 341 | 344 |
src/main/java/com/bsth/data/zndd/ZnddMessage.java
0 → 100644
| 1 | +package com.bsth.data.zndd; | ||
| 2 | + | ||
| 3 | +import com.bsth.entity.realcontrol.ScheduleRealInfo; | ||
| 4 | +import org.slf4j.Logger; | ||
| 5 | +import org.slf4j.LoggerFactory; | ||
| 6 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
| 7 | +import org.springframework.web.bind.annotation.RequestMethod; | ||
| 8 | +import org.springframework.web.bind.annotation.RestController; | ||
| 9 | + | ||
| 10 | +import java.text.SimpleDateFormat; | ||
| 11 | +import java.util.*; | ||
| 12 | + | ||
| 13 | +@RestController | ||
| 14 | +@RequestMapping("/znddmessage") | ||
| 15 | +public class ZnddMessage { | ||
| 16 | + | ||
| 17 | + static List<Map> LISTMAPALL= new ArrayList<>(); //返回给前台的班次情况 | ||
| 18 | + | ||
| 19 | + Logger logger = LoggerFactory.getLogger(this.getClass()); | ||
| 20 | + | ||
| 21 | + | ||
| 22 | + public void saveSch(ScheduleRealInfo sch){ | ||
| 23 | + Map m = new HashMap(); | ||
| 24 | + m.put("sch",sch); | ||
| 25 | + //防止重复的 | ||
| 26 | + for (Map mm : LISTMAPALL){ | ||
| 27 | + ScheduleRealInfo sr = (ScheduleRealInfo) mm.get("sch"); | ||
| 28 | + if (sr.getClZbh().equals(sch.getClZbh())){ | ||
| 29 | + return; | ||
| 30 | + } | ||
| 31 | + } | ||
| 32 | + LISTMAPALL.add(m); | ||
| 33 | + handleAll(); | ||
| 34 | + } | ||
| 35 | + | ||
| 36 | + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); | ||
| 37 | + | ||
| 38 | + @RequestMapping(value="/messagelist",method = RequestMethod.GET) | ||
| 39 | + public List<Map> listAll(){ | ||
| 40 | + | ||
| 41 | + handleAll(); | ||
| 42 | + return LISTMAPALL; | ||
| 43 | + } | ||
| 44 | + | ||
| 45 | + //新的请求处理一下 | ||
| 46 | + public void handleAll(){ | ||
| 47 | + for (Map m : LISTMAPALL){ | ||
| 48 | + ScheduleRealInfo sr = (ScheduleRealInfo) m.get("sch"); | ||
| 49 | + //1.离线 2.实发时间为空 3.已过待发时间还没发车的 | ||
| 50 | + long time = System.currentTimeMillis();//正常大客流添加班次也是在上下5分钟浮动,实际时间+10分钟 | ||
| 51 | + //超过待发时间 实发时间还是null的 | ||
| 52 | + // if (sr.getFcsjT() + (1000 * 60 * 10) < time && sr.getFcsjT() + (1000 * 60 * 10) > time) { //实际使用 //测试注释 | ||
| 53 | + MessageStatus(sr, m); | ||
| 54 | + m.put("sch", sr); | ||
| 55 | + if (m.get("uuid") == null) | ||
| 56 | + m.put("uuid",AutomaticSch.UUID()); | ||
| 57 | + // } | ||
| 58 | + | ||
| 59 | + if (sr.getMessageDKL() == 10){ | ||
| 60 | + LISTMAPALL.remove(m); | ||
| 61 | + return; | ||
| 62 | + } | ||
| 63 | + } | ||
| 64 | + } | ||
| 65 | + | ||
| 66 | + | ||
| 67 | + public void MessageStatus(ScheduleRealInfo sch, Map map){ | ||
| 68 | + | ||
| 69 | + switch (sch.getMessageDKL()) { | ||
| 70 | + case 0: | ||
| 71 | + jsy(sch,map); | ||
| 72 | + break; | ||
| 73 | + case 1: | ||
| 74 | + ts_car(sch,map); | ||
| 75 | + break; | ||
| 76 | + case 2: | ||
| 77 | + | ||
| 78 | + break; | ||
| 79 | + case 3: | ||
| 80 | + | ||
| 81 | + break; | ||
| 82 | + case 4: | ||
| 83 | + | ||
| 84 | + break; | ||
| 85 | + | ||
| 86 | + } | ||
| 87 | + } | ||
| 88 | + | ||
| 89 | + | ||
| 90 | + //下发驾驶员 | ||
| 91 | + public void jsy(ScheduleRealInfo sch, Map map){ | ||
| 92 | + try { | ||
| 93 | + //暂无 | ||
| 94 | + sch.setMessageDKL(sch.getMessageDKL()+1); | ||
| 95 | + if (map.get("j_sj") == null) | ||
| 96 | + map.put("j_sj",sdf.format(new Date())); | ||
| 97 | + | ||
| 98 | + MessageStatus(sch, map);//继续下一项 | ||
| 99 | + }catch (Exception e){ | ||
| 100 | + logger.info("下发驾驶员异常---",e); | ||
| 101 | + }finally { | ||
| 102 | + logger.info("驾驶员下发成功"); | ||
| 103 | + } | ||
| 104 | + } | ||
| 105 | + | ||
| 106 | + //下发车辆 | ||
| 107 | + public void ts_car(ScheduleRealInfo sch, Map map){ | ||
| 108 | + try { | ||
| 109 | + //暂无 | ||
| 110 | + sch.setMessageDKL(sch.getMessageDKL()+1); | ||
| 111 | + if (map.get("car_sj") == null) | ||
| 112 | + map.put("car_sj",sdf.format(new Date())); | ||
| 113 | + | ||
| 114 | + MessageStatus(sch, map);//继续下一项 | ||
| 115 | + }catch (Exception e){ | ||
| 116 | + logger.info("下发车辆异常---",e); | ||
| 117 | + }finally { | ||
| 118 | + logger.info("下发车辆成功"); | ||
| 119 | + } | ||
| 120 | + } | ||
| 121 | + | ||
| 122 | +} |
src/main/java/com/bsth/data/zndd/ZnddTwoThread.java
| @@ -97,12 +97,19 @@ public class ZnddTwoThread extends Thread{ | @@ -97,12 +97,19 @@ public class ZnddTwoThread extends Thread{ | ||
| 97 | new Thread() { | 97 | new Thread() { |
| 98 | @Override | 98 | @Override |
| 99 | public void run() { | 99 | public void run() { |
| 100 | - automaticSch.TowdescSch(); | 100 | + automaticSch.TowdescSch(0); |
| 101 | logger.info("末二班车执行完毕"); | 101 | logger.info("末二班车执行完毕"); |
| 102 | } | 102 | } |
| 103 | }.start();//启动线程 | 103 | }.start();//启动线程 |
| 104 | - | ||
| 105 | - | 104 | + } |
| 105 | + if (zs.getType().equals("fcsjxzd")) { | ||
| 106 | + new Thread() { | ||
| 107 | + @Override | ||
| 108 | + public void run() { | ||
| 109 | + automaticSch.TowdescSch(1); | ||
| 110 | + logger.info("到达时间大于发车时间执行完毕"); | ||
| 111 | + } | ||
| 112 | + }.start();//启动线程 | ||
| 106 | } | 113 | } |
| 107 | } | 114 | } |
| 108 | } | 115 | } |
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
| @@ -1750,6 +1750,18 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1750,6 +1750,18 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1750 | } else { | 1750 | } else { |
| 1751 | //日志记录 | 1751 | //日志记录 |
| 1752 | ScheduleModifyLogger.cxsf(sch); | 1752 | ScheduleModifyLogger.cxsf(sch); |
| 1753 | + //环线有可能把实到补上,实到存在的情况下 把实到也撤销掉 | ||
| 1754 | + if (!sch.getZdsjActual().isEmpty()) { | ||
| 1755 | + sch.clearZdsjActual(); | ||
| 1756 | + //清除路牌下一班起点到达时间 | ||
| 1757 | + ScheduleRealInfo next = dayOfSchedule.nextByLp(sch); | ||
| 1758 | + if (null != next) { | ||
| 1759 | + next.setQdzArrDatesj(null); | ||
| 1760 | + ts.add(next); | ||
| 1761 | + } | ||
| 1762 | + //重新计算车辆执行班次 | ||
| 1763 | + dayOfSchedule.reCalcExecPlan(sch.getClZbh()); | ||
| 1764 | + } | ||
| 1753 | 1765 | ||
| 1754 | sch.clearFcsjActual(); | 1766 | sch.clearFcsjActual(); |
| 1755 | rs.put("status", ResponseCode.SUCCESS); | 1767 | rs.put("status", ResponseCode.SUCCESS); |
src/main/java/com/bsth/service/zndd/impl/LoggerZnddServiceImpl.java
| @@ -250,8 +250,7 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | @@ -250,8 +250,7 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | ||
| 250 | return sch; | 250 | return sch; |
| 251 | } | 251 | } |
| 252 | 252 | ||
| 253 | - | ||
| 254 | - | 253 | + //退出线调提示 |
| 255 | public String LineUserAll(@RequestParam Integer userId){ | 254 | public String LineUserAll(@RequestParam Integer userId){ |
| 256 | String xlNames =""; | 255 | String xlNames =""; |
| 257 | RealControAuthority rcay = realControAuthorityService.findByUserId(userId); | 256 | RealControAuthority rcay = realControAuthorityService.findByUserId(userId); |
| @@ -260,7 +259,8 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | @@ -260,7 +259,8 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | ||
| 260 | for(String line : lineArray){ | 259 | for(String line : lineArray){ |
| 261 | List<ScheduleRealInfo> schList = dayOfSchedule.findByLineCode(line); | 260 | List<ScheduleRealInfo> schList = dayOfSchedule.findByLineCode(line); |
| 262 | for(ScheduleRealInfo sc : schList){ | 261 | for(ScheduleRealInfo sc : schList){ |
| 263 | - if (sc.getStatus() == 0 || sc.getStatus() == 1){ | 262 | + //去除烂班、发车时间和实到时间都为null的时候 |
| 263 | + if (sc.getStatus() != -1 && (sc.getFcsjActual() == null || sc.getZdsjActual() == null)){ | ||
| 264 | xlNames += sc.getXlName()+","; | 264 | xlNames += sc.getXlName()+","; |
| 265 | break; | 265 | break; |
| 266 | } | 266 | } |
src/main/resources/static/real_control_v2/fragments/line_schedule/layout.html
| @@ -40,6 +40,7 @@ | @@ -40,6 +40,7 @@ | ||
| 40 | <span class="tl-xxsd">消息收到</span> | 40 | <span class="tl-xxsd">消息收到</span> |
| 41 | <span class="tl-xxrd">消息阅读</span> | 41 | <span class="tl-xxrd">消息阅读</span> |
| 42 | <span class="tl-wfyd">无发有到</span> | 42 | <span class="tl-wfyd">无发有到</span> |
| 43 | + <span class="tl-wd" style="width: 125px">实到-实发大于实到</span> | ||
| 43 | </div> | 44 | </div> |
| 44 | <div class="ct_title"> | 45 | <div class="ct_title"> |
| 45 | 图例(RFID) | 46 | 图例(RFID) |
src/main/resources/static/real_control_v2/fragments/line_schedule/sch_table.html
| @@ -156,6 +156,14 @@ | @@ -156,6 +156,14 @@ | ||
| 156 | </dd> | 156 | </dd> |
| 157 | </script> | 157 | </script> |
| 158 | 158 | ||
| 159 | + <script id="line-schedule-dzsj-temp" type="text/html"> | ||
| 160 | + <dd class="{{if ddtype== 0}}> | ||
| 161 | + tl-wd | ||
| 162 | + {{/if}}"> | ||
| 163 | + {{qdzArrDatesj ? qdzArrDatesj : ''}} | ||
| 164 | + </dd> | ||
| 165 | + </script> | ||
| 166 | + | ||
| 159 | <script id="line-schedule-sfsj-temp" type="text/html"> | 167 | <script id="line-schedule-sfsj-temp" type="text/html"> |
| 160 | <dd data-uk-observe class=" | 168 | <dd data-uk-observe class=" |
| 161 | {{if status==-1}} | 169 | {{if status==-1}} |
src/main/resources/static/real_control_v2/js/line_schedule/sch_table.js
| @@ -374,7 +374,8 @@ var gb_schedule_table = (function () { | @@ -374,7 +374,8 @@ var gb_schedule_table = (function () { | ||
| 374 | //车辆双击 | 374 | //车辆双击 |
| 375 | gb_schedule_table_dbclick.carCellClick($newDds3); | 375 | gb_schedule_table_dbclick.carCellClick($newDds3); |
| 376 | $(dds[4]).text(sch.qdzArrDatejh ? sch.qdzArrDatejh : ''); | 376 | $(dds[4]).text(sch.qdzArrDatejh ? sch.qdzArrDatejh : ''); |
| 377 | - $(dds[5]).text(sch.qdzArrDatesj ? sch.qdzArrDatesj : ''); | 377 | + var dzsjDd = $(temps['line-schedule-dzsj-temp'](sch)); |
| 378 | + $(dds[5]).replaceWith(dzsjDd); | ||
| 378 | 379 | ||
| 379 | //计发时间 | 380 | //计发时间 |
| 380 | var d5html = temps['line-schedule-fcsj-temp'](sch); | 381 | var d5html = temps['line-schedule-fcsj-temp'](sch); |
src/main/resources/static/real_control_v2/js/zndd/data_zndd.js
| @@ -23,12 +23,12 @@ var gb_dataZndd = (function (){ | @@ -23,12 +23,12 @@ var gb_dataZndd = (function (){ | ||
| 23 | //时间格式化 | 23 | //时间格式化 |
| 24 | data.types = codes[data.type]; | 24 | data.types = codes[data.type]; |
| 25 | 25 | ||
| 26 | - /* if (data.type == 'SFTZ_1' && sf_tz(data.lineCode) == false){ | 26 | + if (data.type == 'SFTZ_1' && sf_tz(data.lineCode) == false){ |
| 27 | return | 27 | return |
| 28 | } | 28 | } |
| 29 | -*/ | ||
| 30 | 29 | ||
| 31 | - if ((data.type == 'WD' || data.type == 'MZ' || data.type == 'FCJG' || data.type == 'DJG') && ycsf_sx(data.lineCode) == false){ | 30 | + |
| 31 | + if ((data.type == 'WD' || data.type == 'FCJG' || data.type == 'DJG') && ycsf_sx(data.lineCode) == false){ | ||
| 32 | return | 32 | return |
| 33 | } | 33 | } |
| 34 | 34 | ||
| @@ -42,11 +42,18 @@ var gb_dataZndd = (function (){ | @@ -42,11 +42,18 @@ var gb_dataZndd = (function (){ | ||
| 42 | configureDkl(); | 42 | configureDkl(); |
| 43 | return; | 43 | return; |
| 44 | } | 44 | } |
| 45 | - | ||
| 46 | - if (data.type == 'DESCTWO'){ | 45 | + //末二班车 |
| 46 | + if (data.type == 'DESCTWO' && mo_two(data.lineCode) == false){ | ||
| 47 | configurecell(); | 47 | configurecell(); |
| 48 | return; | 48 | return; |
| 49 | } | 49 | } |
| 50 | + //到站时间大于发车时间 | ||
| 51 | + if (data.type == 'FCSJXZD' && zdsj_sx(data.lineCode) == false){ | ||
| 52 | + var sch =data.sch; | ||
| 53 | + sch.ddtype = 0; | ||
| 54 | + gb_schedule_table.updateSchedule(sch); | ||
| 55 | + return; | ||
| 56 | + } | ||
| 50 | 57 | ||
| 51 | 58 | ||
| 52 | configure(); | 59 | configure(); |
| @@ -131,19 +138,30 @@ var gb_dataZndd = (function (){ | @@ -131,19 +138,30 @@ var gb_dataZndd = (function (){ | ||
| 131 | } | 138 | } |
| 132 | return false; | 139 | return false; |
| 133 | } | 140 | } |
| 141 | + //末二班车、1009路,浦东33路、1096路 | ||
| 142 | + function mo_two(){ | ||
| 143 | + var t =['60019','80302','80301']; | ||
| 134 | 144 | ||
| 145 | + for (var lines in t){ | ||
| 146 | + if(line == t[lines]) | ||
| 147 | + return true; | ||
| 148 | + } | ||
| 149 | + return false; | ||
| 150 | + } | ||
| 135 | 151 | ||
| 152 | + //实发时间大于到站时间 | ||
| 153 | + //定制15线、申港3路、临港7路、新临专线、中运量3号线 | ||
| 154 | + function zdsj_sx(){ | ||
| 155 | + var t =['230608','60033','210810','200828','230718']; | ||
| 136 | 156 | ||
| 157 | + for (var lines in t){ | ||
| 158 | + if(line == t[lines]) | ||
| 159 | + return true; | ||
| 160 | + } | ||
| 161 | + return false; | ||
| 162 | + } | ||
| 137 | 163 | ||
| 138 | - /* //演示-----大客流 | ||
| 139 | - $(".ys_dkl").click(function (){ | ||
| 140 | - folder = '/real_control_v2/zndd/yanshi'; | ||
| 141 | - open_modal(folder + '/yanshi.html', { | ||
| 142 | - }, {center: true, bgclose: false, modal: true}); | ||
| 143 | - | ||
| 144 | - }); | ||
| 145 | 164 | ||
| 146 | -*/ | ||
| 147 | 165 | ||
| 148 | //发车信息微调 | 166 | //发车信息微调 |
| 149 | $pop.on('click', '.fcxxwts', function () { | 167 | $pop.on('click', '.fcxxwts', function () { |