Commit 01d02c94ef36c3108fa4ce8424bf19320d1ba32e
1 parent
a2e42fe9
智能调度发车间隔、误点、满载、大间隔
Showing
14 changed files
with
1796 additions
and
205 deletions
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
| @@ -884,14 +884,4 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -884,14 +884,4 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 884 | 884 | ||
| 885 | return res; | 885 | return res; |
| 886 | } | 886 | } |
| 887 | - | ||
| 888 | - /** | ||
| 889 | - * 智能调度大间隔临加班次 | ||
| 890 | - * @param ids | ||
| 891 | - * @return | ||
| 892 | - */ | ||
| 893 | - @RequestMapping(value = "thissch/{id}", method = RequestMethod.POST) | ||
| 894 | - public ScheduleRealInfo thissch(@RequestParam Integer id){ | ||
| 895 | - return scheduleRealInfoService.thissch(id); | ||
| 896 | - } | ||
| 897 | } | 887 | } |
src/main/java/com/bsth/controller/zndd/LoggerZnddController.java
| @@ -18,7 +18,6 @@ public class LoggerZnddController extends BaseController<LoggerZndd, Integer> { | @@ -18,7 +18,6 @@ public class LoggerZnddController extends BaseController<LoggerZndd, Integer> { | ||
| 18 | 18 | ||
| 19 | @RequestMapping("listall") | 19 | @RequestMapping("listall") |
| 20 | public List<Map<String, Object>> listAll(@RequestParam Map<String, Object> map){ | 20 | public List<Map<String, Object>> listAll(@RequestParam Map<String, Object> map){ |
| 21 | - | ||
| 22 | return loggerZnddService.listAll(map); | 21 | return loggerZnddService.listAll(map); |
| 23 | } | 22 | } |
| 24 | 23 | ||
| @@ -28,4 +27,21 @@ public class LoggerZnddController extends BaseController<LoggerZndd, Integer> { | @@ -28,4 +27,21 @@ public class LoggerZnddController extends BaseController<LoggerZndd, Integer> { | ||
| 28 | return loggerZnddService.schlist(lineCode,dir); | 27 | return loggerZnddService.schlist(lineCode,dir); |
| 29 | } | 28 | } |
| 30 | 29 | ||
| 30 | + | ||
| 31 | + @RequestMapping(value = "/znddConfig", method = RequestMethod.POST) | ||
| 32 | + public Map<String, Object> znddConfig(@RequestParam Map<String, Object> map){ | ||
| 33 | + return loggerZnddService.znddConfig(map); | ||
| 34 | + } | ||
| 35 | + | ||
| 36 | + | ||
| 37 | + | ||
| 38 | + /** | ||
| 39 | + * 智能调度大间隔临加班次 | ||
| 40 | + * @param id | ||
| 41 | + * @return | ||
| 42 | + */ | ||
| 43 | + @RequestMapping(value = "thissch/{id}", method = RequestMethod.POST) | ||
| 44 | + public ScheduleRealInfo thissch(@PathVariable("id") Integer id){ | ||
| 45 | + return loggerZnddService.thissch(id); | ||
| 46 | + } | ||
| 31 | } | 47 | } |
src/main/java/com/bsth/data/zndd/AutomaticSch.java
| @@ -64,7 +64,7 @@ public class AutomaticSch { | @@ -64,7 +64,7 @@ public class AutomaticSch { | ||
| 64 | // 当日60指令缓存 | 64 | // 当日60指令缓存 |
| 65 | private ConcurrentMap<Integer, D60> d60Map = new ConcurrentHashMap<>();//d60map | 65 | private ConcurrentMap<Integer, D60> d60Map = new ConcurrentHashMap<>();//d60map |
| 66 | 66 | ||
| 67 | - String urldkl = "http://10.10.200.202:5580/monitor/api/getMonitorInfoByDay?key=1&solt=1111&t=1&dayStr=2024-07-23"; //大间隔接口 | 67 | + String urldkl = "http://10.10.200.202:5580/monitor/api/getMonitorInfoByDay?key=1&solt=1111&t=1&dayStr=2024-10-23"; //大间隔接口 |
| 68 | 68 | ||
| 69 | //http://10.10.200.201:8083/wxk-prod-api/service-api/lggj/schedule/drByInfo 维修接口 | 69 | //http://10.10.200.201:8083/wxk-prod-api/service-api/lggj/schedule/drByInfo 维修接口 |
| 70 | 70 | ||
| @@ -73,8 +73,9 @@ public class AutomaticSch { | @@ -73,8 +73,9 @@ public class AutomaticSch { | ||
| 73 | //满载 | 73 | //满载 |
| 74 | public void mz(){ | 74 | public void mz(){ |
| 75 | try { | 75 | try { |
| 76 | - ScheduleRealInfo sr = dayOfSchedule.executeCurr("S0R-054"); | ||
| 77 | - ts(addStationPeople(sr, "MZ", 0L));//第二种 设备未离线 出站时间内未出站 | 76 | + |
| 77 | + List<ScheduleRealInfo> sr = dayOfSchedule.findByBcType("W1Q-006","normal"); | ||
| 78 | + ts(addStationPeople(sr.get(5), "MZ", 0L));//第二种 设备未离线 出站时间内未出站 | ||
| 78 | } | 79 | } |
| 79 | catch (Exception e){ | 80 | catch (Exception e){ |
| 80 | logger.error("满载------------------",e); | 81 | logger.error("满载------------------",e); |
| @@ -82,7 +83,7 @@ public class AutomaticSch { | @@ -82,7 +83,7 @@ public class AutomaticSch { | ||
| 82 | } | 83 | } |
| 83 | 84 | ||
| 84 | //大间隔的情况 | 85 | //大间隔的情况 |
| 85 | - public void dfTz(){ | 86 | + public void dfTz(int k ){ |
| 86 | try{ | 87 | try{ |
| 87 | StringBuilder sb = HttpClientUtils.get(urldkl /*+ sdfMonth.format(new Date())*/); | 88 | StringBuilder sb = HttpClientUtils.get(urldkl /*+ sdfMonth.format(new Date())*/); |
| 88 | if (sb == null) | 89 | if (sb == null) |
| @@ -97,8 +98,12 @@ public class AutomaticSch { | @@ -97,8 +98,12 @@ public class AutomaticSch { | ||
| 97 | }else { | 98 | }else { |
| 98 | continue; | 99 | continue; |
| 99 | } | 100 | } |
| 101 | + if (k == 0 && lg.getlGType() == 0){ | ||
| 102 | + ts(ConvertDJK(lg,sch,"FCJG")); | ||
| 103 | + }else { | ||
| 104 | + ts(ConvertDJK(lg,sch,"DJG")); | ||
| 105 | + } | ||
| 100 | 106 | ||
| 101 | - ts(ConvertDJK(lg,sch)); | ||
| 102 | } | 107 | } |
| 103 | 108 | ||
| 104 | }catch (Exception e){ | 109 | }catch (Exception e){ |
| @@ -114,9 +119,7 @@ public class AutomaticSch { | @@ -114,9 +119,7 @@ public class AutomaticSch { | ||
| 114 | if (m != null) { | 119 | if (m != null) { |
| 115 | if (Integer.valueOf(m.get("num").toString()) > 15) { | 120 | if (Integer.valueOf(m.get("num").toString()) > 15) { |
| 116 | //超过10的时候 判断为大客流 | 121 | //超过10的时候 判断为大客流 |
| 117 | - | ||
| 118 | ts(ConvertDKL(m)); | 122 | ts(ConvertDKL(m)); |
| 119 | - | ||
| 120 | } | 123 | } |
| 121 | } | 124 | } |
| 122 | 125 | ||
| @@ -326,7 +329,7 @@ public class AutomaticSch { | @@ -326,7 +329,7 @@ public class AutomaticSch { | ||
| 326 | if(StringUtils.isEmpty(sch.getQdzArrDatesj())){ | 329 | if(StringUtils.isEmpty(sch.getQdzArrDatesj())){ |
| 327 | ScheduleRealInfo prev = dayOfSchedule.prev(sch); | 330 | ScheduleRealInfo prev = dayOfSchedule.prev(sch); |
| 328 | //上一个班次也没有实际终点到达时间 | 331 | //上一个班次也没有实际终点到达时间 |
| 329 | - if(prev != null && StringUtils.isEmpty(prev.getZdsjActual())){ | 332 | + if(prev != null && StringUtils.isEmpty(prev.getZdsjActual()) && (sch.getBcType().equals("normal")|| sch.getBcType().equals("region"))){ |
| 330 | //进入误点调整程序 | 333 | //进入误点调整程序 |
| 331 | LateAdjustHandle.putLate(sch); | 334 | LateAdjustHandle.putLate(sch); |
| 332 | List<Map> dzList = carMonitor.carMonitor(prev.getXlBm(), prev.getXlDir(), prev.getZdzCode()); //信息发布接口 | 335 | List<Map> dzList = carMonitor.carMonitor(prev.getXlBm(), prev.getXlDir(), prev.getZdzCode()); //信息发布接口 |
| @@ -381,14 +384,14 @@ public class AutomaticSch { | @@ -381,14 +384,14 @@ public class AutomaticSch { | ||
| 381 | 384 | ||
| 382 | 385 | ||
| 383 | //大间隔数据转换 | 386 | //大间隔数据转换 |
| 384 | - public Map ConvertDJK(LargeGap lg,ScheduleRealInfo sch){ | 387 | + public Map ConvertDJK(LargeGap lg,ScheduleRealInfo sch,String type){ |
| 385 | Map sp = new HashMap(); | 388 | Map sp = new HashMap(); |
| 386 | sp.put("uuid",UUID()); | 389 | sp.put("uuid",UUID()); |
| 387 | sp.put("lineCode",lg.getLineCode()); | 390 | sp.put("lineCode",lg.getLineCode()); |
| 388 | sp.put("lineName",lg.getLineName() ); | 391 | sp.put("lineName",lg.getLineName() ); |
| 389 | sp.put("rqStr",lg.getDateStr()); | 392 | sp.put("rqStr",lg.getDateStr()); |
| 390 | sp.put("rq",sdfHHmm.format(lg.getTsTime())); | 393 | sp.put("rq",sdfHHmm.format(lg.getTsTime())); |
| 391 | - sp.put("type","DJG"); | 394 | + sp.put("type",type); |
| 392 | sp.put("xlDir",lg.getUpDown()); | 395 | sp.put("xlDir",lg.getUpDown()); |
| 393 | sp.put("numType",lg.getIntervalMinute()); | 396 | sp.put("numType",lg.getIntervalMinute()); |
| 394 | sp.put("stationCode",lg.getStationName()); | 397 | sp.put("stationCode",lg.getStationName()); |
src/main/java/com/bsth/data/zndd/ZnddThread.java
| @@ -34,8 +34,6 @@ public class ZnddThread extends Thread{ | @@ -34,8 +34,6 @@ public class ZnddThread extends Thread{ | ||
| 34 | GpsRealData gpsRealData; | 34 | GpsRealData gpsRealData; |
| 35 | @Autowired | 35 | @Autowired |
| 36 | StationRouteRepository stationRouteRepository; | 36 | StationRouteRepository stationRouteRepository; |
| 37 | - /* @Autowired | ||
| 38 | - private UserCarCountHandler userCarCountHandler;*/ | ||
| 39 | @Autowired | 37 | @Autowired |
| 40 | OutEntrance outEntrance; | 38 | OutEntrance outEntrance; |
| 41 | @Autowired | 39 | @Autowired |
| @@ -50,7 +48,7 @@ public class ZnddThread extends Thread{ | @@ -50,7 +48,7 @@ public class ZnddThread extends Thread{ | ||
| 50 | String url = "https://lgapp.bsth.tech:13089/bsth_passengerflow/klbus/currentInsideNum.do"; //车内客流接口 | 48 | String url = "https://lgapp.bsth.tech:13089/bsth_passengerflow/klbus/currentInsideNum.do"; //车内客流接口 |
| 51 | 49 | ||
| 52 | 50 | ||
| 53 | - String urldkl = "https://lgapp.bsth.tech:8005//monitor/api/getMonitorInfoByDay?key=1&solt=1111&t=1&dayStr="; //大客流接口 | 51 | + String urldkl = "http://10.10.200.140:13089/bsth_passengerflow/klbus/currentInsideNum.do"; //大客流接口 |
| 54 | 52 | ||
| 55 | private static SimpleDateFormat sdfHHmm = new SimpleDateFormat("HH:mm"); | 53 | private static SimpleDateFormat sdfHHmm = new SimpleDateFormat("HH:mm"); |
| 56 | private static SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"); | 54 | private static SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"); |
| @@ -59,15 +57,20 @@ public class ZnddThread extends Thread{ | @@ -59,15 +57,20 @@ public class ZnddThread extends Thread{ | ||
| 59 | public void run() { | 57 | public void run() { |
| 60 | try { | 58 | try { |
| 61 | List<znddStatus> znddStatusList = (List<znddStatus>) znddStatusRepository.findAll(); | 59 | List<znddStatus> znddStatusList = (List<znddStatus>) znddStatusRepository.findAll(); |
| 62 | - //FCJG();//发车间隔检查 报价 | 60 | + |
| 63 | //GPSDJG();//大间隔 | 61 | //GPSDJG();//大间隔 |
| 64 | // MZ(); //满载 | 62 | // MZ(); //满载 |
| 65 | //DKL(); //大客流 以接口方式 | 63 | //DKL(); //大客流 以接口方式 |
| 66 | //automaticSch.mz(); | 64 | //automaticSch.mz(); |
| 67 | //automaticSch.dfTz();//大间隔 | 65 | //automaticSch.dfTz();//大间隔 |
| 68 | for (znddStatus zs : znddStatusList) { | 66 | for (znddStatus zs : znddStatusList) { |
| 69 | - | ||
| 70 | if (zs.getOpenStatus().equals("0")) { | 67 | if (zs.getOpenStatus().equals("0")) { |
| 68 | + //预案5个 | ||
| 69 | + if (zs.getType().equals("fcjg")) { | ||
| 70 | + automaticSch.dfTz(0); | ||
| 71 | + logger.info("发车间隔执行完毕"); | ||
| 72 | + } | ||
| 73 | + | ||
| 71 | if (zs.getType().equals("sftz")) { | 74 | if (zs.getType().equals("sftz")) { |
| 72 | automaticSch.sftz();//实发未发 | 75 | automaticSch.sftz();//实发未发 |
| 73 | logger.info("实发执行完毕"); | 76 | logger.info("实发执行完毕"); |
| @@ -85,14 +88,18 @@ public class ZnddThread extends Thread{ | @@ -85,14 +88,18 @@ public class ZnddThread extends Thread{ | ||
| 85 | logger.info("误点执行完毕"); | 88 | logger.info("误点执行完毕"); |
| 86 | } | 89 | } |
| 87 | if (zs.getType().equals("djg")){ | 90 | if (zs.getType().equals("djg")){ |
| 88 | - automaticSch.dfTz(); | ||
| 89 | - logger.info("大间隔执行完毕"); | 91 | + automaticSch.dfTz(1); |
| 92 | + logger.info("行车大间隔执行完毕"); | ||
| 90 | } | 93 | } |
| 91 | 94 | ||
| 92 | if (zs.getType().equals("dkl")){ | 95 | if (zs.getType().equals("dkl")){ |
| 93 | automaticSch.Dkl(); | 96 | automaticSch.Dkl(); |
| 94 | logger.info("大客流执行完毕"); | 97 | logger.info("大客流执行完毕"); |
| 95 | } | 98 | } |
| 99 | + if (zs.getType().equals("mz")){ | ||
| 100 | + automaticSch.mz(); | ||
| 101 | + logger.info("满载执行完毕"); | ||
| 102 | + } | ||
| 96 | 103 | ||
| 97 | } | 104 | } |
| 98 | } | 105 | } |
| @@ -137,33 +144,7 @@ public class ZnddThread extends Thread{ | @@ -137,33 +144,7 @@ public class ZnddThread extends Thread{ | ||
| 137 | } | 144 | } |
| 138 | }*/ | 145 | }*/ |
| 139 | public void ts(Map m) throws ParseException { | 146 | public void ts(Map m) throws ParseException { |
| 140 | - //记录存一下 --超过当前时间的是否推送? | ||
| 141 | - String st = m.get("lineCode")+"_"+m.get("type")+"_"+m.get("rqStr"); | ||
| 142 | - Long sj = sdf.parse(m.get("rqStr").toString() +" "+ m.get("rq")).getTime(); | ||
| 143 | - List<Long> list = new ArrayList(); | ||
| 144 | - //111_DJG_2024-06-24 | ||
| 145 | - if (ZnddThread.ZNDDTYPEMAP.get(st) != null ) { | ||
| 146 | - list = ZnddThread.ZNDDTYPEMAP.get(st); | ||
| 147 | - int i = 0; | ||
| 148 | - | ||
| 149 | - for (Long s : list){ //推送过的同样情况1小时内 | ||
| 150 | - if (Math.abs(s - sj) > (60 * 60 * 1000)){ | ||
| 151 | - i ++ ; | ||
| 152 | - } | ||
| 153 | - } | ||
| 154 | - outEntrance.Znddjk(m);//测试推送 | ||
| 155 | - if (i == list.size()){ | ||
| 156 | - list.add(sj); | ||
| 157 | - ZnddThread.ZNDDTYPEMAP.put(st,list);//存记录 | ||
| 158 | - outEntrance.Znddjk(m);//推送 | ||
| 159 | - } | ||
| 160 | - return; | ||
| 161 | - }else { | ||
| 162 | - list.add(sj); | ||
| 163 | - ZnddThread.ZNDDTYPEMAP.put(st,list);//存记录 | ||
| 164 | - outEntrance.Znddjk(m);//推送 | ||
| 165 | - } | ||
| 166 | - | 147 | + outEntrance.Znddjk(m);//测试推送 |
| 167 | } | 148 | } |
| 168 | /* public void ts(Map m) throws ParseException { | 149 | /* public void ts(Map m) throws ParseException { |
| 169 | //记录存一下 --超过当前时间的是否推送? | 150 | //记录存一下 --超过当前时间的是否推送? |
| @@ -195,8 +176,8 @@ public class ZnddThread extends Thread{ | @@ -195,8 +176,8 @@ public class ZnddThread extends Thread{ | ||
| 195 | 176 | ||
| 196 | */ | 177 | */ |
| 197 | 178 | ||
| 198 | - //发车间隔 | ||
| 199 | - /* public void FCJG(){ | 179 | + /* //发车间隔 |
| 180 | + public void FCJG(){ | ||
| 200 | try { | 181 | try { |
| 201 | //无数据情况下 查看发车间隔配置数据是否正常bsth_c_calc_interval | 182 | //无数据情况下 查看发车间隔配置数据是否正常bsth_c_calc_interval |
| 202 | List<CalcIntervalDetail> fcjgList = userCarCountHandler.calcLast(); | 183 | List<CalcIntervalDetail> fcjgList = userCarCountHandler.calcLast(); |
| @@ -218,8 +199,8 @@ public class ZnddThread extends Thread{ | @@ -218,8 +199,8 @@ public class ZnddThread extends Thread{ | ||
| 218 | }catch (Exception e){ | 199 | }catch (Exception e){ |
| 219 | logger.error("发车间隔检测出现出错-----------",e); | 200 | logger.error("发车间隔检测出现出错-----------",e); |
| 220 | } | 201 | } |
| 221 | - }*/ | ||
| 222 | - | 202 | + } |
| 203 | +*/ | ||
| 223 | 204 | ||
| 224 | //转换 | 205 | //转换 |
| 225 | public Map addStationPeople(ScheduleRealInfo info,String type,Long sst,String sj) throws ParseException{ | 206 | public Map addStationPeople(ScheduleRealInfo info,String type,Long sst,String sj) throws ParseException{ |
src/main/java/com/bsth/service/realcontrol/ScheduleRealInfoService.java
| @@ -210,6 +210,4 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | @@ -210,6 +210,4 @@ public interface ScheduleRealInfoService extends BaseService<ScheduleRealInfo, L | ||
| 210 | 210 | ||
| 211 | List<ScheduleRealInfo> findAllSchDate(String schDate); | 211 | List<ScheduleRealInfo> findAllSchDate(String schDate); |
| 212 | 212 | ||
| 213 | - | ||
| 214 | - ScheduleRealInfo thissch(Integer ids); | ||
| 215 | } | 213 | } |
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
| @@ -7042,12 +7042,6 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -7042,12 +7042,6 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 7042 | } | 7042 | } |
| 7043 | }, 0, 10, TimeUnit.MINUTES); | 7043 | }, 0, 10, TimeUnit.MINUTES); |
| 7044 | } | 7044 | } |
| 7045 | - | ||
| 7046 | - | ||
| 7047 | - public ScheduleRealInfo thissch(Integer ids){ | ||
| 7048 | - return dayOfSchedule.next(dayOfSchedule.get(ids)); | ||
| 7049 | - } | ||
| 7050 | - | ||
| 7051 | } | 7045 | } |
| 7052 | 7046 | ||
| 7053 | class AccountMap implements Comparator<Map<String, Object>> { | 7047 | class AccountMap implements Comparator<Map<String, Object>> { |
src/main/java/com/bsth/service/zndd/LoggerZnddService.java
| @@ -13,4 +13,9 @@ public interface LoggerZnddService extends BaseService<LoggerZndd, Integer> { | @@ -13,4 +13,9 @@ public interface LoggerZnddService extends BaseService<LoggerZndd, Integer> { | ||
| 13 | List<Map<String, Object>> listAll(Map<String, Object> map); | 13 | List<Map<String, Object>> listAll(Map<String, Object> map); |
| 14 | 14 | ||
| 15 | public ScheduleRealInfo schlist(String lineCode,Integer dir); | 15 | public ScheduleRealInfo schlist(String lineCode,Integer dir); |
| 16 | + | ||
| 17 | + public Map<String, Object> znddConfig(Map<String, Object> map); | ||
| 18 | + | ||
| 19 | + | ||
| 20 | + ScheduleRealInfo thissch(Integer ids); | ||
| 16 | } | 21 | } |
src/main/java/com/bsth/service/zndd/impl/LoggerZnddServiceImpl.java
| 1 | package com.bsth.service.zndd.impl; | 1 | package com.bsth.service.zndd.impl; |
| 2 | 2 | ||
| 3 | +import com.bsth.controller.realcontrol.dto.DfsjChange; | ||
| 3 | import com.bsth.data.schedule.DayOfSchedule; | 4 | import com.bsth.data.schedule.DayOfSchedule; |
| 5 | +import com.bsth.data.schedule.ScheduleComparator; | ||
| 4 | import com.bsth.entity.realcontrol.ScheduleRealInfo; | 6 | import com.bsth.entity.realcontrol.ScheduleRealInfo; |
| 5 | -import com.bsth.entity.search.CustomerSpecs; | ||
| 6 | import com.bsth.entity.zndd.LoggerZndd; | 7 | import com.bsth.entity.zndd.LoggerZndd; |
| 8 | +import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; | ||
| 7 | import com.bsth.repository.zndd.LoggerZnddRepository; | 9 | import com.bsth.repository.zndd.LoggerZnddRepository; |
| 8 | import com.bsth.service.impl.BaseServiceImpl; | 10 | import com.bsth.service.impl.BaseServiceImpl; |
| 11 | +import com.bsth.service.realcontrol.ScheduleRealInfoService; | ||
| 9 | import com.bsth.service.zndd.LoggerZnddService; | 12 | import com.bsth.service.zndd.LoggerZnddService; |
| 10 | -import org.apache.poi.ss.formula.functions.T; | 13 | +import org.slf4j.Logger; |
| 14 | +import org.slf4j.LoggerFactory; | ||
| 11 | import org.springframework.beans.factory.annotation.Autowired; | 15 | import org.springframework.beans.factory.annotation.Autowired; |
| 12 | -import org.springframework.data.domain.Pageable; | ||
| 13 | 16 | ||
| 14 | import org.springframework.data.domain.Sort; | 17 | import org.springframework.data.domain.Sort; |
| 15 | import org.springframework.stereotype.Service; | 18 | import org.springframework.stereotype.Service; |
| 19 | +import org.springframework.transaction.annotation.Transactional; | ||
| 16 | 20 | ||
| 21 | +import java.text.SimpleDateFormat; | ||
| 22 | +import java.util.ArrayList; | ||
| 23 | +import java.util.Collections; | ||
| 17 | import java.util.List; | 24 | import java.util.List; |
| 18 | import java.util.Map; | 25 | import java.util.Map; |
| 19 | 26 | ||
| @@ -24,7 +31,16 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | @@ -24,7 +31,16 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | ||
| 24 | LoggerZnddRepository loggerZnddRepository; | 31 | LoggerZnddRepository loggerZnddRepository; |
| 25 | @Autowired | 32 | @Autowired |
| 26 | DayOfSchedule dayOfSchedule; | 33 | DayOfSchedule dayOfSchedule; |
| 27 | - public List<Map<String, Object>> listAll(Map<String, Object> map){ | 34 | + @Autowired |
| 35 | + ScheduleRealInfoService scheduleRealInfoService; | ||
| 36 | + @Autowired | ||
| 37 | + ScheduleRealInfoRepository scheduleRealInfoRepository; | ||
| 38 | + | ||
| 39 | + | ||
| 40 | + Logger logger = LoggerFactory.getLogger(this.getClass()); | ||
| 41 | + private static SimpleDateFormat sdfMonth = new SimpleDateFormat("HH:mm"); | ||
| 42 | + private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); | ||
| 43 | + public List<Map<String, Object>> listAll(Map<String, Object> map){ | ||
| 28 | loggerZnddRepository.findAll((Sort) map); | 44 | loggerZnddRepository.findAll((Sort) map); |
| 29 | 45 | ||
| 30 | return null; | 46 | return null; |
| @@ -43,4 +59,86 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | @@ -43,4 +59,86 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl<LoggerZndd, Integer> | ||
| 43 | } | 59 | } |
| 44 | return null; | 60 | return null; |
| 45 | }; | 61 | }; |
| 62 | + | ||
| 63 | + @Override | ||
| 64 | + @Transactional //发车间隔 误点 | ||
| 65 | + public Map<String, Object> znddConfig(Map<String, Object> map){ | ||
| 66 | + //查出离触发时间最近的一次路单 修改部分值 | ||
| 67 | + //包装好路单添加如临加班次 | ||
| 68 | + | ||
| 69 | + List<DfsjChange> dfsjcs = new ArrayList<>();//返回的数据 | ||
| 70 | + try { | ||
| 71 | + String lineCode = map.get("lineCode") != null ? map.get("lineCode").toString() : null; | ||
| 72 | + String xlDir = map.get("xlDir") != null ? map.get("xlDir").toString() : null; | ||
| 73 | + String rq = map.get("rq") != null ? map.get("rq").toString() : null; | ||
| 74 | + List<ScheduleRealInfo> upoldSchDateList = new ArrayList<>(), //上行 | ||
| 75 | + dnoldSchDateList = new ArrayList<>(); //下行 | ||
| 76 | + | ||
| 77 | + | ||
| 78 | + List<ScheduleRealInfo> listReal = new ArrayList<>(); | ||
| 79 | + Boolean typeReal = false; | ||
| 80 | + //排班依次往后 | ||
| 81 | + List<ScheduleRealInfo> list = dayOfSchedule.findByLineCode(lineCode); | ||
| 82 | + //区分上下行 | ||
| 83 | + for (ScheduleRealInfo t : list){ | ||
| 84 | + if (t.getXlDir().equals("0")){ | ||
| 85 | + upoldSchDateList.add(t); | ||
| 86 | + }else { | ||
| 87 | + dnoldSchDateList.add(t); | ||
| 88 | + } | ||
| 89 | + } | ||
| 90 | + if (xlDir.equals("0")){ | ||
| 91 | + Collections.sort(upoldSchDateList, new ScheduleComparator.FCSJ());//排序 | ||
| 92 | + list = upoldSchDateList; | ||
| 93 | + }else { | ||
| 94 | + Collections.sort(upoldSchDateList, new ScheduleComparator.FCSJ());//排序 | ||
| 95 | + list = upoldSchDateList; | ||
| 96 | + } | ||
| 97 | + | ||
| 98 | + for (ScheduleRealInfo info : list) { | ||
| 99 | + //从相等开始 | ||
| 100 | + if (info.getFcsjActual() != null && !info.getFcsjActual().equals("")) { | ||
| 101 | + if (info.getFcsjActual().equals(rq)) | ||
| 102 | + typeReal = true; | ||
| 103 | + continue; | ||
| 104 | + } | ||
| 105 | + | ||
| 106 | + if (typeReal && (info.getBcType().equals("normal")|| info.getBcType().equals("region"))) | ||
| 107 | + listReal.add(info); | ||
| 108 | + | ||
| 109 | + if (listReal.size() >= 5) //或者不满5条结束 listReal.size()从1开始 | ||
| 110 | + break; | ||
| 111 | + | ||
| 112 | + } | ||
| 113 | + //处理listReal 5条数据或5条一下 | ||
| 114 | + for (int i = 0; i < listReal.size() ;i++){ | ||
| 115 | + DfsjChange cl = new DfsjChange(); | ||
| 116 | + Integer[] mis = {3,2,2,1,1}; //往后5个班次分别延后3 2 2 1 1 | ||
| 117 | + ScheduleRealInfo info = listReal.get(i); | ||
| 118 | + int ms = mis[i]; | ||
| 119 | + //未发车时 才可改变 | ||
| 120 | + if (info.getFcsjActual() == null || info.getFcsjActual().equals("")){ | ||
| 121 | + String dfsj = sdfMonth.format(sdf.parse(info.getScheduleDateStr()+ " " + info.getDfsj()).getTime() + (ms * 60 * 1000)); //延后几分钟 | ||
| 122 | + cl.setSchId(info.getId()); | ||
| 123 | + cl.setOld_dfsj(info.getDfsj()); | ||
| 124 | + cl.setNew_dfsj(dfsj); | ||
| 125 | + dfsjcs.add(cl); | ||
| 126 | + } | ||
| 127 | + } | ||
| 128 | + | ||
| 129 | + return scheduleRealInfoService.multi_dftz(dfsjcs); | ||
| 130 | + }catch (Exception e){ | ||
| 131 | + logger.info("--",e); | ||
| 132 | + } | ||
| 133 | + | ||
| 134 | + | ||
| 135 | + return null; | ||
| 136 | + } | ||
| 137 | + | ||
| 138 | + | ||
| 139 | + public ScheduleRealInfo thissch(Integer ids){ | ||
| 140 | + return dayOfSchedule.next(dayOfSchedule.get(ids)); | ||
| 141 | + } | ||
| 142 | + | ||
| 143 | + | ||
| 46 | } | 144 | } |
src/main/resources/static/real_control_v2/js/zndd/data_zndd.js
| @@ -211,11 +211,14 @@ var gb_dataZndd = (function (){ | @@ -211,11 +211,14 @@ var gb_dataZndd = (function (){ | ||
| 211 | return 'ycsf.html'; | 211 | return 'ycsf.html'; |
| 212 | break; | 212 | break; |
| 213 | case 'WD': | 213 | case 'WD': |
| 214 | - //return 'wd.html'; | 214 | + return 'wd.html'; |
| 215 | break; | 215 | break; |
| 216 | case 'DJG': | 216 | case 'DJG': |
| 217 | return 'djg1.html'; | 217 | return 'djg1.html'; |
| 218 | break; | 218 | break; |
| 219 | + case 'MZ': | ||
| 220 | + return 'mz.html'; | ||
| 221 | + break; | ||
| 219 | case 'DKL': | 222 | case 'DKL': |
| 220 | return 'dkl.html'; | 223 | return 'dkl.html'; |
| 221 | break; | 224 | break; |
| @@ -314,16 +317,16 @@ var gb_dataZndd = (function (){ | @@ -314,16 +317,16 @@ var gb_dataZndd = (function (){ | ||
| 314 | if (date == null) | 317 | if (date == null) |
| 315 | return | 318 | return |
| 316 | if (type == "DJG"){ | 319 | if (type == "DJG"){ |
| 317 | - $.post('/znddLogger/znddadd', date, function(res) { | ||
| 318 | - if (res.code == 200){ | ||
| 319 | - notify_succ('新增临加班次成功(自动)'); | ||
| 320 | - } | ||
| 321 | - if (res.code == 201){ | ||
| 322 | - notify_err('新增临加班次失败(自动),受影响的站点为终点站,不可自动添加'); | ||
| 323 | - } | ||
| 324 | - | ||
| 325 | - gb_schedule_table.refreshAll(); | ||
| 326 | - }); | 320 | + // $.post('/znddLogger/znddadd', date, function(res) { |
| 321 | + // if (res.code == 200){ | ||
| 322 | + // notify_succ('新增临加班次成功(自动)'); | ||
| 323 | + // } | ||
| 324 | + // if (res.code == 201){ | ||
| 325 | + // notify_err('新增临加班次失败(自动),受影响的站点为终点站,不可自动添加'); | ||
| 326 | + // } | ||
| 327 | + // | ||
| 328 | + // gb_schedule_table.refreshAll(); | ||
| 329 | + // }); | ||
| 327 | }else if (type == "YCSF"){ | 330 | }else if (type == "YCSF"){ |
| 328 | gb_common.$post('/realSchedule/revokeRealOutgo_zndd', { | 331 | gb_common.$post('/realSchedule/revokeRealOutgo_zndd', { |
| 329 | id: sch.sch.id, | 332 | id: sch.sch.id, |
src/main/resources/static/real_control_v2/zndd/type/djg1.html
| @@ -15,15 +15,17 @@ | @@ -15,15 +15,17 @@ | ||
| 15 | <div class="uk-grid uk-width-3-5 lj_1" > | 15 | <div class="uk-grid uk-width-3-5 lj_1" > |
| 16 | <div class="uk-width-1-4"> | 16 | <div class="uk-width-1-4"> |
| 17 | <ul data-uk-switcher="{connect:'#tempScheduleContent'}" class="uk-nav uk-nav-side left_tabs_lg"> | 17 | <ul data-uk-switcher="{connect:'#tempScheduleContent'}" class="uk-nav uk-nav-side left_tabs_lg"> |
| 18 | - <li data-handle="toAndFro"><a>1、往返</a></li> | ||
| 19 | - <li data-handle="normal"><a>2、临加班次</a></li> | 18 | + |
| 19 | + <li data-handle="normal"><a>1、临加班次</a></li> | ||
| 20 | + <li data-handle="toAndFro"><a>2、往返</a></li> | ||
| 21 | + | ||
| 20 | <!-- <li data-handle="parkToPark"><a>3、场到场</a></li>--> | 22 | <!-- <li data-handle="parkToPark"><a>3、场到场</a></li>--> |
| 21 | </ul> | 23 | </ul> |
| 22 | </div> | 24 | </div> |
| 23 | <div class="uk-width-3-4"> | 25 | <div class="uk-width-3-4"> |
| 24 | <ul id="tempScheduleContent" class="uk-switcher"> | 26 | <ul id="tempScheduleContent" class="uk-switcher"> |
| 25 | - <li class="toAndFroCont"></li> | ||
| 26 | <li class="normalCont"></li> | 27 | <li class="normalCont"></li> |
| 28 | + <li class="toAndFroCont"></li> | ||
| 27 | <li class="parkToParkCont"></li> | 29 | <li class="parkToParkCont"></li> |
| 28 | </ul> | 30 | </ul> |
| 29 | </div> | 31 | </div> |
| @@ -117,14 +119,16 @@ | @@ -117,14 +119,16 @@ | ||
| 117 | var st_doms = gb_schedule_context_menu.get_add_sch_doms_v2(); | 119 | var st_doms = gb_schedule_context_menu.get_add_sch_doms_v2(); |
| 118 | 120 | ||
| 119 | 121 | ||
| 120 | - $.post('/realSchedule/thissch/'+sch.id, function(res) { | 122 | + $.post('/realSchedule/thissch/'+sch.sch.id, function(res) { |
| 123 | + | ||
| 124 | + //normal | ||
| 125 | + $('.normalCont', modal).html(st_doms.normal_dom) | ||
| 126 | + .trigger('init', {sch: res, submitFun: submit_temp_schedule_form}); | ||
| 121 | //to and fro | 127 | //to and fro |
| 122 | $('.toAndFroCont', modal).html(st_doms.two_way_dom) | 128 | $('.toAndFroCont', modal).html(st_doms.two_way_dom) |
| 123 | .trigger('init', {sch: res, submitFun: submit_temp_schedule_form, stationRoutes: stationRoutes}); | 129 | .trigger('init', {sch: res, submitFun: submit_temp_schedule_form, stationRoutes: stationRoutes}); |
| 124 | 130 | ||
| 125 | - //normal | ||
| 126 | - $('.normalCont', modal).html(st_doms.normal_dom) | ||
| 127 | - .trigger('init', {sch: res, submitFun: submit_temp_schedule_form}); | 131 | + |
| 128 | }); | 132 | }); |
| 129 | 133 | ||
| 130 | }); | 134 | }); |
| @@ -549,7 +553,7 @@ | @@ -549,7 +553,7 @@ | ||
| 549 | <div class="uk-form-controls"> | 553 | <div class="uk-form-controls"> |
| 550 | <select name="destroy" class="form-control" id="destroySelect"> | 554 | <select name="destroy" class="form-control" id="destroySelect"> |
| 551 | <option value="0">-- 临加班次 --</option> | 555 | <option value="0">-- 临加班次 --</option> |
| 552 | - <option value="1">-- 随到随发 --</option> | 556 | + <option value="1">-- 修改班次类型 --</option> |
| 553 | </select> | 557 | </select> |
| 554 | </div> | 558 | </div> |
| 555 | </div> | 559 | </div> |
| @@ -575,9 +579,9 @@ | @@ -575,9 +579,9 @@ | ||
| 575 | </div> | 579 | </div> |
| 576 | <div class="uk-width-1-2"> | 580 | <div class="uk-width-1-2"> |
| 577 | <div class="uk-form-row"> | 581 | <div class="uk-form-row"> |
| 578 | - <label class="uk-form-label">乘客满意度</label> | 582 | + <label class="uk-form-label">创新性</label> |
| 579 | <div class="uk-form-controls"> | 583 | <div class="uk-form-controls"> |
| 580 | - <input value="10%" disabled> | 584 | + <input value="80%" disabled> |
| 581 | </div> | 585 | </div> |
| 582 | </div> | 586 | </div> |
| 583 | </div> | 587 | </div> |
src/main/resources/static/real_control_v2/zndd/type/dkl.html
| @@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
| 2 | <div class="uk-modal-dialog" style="width: 1400px;"> | 2 | <div class="uk-modal-dialog" style="width: 1400px;"> |
| 3 | <a href="" class="uk-modal-close uk-close"></a> | 3 | <a href="" class="uk-modal-close uk-close"></a> |
| 4 | <div class="uk-modal-header"> | 4 | <div class="uk-modal-header"> |
| 5 | - <h2>大客流</h2></div> | 5 | + <h2>新增临加班次</h2></div> |
| 6 | <div class="uk-grid uk-width-2-5" style="float: left"> | 6 | <div class="uk-grid uk-width-2-5" style="float: left"> |
| 7 | <div class="uk-width-5-5"> | 7 | <div class="uk-width-5-5"> |
| 8 | <form class="uk-form uk-form-horizontal"> </form> | 8 | <form class="uk-form uk-form-horizontal"> </form> |
| @@ -29,6 +29,11 @@ | @@ -29,6 +29,11 @@ | ||
| 29 | </div> | 29 | </div> |
| 30 | </div> | 30 | </div> |
| 31 | 31 | ||
| 32 | + <div class="uk-grid uk-width-3-5 lj_2" style="display: none; padding-left: 100px"> | ||
| 33 | + <div class="uk-width-1-1" id ="tempsdsf"></div> | ||
| 34 | + | ||
| 35 | + </div> | ||
| 36 | + | ||
| 32 | </div> | 37 | </div> |
| 33 | 38 | ||
| 34 | <script> | 39 | <script> |
| @@ -41,44 +46,65 @@ | @@ -41,44 +46,65 @@ | ||
| 41 | sch = data.data; | 46 | sch = data.data; |
| 42 | sch.xlBm = sch.lineCode; | 47 | sch.xlBm = sch.lineCode; |
| 43 | 48 | ||
| 44 | - //站到场数据 | ||
| 45 | - st_park_data = gb_data_basic.get_stat_park_data()[sch.xlBm]; | ||
| 46 | - //站点路由 | ||
| 47 | - stationRoutes = gb_common.groupBy(gb_data_basic.stationRoutes(sch.xlBm).sort(function (a, b) { | ||
| 48 | - return a.stationRouteCode - b.stationRouteCode; | ||
| 49 | - }), 'directions'); | ||
| 50 | - let route = stationRoutes[sch.xlDir]; | ||
| 51 | - debugger | ||
| 52 | - sch.startStation = route[0]; | ||
| 53 | - sch.stopStation = route[route.length - 1]; | ||
| 54 | var formHtml = template('djg-form-temp', sch); | 49 | var formHtml = template('djg-form-temp', sch); |
| 55 | $('form', modal).html(formHtml); | 50 | $('form', modal).html(formHtml); |
| 56 | //切换 | 51 | //切换 |
| 52 | + | ||
| 53 | + | ||
| 54 | + | ||
| 55 | + | ||
| 56 | + | ||
| 57 | + //参数改变 | ||
| 58 | + $('form[name=yjtkForm] input', modal).on('blur', function () { | ||
| 59 | + var field = $(this).attr('name'); | ||
| 60 | + var val = $(this).val(); | ||
| 61 | + if (conf[field] != val) { | ||
| 62 | + var data = $('form[name=yjtkForm]', modal).serializeJSON(); | ||
| 63 | + data.lineCode = conf.line.lineCode; | ||
| 64 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 65 | + conf = rs.conf; | ||
| 66 | + notify_succ('调整随到随发参数'); | ||
| 67 | + }); | ||
| 68 | + } | ||
| 69 | + }); | ||
| 70 | + | ||
| 71 | + | ||
| 57 | $("#destroySelect").on('change',function(){ | 72 | $("#destroySelect").on('change',function(){ |
| 58 | let fn = $('#destroySelect').val(); | 73 | let fn = $('#destroySelect').val(); |
| 59 | if (fn == "0"){ | 74 | if (fn == "0"){ |
| 60 | - $('.video_1').css({display: ''}); | ||
| 61 | - $('.video_2').css({display: 'none'}); | ||
| 62 | - | 75 | + $(".lj_1").css({ |
| 76 | + display: '' | ||
| 77 | + }); | ||
| 78 | + $(".lj_2").css({ | ||
| 79 | + display: 'none' | ||
| 80 | + }); | ||
| 63 | }else { | 81 | }else { |
| 64 | - $('.video_1').css({display: 'none'}); | ||
| 65 | - $('.video_2').css({display: ''}); | 82 | + $(".lj_1").css({ |
| 83 | + display: 'none' | ||
| 84 | + }); | ||
| 85 | + $(".lj_2").css({ | ||
| 86 | + display: '' | ||
| 87 | + }); | ||
| 88 | + $.get('/lineConfig/getByLineCode', {lineCode: sch.lineCode}, function (datan) { | ||
| 89 | + var formHtmls = template('buffer_config_form-temp1', datan); | ||
| 90 | + conf = datan; | ||
| 91 | + $('#tempsdsf', modal).html(formHtmls); | ||
| 92 | + $('[name=enableYjtk]', modal).on('change', function () { | ||
| 93 | + if($(this).val() == '1'){ | ||
| 94 | + enableYjtkForm(); | ||
| 95 | + } | ||
| 96 | + else | ||
| 97 | + disabledYjtkForm(); | ||
| 98 | + }); | ||
| 99 | + }); | ||
| 66 | } | 100 | } |
| 67 | }) | 101 | }) |
| 68 | - $("#zhanOrche").on('change',function(){ | ||
| 69 | - let fn = $('#zhanOrche').val(); | ||
| 70 | - if (fn == "0"){ | ||
| 71 | - $('.car_s').css({display: 'none'}); | ||
| 72 | - $('.zt_s').css({display: ''}); | ||
| 73 | - | ||
| 74 | - }else { | ||
| 75 | - $('.car_s').css({display: ''}); | ||
| 76 | - $('.zt_s').css({display: 'none'}); | ||
| 77 | - } | ||
| 78 | - }) | ||
| 79 | - | ||
| 80 | - | ||
| 81 | - | 102 | + //站到场数据 |
| 103 | + st_park_data = gb_data_basic.get_stat_park_data()[sch.xlBm]; | ||
| 104 | + //站点路由 | ||
| 105 | + stationRoutes = gb_common.groupBy(gb_data_basic.stationRoutes(sch.xlBm).sort(function (a, b) { | ||
| 106 | + return a.stationRouteCode - b.stationRouteCode; | ||
| 107 | + }), 'directions'); | ||
| 82 | //停车场 | 108 | //停车场 |
| 83 | parks = gb_data_basic.simpleParksArray(); | 109 | parks = gb_data_basic.simpleParksArray(); |
| 84 | //线路标准 | 110 | //线路标准 |
| @@ -90,18 +116,16 @@ | @@ -90,18 +116,16 @@ | ||
| 90 | 116 | ||
| 91 | var st_doms = gb_schedule_context_menu.get_add_sch_doms_v2(); | 117 | var st_doms = gb_schedule_context_menu.get_add_sch_doms_v2(); |
| 92 | 118 | ||
| 93 | - $.post('/realSchedule/thissch/'+sch.id, function(res) { | 119 | + |
| 120 | + $.post('/realSchedule/thissch/'+sch.sch.id, function(res) { | ||
| 94 | //to and fro | 121 | //to and fro |
| 95 | $('.toAndFroCont', modal).html(st_doms.two_way_dom) | 122 | $('.toAndFroCont', modal).html(st_doms.two_way_dom) |
| 96 | .trigger('init', {sch: res, submitFun: submit_temp_schedule_form, stationRoutes: stationRoutes}); | 123 | .trigger('init', {sch: res, submitFun: submit_temp_schedule_form, stationRoutes: stationRoutes}); |
| 97 | 124 | ||
| 98 | - | ||
| 99 | //normal | 125 | //normal |
| 100 | $('.normalCont', modal).html(st_doms.normal_dom) | 126 | $('.normalCont', modal).html(st_doms.normal_dom) |
| 101 | .trigger('init', {sch: res, submitFun: submit_temp_schedule_form}); | 127 | .trigger('init', {sch: res, submitFun: submit_temp_schedule_form}); |
| 102 | }); | 128 | }); |
| 103 | - | ||
| 104 | - | ||
| 105 | 129 | ||
| 106 | }); | 130 | }); |
| 107 | 131 | ||
| @@ -391,6 +415,37 @@ | @@ -391,6 +415,37 @@ | ||
| 391 | }, err); | 415 | }, err); |
| 392 | } | 416 | } |
| 393 | 417 | ||
| 418 | + function enableYjtkForm() { | ||
| 419 | + var f = $('form[name=yjtkForm]', modal); | ||
| 420 | + $('input', f).removeAttr('disabled'); | ||
| 421 | + //开始时间 | ||
| 422 | + if($('[name=yjtkStart]',f).val() == '') | ||
| 423 | + $('[name=yjtkStart]',f).val('00:00'); | ||
| 424 | + if($('[name=yjtkEnd]',f).val() == '') | ||
| 425 | + $('[name=yjtkEnd]',f).val('23:59'); | ||
| 426 | + var data = f.serializeJSON(); | ||
| 427 | + data.lineCode = conf.line.lineCode; | ||
| 428 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 429 | + conf = rs.conf; | ||
| 430 | + notify_succ('启用随到随发'); | ||
| 431 | + }); | ||
| 432 | + } | ||
| 433 | + function disabledYjtkForm() { | ||
| 434 | + var f = $('form[name=yjtkForm]', modal); | ||
| 435 | + $('input', f).attr('disabled', 'disabled'); | ||
| 436 | + //恢复val | ||
| 437 | + $('[name=yjtkStart]',f).val(conf.yjtkStart); | ||
| 438 | + $('[name=yjtkEnd]',f).val(conf.yjtkEnd); | ||
| 439 | + $('[name=upStopMinute]',f).val(conf.upStopMinute); | ||
| 440 | + $('[name=downStopMinute]',f).val(conf.downStopMinute); | ||
| 441 | + | ||
| 442 | + var data = {enableYjtk: 0, lineCode: conf.line.lineCode}; | ||
| 443 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 444 | + conf = rs.conf; | ||
| 445 | + notify_succ('禁用随到随发'); | ||
| 446 | + }); | ||
| 447 | + } | ||
| 448 | + | ||
| 394 | })(); | 449 | })(); |
| 395 | </script> | 450 | </script> |
| 396 | </div> | 451 | </div> |
| @@ -401,121 +456,177 @@ | @@ -401,121 +456,177 @@ | ||
| 401 | <div class="uk-grid"> | 456 | <div class="uk-grid"> |
| 402 | <div class="uk-width-4-2"> | 457 | <div class="uk-width-4-2"> |
| 403 | <div class="uk-form-row"> | 458 | <div class="uk-form-row"> |
| 404 | - <h3>大客流信息</h3> | 459 | + <h3>间隔情况</h3> |
| 405 | </div> | 460 | </div> |
| 406 | </div> | 461 | </div> |
| 407 | </div> | 462 | </div> |
| 408 | <div class="uk-grid"> | 463 | <div class="uk-grid"> |
| 409 | <div class="uk-width-4-2"> | 464 | <div class="uk-width-4-2"> |
| 410 | <div class="uk-form-row"> | 465 | <div class="uk-form-row"> |
| 411 | - <label class="uk-form-labels" >{{stopStation.stationName}}站点 出现大客流</label> | 466 | + <label class="uk-form-labels" >{{lineName}} -> 起点站开往终点站 出现大间隔</label> |
| 412 | </div> | 467 | </div> |
| 413 | </div> | 468 | </div> |
| 414 | - | ||
| 415 | </div> | 469 | </div> |
| 416 | - | ||
| 417 | - <div class="uk-grid"> | ||
| 418 | - <div class="uk-width-1-2"> | ||
| 419 | - <div class="uk-form-row"> | ||
| 420 | - <label class="uk-form-label">站点名称</label> | ||
| 421 | - <div class="uk-form-controls"> | ||
| 422 | - <input type="time" value="XXXX" name="fcsj" disabled> | 470 | + <div> |
| 471 | + <div class="uk-grid"> | ||
| 472 | + <div class="uk-width-1-2"> | ||
| 473 | + <div class="uk-form-row"> | ||
| 474 | + <label class="uk-form-label">当前车车号</label> | ||
| 475 | + <div class="uk-form-controls"> | ||
| 476 | + <input value="{{lg.nbbm}}" disabled> | ||
| 477 | + </div> | ||
| 423 | </div> | 478 | </div> |
| 424 | </div> | 479 | </div> |
| 425 | - </div> | ||
| 426 | - <div class="uk-width-1-2"> | ||
| 427 | - <div class="uk-form-row"> | ||
| 428 | - <label class="uk-form-label">站点人数</label> | ||
| 429 | - <div class="uk-form-controls"> | ||
| 430 | - <input value="20" disabled> | 480 | + <div class="uk-width-1-2"> |
| 481 | + <div class="uk-form-row"> | ||
| 482 | + <label class="uk-form-label">前车车号</label> | ||
| 483 | + <div class="uk-form-controls"> | ||
| 484 | + <input value="{{lg.beforeNbbm}}" disabled> | ||
| 485 | + </div> | ||
| 431 | </div> | 486 | </div> |
| 432 | </div> | 487 | </div> |
| 433 | </div> | 488 | </div> |
| 434 | - </div> | ||
| 435 | - | ||
| 436 | - <div class="uk-grid"> | ||
| 437 | - <div class="uk-width-2-2"> | ||
| 438 | - <div class="uk-form-row"> | ||
| 439 | - <label class="uk-form-label">选择方案</label> | ||
| 440 | - <div class="uk-form-controls"> | ||
| 441 | - <select name="destroy" class="form-control" id="destSelect"> | ||
| 442 | - <option value="0">-- 方案一 --</option> | ||
| 443 | - </select> | 489 | + <div class="uk-grid"> |
| 490 | + <div class="uk-width-1-2"> | ||
| 491 | + <div class="uk-form-row"> | ||
| 492 | + <label class="uk-form-label">当前车站点</label> | ||
| 493 | + <div class="uk-form-controls"> | ||
| 494 | + <input value="{{lg.stationName}}" disabled> | ||
| 495 | + </div> | ||
| 444 | </div> | 496 | </div> |
| 445 | </div> | 497 | </div> |
| 446 | - </div> | ||
| 447 | - </div> | ||
| 448 | - | ||
| 449 | - | ||
| 450 | - <div class="uk-grid"> | ||
| 451 | - <div class="uk-width-2-2"> | ||
| 452 | - <div class="uk-form-row"> | ||
| 453 | - <label class="uk-form-label"></label> | ||
| 454 | - <div class="uk-form-controls"> | ||
| 455 | - <select name="destroy" class="form-control" id="zhanOrche"> | ||
| 456 | - <option value="0">-- 站台 --</option> | ||
| 457 | - <option value="1">-- 车辆 --</option> | ||
| 458 | - </select> | 498 | + <div class="uk-width-1-2"> |
| 499 | + <div class="uk-form-row"> | ||
| 500 | + <label class="uk-form-label">前车站点</label> | ||
| 501 | + <div class="uk-form-controls"> | ||
| 502 | + <input value="{{lg.beforeStationName}}" disabled> | ||
| 503 | + </div> | ||
| 459 | </div> | 504 | </div> |
| 460 | </div> | 505 | </div> |
| 461 | </div> | 506 | </div> |
| 462 | - </div> | ||
| 463 | - <div class="uk-grid"> | ||
| 464 | - <div class="uk-width-1-2"> | ||
| 465 | - <div class="uk-form-row"> | ||
| 466 | - <label class="uk-form-label">车内人数</label> | ||
| 467 | - <div class="uk-form-controls"> | ||
| 468 | - <input value="23" disabled> | 507 | + <div class="uk-grid"> |
| 508 | + <div class="uk-width-1-2"> | ||
| 509 | + <div class="uk-form-row"> | ||
| 510 | + <label class="uk-form-label">当前车发车时间</label> | ||
| 511 | + <div class="uk-form-controls"> | ||
| 512 | + <input value="{{lg.bcfcsj}}" disabled> | ||
| 513 | + </div> | ||
| 514 | + </div> | ||
| 515 | + </div> | ||
| 516 | + <div class="uk-width-1-2"> | ||
| 517 | + <div class="uk-form-row"> | ||
| 518 | + <label class="uk-form-label">前车发车时间</label> | ||
| 519 | + <div class="uk-form-controls"> | ||
| 520 | + <input value="{{lg.beforeBcfcsj}}" disabled> | ||
| 521 | + </div> | ||
| 469 | </div> | 522 | </div> |
| 470 | </div> | 523 | </div> |
| 471 | </div> | 524 | </div> |
| 472 | - <div class="uk-width-1-2"> | ||
| 473 | - <div class="uk-form-row"> | ||
| 474 | - <label class="uk-form-label">摄像</label> | ||
| 475 | - <div class="uk-form-controls"> | ||
| 476 | - <select name="destroy" class="form-control" id="destroySelect"> | ||
| 477 | - <option value="0">-- 前车厢 --</option> | ||
| 478 | - <option value="1">-- 后车厢 --</option> | ||
| 479 | - </select> | 525 | + <div class="uk-grid"> |
| 526 | + <div class="uk-width-1-2"> | ||
| 527 | + <div class="uk-form-row"> | ||
| 528 | + <label class="uk-form-label">当前间隔分钟数</label> | ||
| 529 | + <div class="uk-form-controls"> | ||
| 530 | + <input value="{{lg.intervalMinute}}" disabled> | ||
| 531 | + </div> | ||
| 532 | + </div> | ||
| 533 | + </div> | ||
| 534 | + <div class="uk-width-1-2"> | ||
| 535 | + <div class="uk-form-row"> | ||
| 536 | + <label class="uk-form-label">大间隔分钟数阀值</label> | ||
| 537 | + <div class="uk-form-controls"> | ||
| 538 | + <input value="{{lg.largeGapConfigMinute}}" disabled> | ||
| 539 | + </div> | ||
| 480 | </div> | 540 | </div> |
| 481 | </div> | 541 | </div> |
| 482 | </div> | 542 | </div> |
| 483 | - </div> | ||
| 484 | 543 | ||
| 485 | - <div class="uk-grid zt_s"> | ||
| 486 | - <div class="uk-width-4-2"> | ||
| 487 | - <div class="uk-form-row img_1"> | ||
| 488 | - <img style="width: 100%" src="/profile/avat/2024/04/08/666.png" controls /> | ||
| 489 | 544 | ||
| 545 | + <div class="uk-grid"> | ||
| 546 | + <div class="uk-width-2-2"> | ||
| 547 | + <div class="uk-form-row"> | ||
| 548 | + <label class="uk-form-label">选择方案</label> | ||
| 549 | + <div class="uk-form-controls"> | ||
| 550 | + <select name="destroy" class="form-control" id="destroySelect"> | ||
| 551 | + <option value="0">-- 临加班次 --</option> | ||
| 552 | + <!-- <option value="1">-- 随到随发 --</option>--> | ||
| 553 | + </select> | ||
| 554 | + </div> | ||
| 555 | + </div> | ||
| 490 | </div> | 556 | </div> |
| 491 | </div> | 557 | </div> |
| 492 | - </div> | ||
| 493 | - | ||
| 494 | 558 | ||
| 495 | - <div class="uk-grid car_s" style="display:none"> | ||
| 496 | - | ||
| 497 | - <div class="uk-width-1-1"> | ||
| 498 | - <div class="uk-form-row"> | ||
| 499 | - <label class="uk-form-label">车内视频:</label> | 559 | + <div class="uk-grid"> |
| 560 | + <div class="uk-width-4-2"> | ||
| 561 | + <div class="uk-form-row"> | ||
| 562 | + <h3>方案优势</h3> | ||
| 563 | + </div> | ||
| 500 | </div> | 564 | </div> |
| 501 | </div> | 565 | </div> |
| 502 | - </div> | ||
| 503 | - <div class="uk-grid car_s" style="display:none"> | ||
| 504 | - <div class="uk-width-4-2"> | ||
| 505 | - <div class="uk-form-row video_1"> | ||
| 506 | - <video id="myVideo" style="width: 100%" src="/real_control_v2/zndd/video/a.mp4" controls></video> | 566 | + |
| 567 | + <div class="uk-grid"> | ||
| 568 | + <div class="uk-width-1-2"> | ||
| 569 | + <div class="uk-form-row"> | ||
| 570 | + <label class="uk-form-label">间隔检测效率</label> | ||
| 571 | + <div class="uk-form-controls"> | ||
| 572 | + <input value="50%" disabled> | ||
| 573 | + </div> | ||
| 574 | + </div> | ||
| 507 | </div> | 575 | </div> |
| 508 | - <div class="uk-form-row video_2" style="display: none"> | ||
| 509 | - <video id="myVideos" style="width: 100%" src="/real_control_v2/zndd/video/b.mp4" controls></video> | 576 | + <div class="uk-width-1-2"> |
| 577 | + <div class="uk-form-row"> | ||
| 578 | + <label class="uk-form-label">创新性</label> | ||
| 579 | + <div class="uk-form-controls"> | ||
| 580 | + <input value="80%" disabled> | ||
| 581 | + </div> | ||
| 582 | + </div> | ||
| 510 | </div> | 583 | </div> |
| 511 | </div> | 584 | </div> |
| 512 | </div> | 585 | </div> |
| 586 | +</script> | ||
| 513 | 587 | ||
| 514 | 588 | ||
| 515 | - | 589 | +<script id="buffer_config_form-temp1" type="text/html"> |
| 590 | + <div id="emergency_stop_panel"> | ||
| 591 | + <h3 class="btn_title_lines1"> | ||
| 592 | + <a class="uk-link-reset" >调整随到随发 </a> | ||
| 593 | + </h3> | ||
| 594 | + <div> | ||
| 595 | + <form class="uk-form" name="yjtkForm"> | ||
| 596 | + <table> | ||
| 597 | + <tr> | ||
| 598 | + <td colspan="2"> | ||
| 599 | + 是否启用 | ||
| 600 | + <select class="z-depth-input" name="enableYjtk"> | ||
| 601 | + <option value="0" >禁用</option> | ||
| 602 | + <option value="1" {{if enableYjtk}}selected{{/if}}>启用</option> | ||
| 603 | + </select> | ||
| 604 | + </td> | ||
| 605 | + </tr> | ||
| 606 | + <tr> | ||
| 607 | + <td colspan="2"> | ||
| 608 | + 时间 | ||
| 609 | + <input type="time" value="{{yjtkStart}}" name="yjtkStart" {{if !enableYjtk}}disabled{{/if}}>至 | ||
| 610 | + <input type="time" value="{{yjtkEnd}}" name="yjtkEnd" {{if !enableYjtk}}disabled{{/if}}> | ||
| 611 | + </td> | ||
| 612 | + </tr> | ||
| 613 | + <tr> | ||
| 614 | + <td> | ||
| 615 | + 上行停靠时间 | ||
| 616 | + <input type="number" value="{{upStopMinute}}" name="upStopMinute" {{if !enableYjtk}}disabled{{/if}}>分钟 | ||
| 617 | + </td> | ||
| 618 | + </tr> | ||
| 619 | + <tr> | ||
| 620 | + <td> | ||
| 621 | + 下行停靠时间 | ||
| 622 | + <input type="number" value="{{downStopMinute}}" name="downStopMinute" {{if !enableYjtk}}disabled{{/if}}>分钟 | ||
| 623 | + </td> | ||
| 624 | + </tr> | ||
| 625 | + </table> | ||
| 626 | + </form> | ||
| 627 | + </div> | ||
| 628 | + </div> | ||
| 516 | </script> | 629 | </script> |
| 517 | -<style> | ||
| 518 | - .fanganys input{ | ||
| 519 | - text-align: center; | ||
| 520 | - } | ||
| 521 | -</style> | 630 | +<script> |
| 631 | + | ||
| 632 | +</script> | ||
| 522 | \ No newline at end of file | 633 | \ No newline at end of file |
src/main/resources/static/real_control_v2/zndd/type/fcjg.html
0 → 100644
| 1 | +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-addsch-modal"> | ||
| 2 | + <div class="uk-modal-dialog" style="width: 920px;"> | ||
| 3 | + <a href="" class="uk-modal-close uk-close"></a> | ||
| 4 | + <div class="uk-modal-header"> | ||
| 5 | + <h2>新增临加班次</h2></div> | ||
| 6 | + <div class="uk-grid uk-width-3-5" style="float: left"> | ||
| 7 | + <div class="uk-width-5-5"> | ||
| 8 | + <form class="uk-form uk-form-horizontal"> </form> | ||
| 9 | + <div> | ||
| 10 | + | ||
| 11 | + </div> | ||
| 12 | + | ||
| 13 | + </div> | ||
| 14 | + </div> | ||
| 15 | + | ||
| 16 | + <div class="uk-grid uk-width-2-5 lj_2" style="padding-left: 100px"> | ||
| 17 | + <div class="uk-width-1-1" id ="tempsdsf"></div> | ||
| 18 | + | ||
| 19 | + </div> | ||
| 20 | + | ||
| 21 | + | ||
| 22 | + <div class="uk-grid uk-width-2-5 lj_1" style="padding-left: 100px"> | ||
| 23 | + <div class="uk-width-1-1" id ="tempcjs"></div> | ||
| 24 | + | ||
| 25 | + </div> | ||
| 26 | + | ||
| 27 | + </div> | ||
| 28 | + | ||
| 29 | + <script> | ||
| 30 | + (function () { | ||
| 31 | + var modal = '#schedule-addsch-modal', | ||
| 32 | + sch, stationRoutes, parks, information, carsArray, st_park_data,conf; | ||
| 33 | + debugger | ||
| 34 | + var f = $('.uk-form-horizontal', modal); | ||
| 35 | + | ||
| 36 | + $(modal).on('init', function (e, data) { | ||
| 37 | + e.stopPropagation(); | ||
| 38 | + sch = data.data; | ||
| 39 | + sch.xlBm = sch.lineCode; | ||
| 40 | + | ||
| 41 | + var formHtml = template('djg-form-temp', sch); | ||
| 42 | + $('form', modal).html(formHtml); | ||
| 43 | + //切换 | ||
| 44 | + | ||
| 45 | + | ||
| 46 | + | ||
| 47 | + $.get('/lineConfig/getByLineCode', {lineCode: sch.lineCode}, function (datan) { | ||
| 48 | + var formHtmls = template('buffer_config_form-temp1', datan); | ||
| 49 | + conf = datan; | ||
| 50 | + $('#tempsdsf', modal).html(formHtmls); | ||
| 51 | + $('[name=enableYjtk]', modal).on('change', function () { | ||
| 52 | + if($(this).val() == '1'){ | ||
| 53 | + enableYjtkForm(); | ||
| 54 | + } | ||
| 55 | + else | ||
| 56 | + disabledYjtkForm(); | ||
| 57 | + }); | ||
| 58 | + }); | ||
| 59 | + | ||
| 60 | + //参数改变 | ||
| 61 | + $('form[name=yjtkForm] input', modal).on('blur', function () { | ||
| 62 | + var field = $(this).attr('name'); | ||
| 63 | + var val = $(this).val(); | ||
| 64 | + if (conf[field] != val) { | ||
| 65 | + var data = $('form[name=yjtkForm]', modal).serializeJSON(); | ||
| 66 | + data.lineCode = conf.line.lineCode; | ||
| 67 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 68 | + conf = rs.conf; | ||
| 69 | + notify_succ('调整随到随发参数'); | ||
| 70 | + }); | ||
| 71 | + } | ||
| 72 | + }); | ||
| 73 | + $("#destroySelect").on('change',function(){ | ||
| 74 | + let fn = $('#destroySelect').val(); | ||
| 75 | + if (fn == "1"){ | ||
| 76 | + $(".lj_2").css({ | ||
| 77 | + display: 'none' | ||
| 78 | + }); | ||
| 79 | + $(".lj_1").css({ | ||
| 80 | + display: '' | ||
| 81 | + }); | ||
| 82 | + /* var formHtmls = template('zntj_config_form-temp1'); | ||
| 83 | + $('#tempcjs', modal).html(formHtmls);*/ | ||
| 84 | + | ||
| 85 | + | ||
| 86 | + | ||
| 87 | + }else { | ||
| 88 | + $(".lj_2").css({ | ||
| 89 | + display: '' | ||
| 90 | + }); | ||
| 91 | + $(".lj_1").css({ | ||
| 92 | + display: 'none' | ||
| 93 | + }); | ||
| 94 | + $.get('/lineConfig/getByLineCode', {lineCode: sch.lineCode}, function (datan) { | ||
| 95 | + var formHtmls = template('buffer_config_form-temp1', datan); | ||
| 96 | + conf = datan; | ||
| 97 | + $('#tempsdsf', modal).html(formHtmls); | ||
| 98 | + $('[name=enableYjtk]', modal).on('change', function () { | ||
| 99 | + if($(this).val() == '1'){ | ||
| 100 | + enableYjtkForm(); | ||
| 101 | + } | ||
| 102 | + else | ||
| 103 | + disabledYjtkForm(); | ||
| 104 | + }); | ||
| 105 | + }); | ||
| 106 | + } | ||
| 107 | + }) | ||
| 108 | + }); | ||
| 109 | + | ||
| 110 | + f.formValidation(gb_form_validation_opts); | ||
| 111 | + f.on('success.form.fv', function(e) { | ||
| 112 | + debugger | ||
| 113 | + e.preventDefault(); | ||
| 114 | + var data = $(this).serializeJSON(); | ||
| 115 | + var date ={ | ||
| 116 | + lineCode : sch.sch.xlBm, | ||
| 117 | + xlDir :sch.sch.xlDir, | ||
| 118 | + rq : sch.lg.bcfcsj, | ||
| 119 | + bcnum:data.bcnum | ||
| 120 | + } | ||
| 121 | + | ||
| 122 | + //添加记录 | ||
| 123 | + $.post('/logZndd/znddConfig', date, function(res) { | ||
| 124 | + //只有一个 直接删除掉 | ||
| 125 | + if(res.status != null){ | ||
| 126 | + notify_succ('班次设定成功!(自动)'); | ||
| 127 | + }else { | ||
| 128 | + notify_err('班次设定失败!(自动)'); | ||
| 129 | + } | ||
| 130 | + $('.multi_plat_msg_pop_zndd .multi_plat_config').remove(); | ||
| 131 | + if(res.ts && res.ts.length > 0){ | ||
| 132 | + gb_schedule_table.updateSchedule(res.ts); | ||
| 133 | + var modal = '#schedule-multi-dftz-modal'; | ||
| 134 | + UIkit.modal(modal).hide(); | ||
| 135 | + notify_succ('待发调整成功'); | ||
| 136 | + } | ||
| 137 | + }); | ||
| 138 | + | ||
| 139 | + }); | ||
| 140 | + | ||
| 141 | + function enableYjtkForm() { | ||
| 142 | + var f = $('form[name=yjtkForm]', modal); | ||
| 143 | + $('input', f).removeAttr('disabled'); | ||
| 144 | + //开始时间 | ||
| 145 | + if($('[name=yjtkStart]',f).val() == '') | ||
| 146 | + $('[name=yjtkStart]',f).val('00:00'); | ||
| 147 | + if($('[name=yjtkEnd]',f).val() == '') | ||
| 148 | + $('[name=yjtkEnd]',f).val('23:59'); | ||
| 149 | + var data = f.serializeJSON(); | ||
| 150 | + data.lineCode = conf.line.lineCode; | ||
| 151 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 152 | + conf = rs.conf; | ||
| 153 | + notify_succ('启用随到随发'); | ||
| 154 | + }); | ||
| 155 | + } | ||
| 156 | + function disabledYjtkForm() { | ||
| 157 | + var f = $('form[name=yjtkForm]', modal); | ||
| 158 | + $('input', f).attr('disabled', 'disabled'); | ||
| 159 | + //恢复val | ||
| 160 | + $('[name=yjtkStart]',f).val(conf.yjtkStart); | ||
| 161 | + $('[name=yjtkEnd]',f).val(conf.yjtkEnd); | ||
| 162 | + $('[name=upStopMinute]',f).val(conf.upStopMinute); | ||
| 163 | + $('[name=downStopMinute]',f).val(conf.downStopMinute); | ||
| 164 | + | ||
| 165 | + var data = {enableYjtk: 0, lineCode: conf.line.lineCode}; | ||
| 166 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 167 | + conf = rs.conf; | ||
| 168 | + notify_succ('禁用随到随发'); | ||
| 169 | + }); | ||
| 170 | + } | ||
| 171 | + | ||
| 172 | + })(); | ||
| 173 | + </script> | ||
| 174 | +</div> | ||
| 175 | + | ||
| 176 | +<script id="djg-form-temp" type="text/html"> | ||
| 177 | + <input type="hidden" name="id" value=""/> | ||
| 178 | + | ||
| 179 | + <div class="uk-grid"> | ||
| 180 | + <div class="uk-width-4-2"> | ||
| 181 | + <div class="uk-form-row"> | ||
| 182 | + <h3>间隔情况</h3> | ||
| 183 | + </div> | ||
| 184 | + </div> | ||
| 185 | + </div> | ||
| 186 | + <div class="uk-grid"> | ||
| 187 | + <div class="uk-width-4-2"> | ||
| 188 | + <div class="uk-form-row"> | ||
| 189 | + <label class="uk-form-labels" >{{lineName}} -> 起点站开往终点站 出现发车大间隔</label> | ||
| 190 | + </div> | ||
| 191 | + </div> | ||
| 192 | + </div> | ||
| 193 | + <div> | ||
| 194 | + <div class="uk-grid"> | ||
| 195 | + <div class="uk-width-1-2"> | ||
| 196 | + <div class="uk-form-row"> | ||
| 197 | + <label class="uk-form-label">当前车车号</label> | ||
| 198 | + <div class="uk-form-controls"> | ||
| 199 | + <input value="{{lg.nbbm}}" disabled> | ||
| 200 | + </div> | ||
| 201 | + </div> | ||
| 202 | + </div> | ||
| 203 | + <div class="uk-width-1-2"> | ||
| 204 | + <div class="uk-form-row"> | ||
| 205 | + <label class="uk-form-label">前车车号</label> | ||
| 206 | + <div class="uk-form-controls"> | ||
| 207 | + <input value="{{lg.beforeNbbm}}" disabled> | ||
| 208 | + </div> | ||
| 209 | + </div> | ||
| 210 | + </div> | ||
| 211 | + </div> | ||
| 212 | + <div class="uk-grid"> | ||
| 213 | + <div class="uk-width-1-2"> | ||
| 214 | + <div class="uk-form-row"> | ||
| 215 | + <label class="uk-form-label">当前车站点</label> | ||
| 216 | + <div class="uk-form-controls"> | ||
| 217 | + <input value="{{lg.stationName}}" disabled> | ||
| 218 | + </div> | ||
| 219 | + </div> | ||
| 220 | + </div> | ||
| 221 | + <div class="uk-width-1-2"> | ||
| 222 | + <div class="uk-form-row"> | ||
| 223 | + <label class="uk-form-label">前车站点</label> | ||
| 224 | + <div class="uk-form-controls"> | ||
| 225 | + <input value="{{lg.beforeStationName}}" disabled> | ||
| 226 | + </div> | ||
| 227 | + </div> | ||
| 228 | + </div> | ||
| 229 | + </div> | ||
| 230 | + <div class="uk-grid"> | ||
| 231 | + <div class="uk-width-1-2"> | ||
| 232 | + <div class="uk-form-row"> | ||
| 233 | + <label class="uk-form-label">当前车发车时间</label> | ||
| 234 | + <div class="uk-form-controls"> | ||
| 235 | + <input value="{{lg.bcfcsj}}" disabled> | ||
| 236 | + </div> | ||
| 237 | + </div> | ||
| 238 | + </div> | ||
| 239 | + <div class="uk-width-1-2"> | ||
| 240 | + <div class="uk-form-row"> | ||
| 241 | + <label class="uk-form-label">前车发车时间</label> | ||
| 242 | + <div class="uk-form-controls"> | ||
| 243 | + <input value="{{lg.beforeBcfcsj}}" disabled> | ||
| 244 | + </div> | ||
| 245 | + </div> | ||
| 246 | + </div> | ||
| 247 | + </div> | ||
| 248 | + <div class="uk-grid"> | ||
| 249 | + <div class="uk-width-1-2"> | ||
| 250 | + <div class="uk-form-row"> | ||
| 251 | + <label class="uk-form-label">当前间隔分钟数</label> | ||
| 252 | + <div class="uk-form-controls"> | ||
| 253 | + <input value="{{lg.intervalMinute}}" disabled> | ||
| 254 | + </div> | ||
| 255 | + </div> | ||
| 256 | + </div> | ||
| 257 | + <div class="uk-width-1-2"> | ||
| 258 | + <div class="uk-form-row"> | ||
| 259 | + <label class="uk-form-label">大间隔分钟数阀值</label> | ||
| 260 | + <div class="uk-form-controls"> | ||
| 261 | + <input value="{{lg.largeGapConfigMinute}}" disabled> | ||
| 262 | + </div> | ||
| 263 | + </div> | ||
| 264 | + </div> | ||
| 265 | + </div> | ||
| 266 | + | ||
| 267 | + <div class="uk-grid lj_1" style="display: none"> | ||
| 268 | + <div class="uk-width-1-1"> | ||
| 269 | + | ||
| 270 | + <div class="uk-form-row"> | ||
| 271 | + <label class="uk-form-label">延后班次数量</label> | ||
| 272 | + <div class="uk-form-controls"> | ||
| 273 | + <input type="number" value="5" name="bcnum" id="bcnum"> | ||
| 274 | + </div> | ||
| 275 | + </div> | ||
| 276 | + </div> | ||
| 277 | + </div> | ||
| 278 | + | ||
| 279 | + | ||
| 280 | + <div class="uk-grid"> | ||
| 281 | + <div class="uk-width-2-2"> | ||
| 282 | + <div class="uk-form-row"> | ||
| 283 | + <label class="uk-form-label">选择方案</label> | ||
| 284 | + <div class="uk-form-controls"> | ||
| 285 | + <select name="destroy" class="form-control" id="destroySelect"> | ||
| 286 | +<!-- <option value="0">-- 临加班次 --</option>--> | ||
| 287 | + <option value="0">-- 随到随发 --</option> | ||
| 288 | + <option value="1">-- 智能延后发车时间 --</option> | ||
| 289 | + </select> | ||
| 290 | + </div> | ||
| 291 | + </div> | ||
| 292 | + </div> | ||
| 293 | + </div> | ||
| 294 | + | ||
| 295 | + <div class="uk-grid"> | ||
| 296 | + <div class="uk-width-4-2"> | ||
| 297 | + <div class="uk-form-row"> | ||
| 298 | + <h3>方案优势</h3> | ||
| 299 | + </div> | ||
| 300 | + </div> | ||
| 301 | + </div> | ||
| 302 | + | ||
| 303 | + <div class="uk-grid"> | ||
| 304 | + <div class="uk-width-1-2"> | ||
| 305 | + <div class="uk-form-row"> | ||
| 306 | + <label class="uk-form-label">间隔检测效率</label> | ||
| 307 | + <div class="uk-form-controls"> | ||
| 308 | + <input value="50%" disabled> | ||
| 309 | + </div> | ||
| 310 | + </div> | ||
| 311 | + </div> | ||
| 312 | + <div class="uk-width-1-2"> | ||
| 313 | + <div class="uk-form-row"> | ||
| 314 | + <label class="uk-form-label">创新性</label> | ||
| 315 | + <div class="uk-form-controls"> | ||
| 316 | + <input value="80%" disabled> | ||
| 317 | + </div> | ||
| 318 | + </div> | ||
| 319 | + </div> | ||
| 320 | + </div> | ||
| 321 | + | ||
| 322 | + <div class="uk-modal-footer uk-text-right lj_1" style="margin-bottom: -20px; display: none;" > | ||
| 323 | + <button type="button" class="uk-button uk-modal-close">取消</button> | ||
| 324 | + <button type="submit" class="uk-button uk-button-primary"><i class="uk-icon-check"></i> 保存</button> | ||
| 325 | + </div> | ||
| 326 | + </div> | ||
| 327 | +</script> | ||
| 328 | + | ||
| 329 | + | ||
| 330 | +<script id="buffer_config_form-temp1" type="text/html"> | ||
| 331 | + <div id="emergency_stop_panel"> | ||
| 332 | + <h3 class="btn_title_lines1"> | ||
| 333 | + <a class="uk-link-reset" >调整随到随发 </a> | ||
| 334 | + </h3> | ||
| 335 | + <div> | ||
| 336 | + <form class="uk-form" name="yjtkForm"> | ||
| 337 | + <table> | ||
| 338 | + <tr> | ||
| 339 | + <td colspan="2"> | ||
| 340 | + 是否启用 | ||
| 341 | + <select class="z-depth-input" name="enableYjtk"> | ||
| 342 | + <option value="0" >禁用</option> | ||
| 343 | + <option value="1" {{if enableYjtk}}selected{{/if}}>启用</option> | ||
| 344 | + </select> | ||
| 345 | + </td> | ||
| 346 | + </tr> | ||
| 347 | + <tr> | ||
| 348 | + <td colspan="2"> | ||
| 349 | + 时间 | ||
| 350 | + <input type="time" value="{{yjtkStart}}" name="yjtkStart" {{if !enableYjtk}}disabled{{/if}}>至 | ||
| 351 | + <input type="time" value="{{yjtkEnd}}" name="yjtkEnd" {{if !enableYjtk}}disabled{{/if}}> | ||
| 352 | + </td> | ||
| 353 | + </tr> | ||
| 354 | + <tr> | ||
| 355 | + <td> | ||
| 356 | + 上行停靠时间 | ||
| 357 | + <input type="number" value="{{upStopMinute}}" name="upStopMinute" {{if !enableYjtk}}disabled{{/if}}>分钟 | ||
| 358 | + </td> | ||
| 359 | + </tr> | ||
| 360 | + <tr> | ||
| 361 | + <td> | ||
| 362 | + 下行停靠时间 | ||
| 363 | + <input type="number" value="{{downStopMinute}}" name="downStopMinute" {{if !enableYjtk}}disabled{{/if}}>分钟 | ||
| 364 | + </td> | ||
| 365 | + </tr> | ||
| 366 | + </table> | ||
| 367 | + </form> | ||
| 368 | + </div> | ||
| 369 | + </div> | ||
| 370 | +</script> | ||
| 371 | + | ||
| 372 | + | ||
| 373 | +<!-- | ||
| 374 | +<script id="zntj_config_form-temp1" type="text/html"> | ||
| 375 | + <div"> | ||
| 376 | + <h3 class="btn_title_lines1"> | ||
| 377 | + <a class="uk-link-reset" >智能延后发车时间 </a> | ||
| 378 | + </h3> | ||
| 379 | + <div> | ||
| 380 | + <form> | ||
| 381 | + <table> | ||
| 382 | + | ||
| 383 | + <tr> | ||
| 384 | + <td> | ||
| 385 | + 延后班次数量(个) | ||
| 386 | + <input type="number" value="5" name="bcnum" id="bcnum"> | ||
| 387 | + </td> | ||
| 388 | + </tr> | ||
| 389 | + </table> | ||
| 390 | + </form> | ||
| 391 | + | ||
| 392 | + | ||
| 393 | + </div> | ||
| 394 | + </div> | ||
| 395 | +</script>--> |
src/main/resources/static/real_control_v2/zndd/type/mz.html
0 → 100644
| 1 | +<div class="uk-modal ct-form-modal ct_move_modal" id="schedule-addsch-modal"> | ||
| 2 | + <div class="uk-modal-dialog" style="width: 1400px;"> | ||
| 3 | + <a href="" class="uk-modal-close uk-close"></a> | ||
| 4 | + <div class="uk-modal-header"> | ||
| 5 | + <h2>满载</h2></div> | ||
| 6 | + <div class="uk-grid uk-width-2-5" style="float: left"> | ||
| 7 | + <div class="uk-width-5-5"> | ||
| 8 | + <form class="uk-form uk-form-horizontal"> </form> | ||
| 9 | + <div> | ||
| 10 | + | ||
| 11 | + | ||
| 12 | + </div> | ||
| 13 | + </div> | ||
| 14 | + </div> | ||
| 15 | + <div class="uk-grid uk-width-3-5 lj_1" > | ||
| 16 | + <div class="uk-width-1-4"> | ||
| 17 | + <ul data-uk-switcher="{connect:'#tempScheduleContent'}" class="uk-nav uk-nav-side left_tabs_lg"> | ||
| 18 | + <li data-handle="toAndFro"><a>1、往返</a></li> | ||
| 19 | + <li data-handle="normal"><a>2、临加班次</a></li> | ||
| 20 | + <!-- <li data-handle="parkToPark"><a>3、场到场</a></li>--> | ||
| 21 | + </ul> | ||
| 22 | + </div> | ||
| 23 | + <div class="uk-width-3-4"> | ||
| 24 | + <ul id="tempScheduleContent" class="uk-switcher"> | ||
| 25 | + <li class="toAndFroCont"></li> | ||
| 26 | + <li class="normalCont"></li> | ||
| 27 | + <li class="parkToParkCont"></li> | ||
| 28 | + </ul> | ||
| 29 | + </div> | ||
| 30 | + </div> | ||
| 31 | + | ||
| 32 | + </div> | ||
| 33 | + | ||
| 34 | + <script> | ||
| 35 | + (function () { | ||
| 36 | + var modal = '#schedule-addsch-modal', | ||
| 37 | + sch, stationRoutes, parks, information, carsArray, st_park_data,conf; | ||
| 38 | + | ||
| 39 | + $(modal).on('init', function (e, data) { | ||
| 40 | + e.stopPropagation(); | ||
| 41 | + sch = data.data; | ||
| 42 | + sch.xlBm = sch.lineCode; | ||
| 43 | + | ||
| 44 | + //站到场数据 | ||
| 45 | + st_park_data = gb_data_basic.get_stat_park_data()[sch.xlBm]; | ||
| 46 | + //站点路由 | ||
| 47 | + stationRoutes = gb_common.groupBy(gb_data_basic.stationRoutes(sch.xlBm).sort(function (a, b) { | ||
| 48 | + return a.stationRouteCode - b.stationRouteCode; | ||
| 49 | + }), 'directions'); | ||
| 50 | + let route = stationRoutes[sch.xlDir]; | ||
| 51 | + debugger | ||
| 52 | + sch.startStation = route[0]; | ||
| 53 | + sch.stopStation = route[route.length - 1]; | ||
| 54 | + var formHtml = template('djg-form-temp', sch); | ||
| 55 | + $('form', modal).html(formHtml); | ||
| 56 | + //切换 | ||
| 57 | + $("#destroySelect").on('change',function(){ | ||
| 58 | + let fn = $('#destroySelect').val(); | ||
| 59 | + if (fn == "0"){ | ||
| 60 | + $('.video_1').css({display: ''}); | ||
| 61 | + $('.video_2').css({display: 'none'}); | ||
| 62 | + | ||
| 63 | + }else { | ||
| 64 | + $('.video_1').css({display: 'none'}); | ||
| 65 | + $('.video_2').css({display: ''}); | ||
| 66 | + } | ||
| 67 | + }) | ||
| 68 | + | ||
| 69 | + //停车场 | ||
| 70 | + parks = gb_data_basic.simpleParksArray(); | ||
| 71 | + //线路标准 | ||
| 72 | + information = gb_data_basic.getLineInformation(sch.xlBm); | ||
| 73 | + //停车场排序,常用的放前面 | ||
| 74 | + parks = sort_parks(parks, information, st_park_data); | ||
| 75 | + //车辆信息 | ||
| 76 | + carsArray = gb_data_basic.carsArray(); | ||
| 77 | + | ||
| 78 | + var st_doms = gb_schedule_context_menu.get_add_sch_doms_v2(); | ||
| 79 | + | ||
| 80 | + $.post('/znddLogger/thissch/'+sch.ids, function(res) { | ||
| 81 | + //to and fro | ||
| 82 | + $('.toAndFroCont', modal).html(st_doms.two_way_dom) | ||
| 83 | + .trigger('init', {sch: res, submitFun: submit_temp_schedule_form, stationRoutes: stationRoutes}); | ||
| 84 | + | ||
| 85 | + | ||
| 86 | + //normal | ||
| 87 | + $('.normalCont', modal).html(st_doms.normal_dom) | ||
| 88 | + .trigger('init', {sch: res, submitFun: submit_temp_schedule_form}); | ||
| 89 | + }); | ||
| 90 | + | ||
| 91 | + | ||
| 92 | + | ||
| 93 | + }); | ||
| 94 | + | ||
| 95 | + //init-autoCom | ||
| 96 | + $(modal).on('init-autoCom', '.add-sch-form', function () { | ||
| 97 | + //车辆 | ||
| 98 | + if(carsArray) | ||
| 99 | + gb_common.carAutocomplete($('.car-autocom', this), carsArray); | ||
| 100 | + //驾驶员 | ||
| 101 | + gb_common.personAutocomplete($('.jsy-autocom', this)); | ||
| 102 | + //售票员 | ||
| 103 | + gb_common.personAutocomplete($('.spy-autocom', this)); | ||
| 104 | + //备注补全 | ||
| 105 | + gb_common.remarksAutocomplete($('.remarks-autocom', this)); | ||
| 106 | + }); | ||
| 107 | + | ||
| 108 | + //班次类型 和 上下行 切换事件 | ||
| 109 | + $(modal).on('change', '.add-sch-form [name=bcType],.add-sch-form [name=xlDir]', reCalcInputs_type); | ||
| 110 | + //起终点站改变事件 | ||
| 111 | + $(modal).on('change', '[name=qdzCode],[name=zdzCode]', reCalcInputs_station); | ||
| 112 | + //开始时间和公里改变 | ||
| 113 | + $(modal).on('input', '.add-sch-form [name=fcsj],.add-sch-form [name=jhlc]', reCalcEndTime); | ||
| 114 | + | ||
| 115 | + | ||
| 116 | + function reCalcInputs_type() { | ||
| 117 | + var f = $(this).parents('.add-sch-form'); | ||
| 118 | + var bcType_e = $('[name=bcType]', f) | ||
| 119 | + , xlDir_e = $('[name=xlDir]', f); | ||
| 120 | + | ||
| 121 | + var routes = stationRoutes[xlDir_e.val()] | ||
| 122 | + , lastCode = routes[routes.length - 1].stationCode | ||
| 123 | + , opts = '', park_opts = ''; | ||
| 124 | + //station options | ||
| 125 | + $.each(routes, function () { | ||
| 126 | + opts += '<option value="' + this.stationCode + '">' + this.stationName + '</option>' | ||
| 127 | + }); | ||
| 128 | + //park options | ||
| 129 | + for(var i=0,p;p=parks[i++];) | ||
| 130 | + park_opts += '<option value="' + p.code + '">' + p.name + '</option>'; | ||
| 131 | + | ||
| 132 | + var qdz = $('[name=qdzCode]', f), zdz = $('[name=zdzCode]', f); | ||
| 133 | + //var time, mileage; | ||
| 134 | + switch (bcType_e.val()) { | ||
| 135 | + case 'out': | ||
| 136 | + qdz.html(park_opts).val(information.carPark); | ||
| 137 | + zdz.html(opts); | ||
| 138 | + break; | ||
| 139 | + case 'in': | ||
| 140 | + qdz.html(opts); | ||
| 141 | + zdz.html(park_opts).val(information.carPark); | ||
| 142 | + break; | ||
| 143 | + default: | ||
| 144 | + qdz.html(opts); | ||
| 145 | + zdz.html(opts).val(lastCode); | ||
| 146 | + } | ||
| 147 | + | ||
| 148 | + zdz.trigger('change'); | ||
| 149 | + f.trigger('ct_callback'); | ||
| 150 | + } | ||
| 151 | + | ||
| 152 | + function reCalcInputs_station() { | ||
| 153 | + var f = $(this).parents('form'), | ||
| 154 | + bcType = $('[name=bcType]', f).val(), | ||
| 155 | + qdzCode = $('[name=qdzCode]', f).val(), | ||
| 156 | + zdzCode =$('[name=zdzCode]', f).val(), | ||
| 157 | + startDate = $('[name=fcsj]', f).val(), | ||
| 158 | + upDown = $('[name=xlDir]', f).val(), mileage, time; | ||
| 159 | + | ||
| 160 | + //从站到场里获取数据 | ||
| 161 | + var stp = search_st_park(f); | ||
| 162 | + if(stp){ | ||
| 163 | + mileage=bcType=='in'?stp['mileage1']:stp['mileage2']; | ||
| 164 | + time=bcType=='in'?stp['time1']:stp['time2']; | ||
| 165 | + } | ||
| 166 | + else{ | ||
| 167 | + switch (upDown + '_' + bcType) { | ||
| 168 | + case '0_out'://上行出场 | ||
| 169 | + mileage = information.upOutMileage; | ||
| 170 | + time = information.upOutTimer; | ||
| 171 | + break; | ||
| 172 | + case '1_out'://下行出场 | ||
| 173 | + mileage = information.downOutMileage; | ||
| 174 | + time = information.downOutTimer; | ||
| 175 | + break; | ||
| 176 | + case '0_in'://上行进场 | ||
| 177 | + mileage = information.upInMileage; | ||
| 178 | + time = information.upInTimer; | ||
| 179 | + break; | ||
| 180 | + case '1_in'://下行进场 | ||
| 181 | + mileage = information.downInMileage; | ||
| 182 | + time = information.downInTimer; | ||
| 183 | + break; | ||
| 184 | + default: | ||
| 185 | + | ||
| 186 | + var qc_time=upDown==0?information.upTravelTime:information.downTravelTime, | ||
| 187 | + qc_mileage=upDown==0?information.upMileage:information.downMileage, _type; | ||
| 188 | + if(is_normal_sch(f)){ | ||
| 189 | + _type='normal'; | ||
| 190 | + mileage=qc_mileage; | ||
| 191 | + } | ||
| 192 | + else{ | ||
| 193 | + _type='region'; | ||
| 194 | + mileage = calcMileage(stationRoutes[upDown], qdzCode, zdzCode); | ||
| 195 | + } | ||
| 196 | + | ||
| 197 | + time = gb_common.mul(gb_common.accDiv(qc_time, qc_mileage), mileage); | ||
| 198 | + if(bcType!='ldks' && bcType!='major' && bcType!='venting') | ||
| 199 | + $('[name=bcType]', f).val(_type); | ||
| 200 | + } | ||
| 201 | + } | ||
| 202 | + | ||
| 203 | + $('[name=jhlc]', f).val(mileage); | ||
| 204 | + var et = moment(startDate, 'HH:mm').add(time, 'minutes'); | ||
| 205 | + $f('zdsj', f).val(et.format('HH:mm')); | ||
| 206 | + f.trigger('ct_callback'); | ||
| 207 | + } | ||
| 208 | + | ||
| 209 | + | ||
| 210 | + function reCalcEndTime() { | ||
| 211 | + var f = $(this).parents('.add-sch-form') | ||
| 212 | + , startDate = $f('fcsj', f).val()//开始时间 | ||
| 213 | + , mileage = $f('jhlc', f).val()//公里 | ||
| 214 | + , type2 = $f('bcType', f).val(),//班次类型 | ||
| 215 | + upDown = $('[name=xlDir]', f).val(); | ||
| 216 | + if (!startDate || !mileage) | ||
| 217 | + return; | ||
| 218 | + | ||
| 219 | + var time; | ||
| 220 | + //从站到场里获取数据 | ||
| 221 | + var stp = search_st_park(f); | ||
| 222 | + if(stp){ | ||
| 223 | + time=type2=='in'?stp['time1']:stp['time2']; | ||
| 224 | + } | ||
| 225 | + else{ | ||
| 226 | + if (type2 == 'in') | ||
| 227 | + time = upDown == 0 ? information.upInTimer : information.downInTimer; | ||
| 228 | + else if (type2 == 'out') | ||
| 229 | + time = upDown == 0 ? information.upOutTimer : information.downOutTimer; | ||
| 230 | + else{ | ||
| 231 | + var qc_time=upDown==0?information.upTravelTime:information.downTravelTime, | ||
| 232 | + qc_mileage=upDown==0?information.upMileage:information.downMileage; | ||
| 233 | + | ||
| 234 | + time = gb_common.mul(gb_common.accDiv(qc_time, qc_mileage), mileage); | ||
| 235 | + } | ||
| 236 | + } | ||
| 237 | + | ||
| 238 | + var et = moment(startDate, 'HH:mm').add(time, 'minutes'); | ||
| 239 | + $f('zdsj', f).val(et.format('HH:mm')); | ||
| 240 | + f.trigger('ct_callback'); | ||
| 241 | + } | ||
| 242 | + | ||
| 243 | + function is_normal_sch(f) { | ||
| 244 | + var qdzCode = $('[name=qdzCode]', f).val(), | ||
| 245 | + zdzCode =$('[name=zdzCode]', f).val(), | ||
| 246 | + upDown = $('[name=xlDir]', f).val(), | ||
| 247 | + rts = stationRoutes[upDown]; | ||
| 248 | + | ||
| 249 | + if(rts[0].stationCode == qdzCode | ||
| 250 | + && rts[rts.length - 1].stationCode == zdzCode) | ||
| 251 | + return true; | ||
| 252 | + else | ||
| 253 | + return false; | ||
| 254 | + } | ||
| 255 | + | ||
| 256 | + function isInOut(bcType) { | ||
| 257 | + return bcType=='in' || bcType=='out'; | ||
| 258 | + } | ||
| 259 | + | ||
| 260 | + /** | ||
| 261 | + * 计算线路上站点间公里 | ||
| 262 | + */ | ||
| 263 | + function calcMileage(rts, s, e) { | ||
| 264 | + var mileage = 0, flag, code; | ||
| 265 | + $.each(rts, function () { | ||
| 266 | + code = this['stationCode']; | ||
| 267 | + if (flag) | ||
| 268 | + mileage = gb_common.accAdd(mileage, this.distances); | ||
| 269 | + if (code == s) | ||
| 270 | + flag = true; | ||
| 271 | + if (code == e) | ||
| 272 | + return false; | ||
| 273 | + }); | ||
| 274 | + return mileage; | ||
| 275 | + } | ||
| 276 | + | ||
| 277 | + function search_st_park(f) { | ||
| 278 | + if(!st_park_data) | ||
| 279 | + return; | ||
| 280 | + var stp; | ||
| 281 | + var qdSelect=$f('qdzCode', f)[0],zdSelect=$f('zdzCode', f)[0]; | ||
| 282 | + | ||
| 283 | + if(qdSelect.options.selectedIndex < 0 || zdSelect.options.selectedIndex < 0) | ||
| 284 | + return; | ||
| 285 | + var qdzName=qdSelect.options[qdSelect.options.selectedIndex].text, | ||
| 286 | + zdzName=zdSelect.options[zdSelect.options.selectedIndex].text, | ||
| 287 | + type2 = $f('bcType', f).val(); | ||
| 288 | + | ||
| 289 | + if(!isInOut(type2)) | ||
| 290 | + return; | ||
| 291 | + | ||
| 292 | + $.each(st_park_data, function () { | ||
| 293 | + if((type2=='in' && this.stationName==qdzName && this.parkName==zdzName) | ||
| 294 | + || (type2=='out' && this.stationName==zdzName && this.parkName==qdzName)){ | ||
| 295 | + stp = this; | ||
| 296 | + return false; | ||
| 297 | + } | ||
| 298 | + }); | ||
| 299 | + | ||
| 300 | + return stp; | ||
| 301 | + } | ||
| 302 | + | ||
| 303 | + /** | ||
| 304 | + * 停车场排序 | ||
| 305 | + * @param parks 停车场 code 2 name | ||
| 306 | + * @param information 线路标准 | ||
| 307 | + * @param st_park_data 站到场 | ||
| 308 | + */ | ||
| 309 | + function sort_parks(parks, information, st_park_data) { | ||
| 310 | + var array = [], names=[]; | ||
| 311 | + for(var code in parks){ | ||
| 312 | + array.push({code: code, name: parks[code]}); | ||
| 313 | + } | ||
| 314 | + | ||
| 315 | + if(st_park_data && st_park_data.length > 0){ | ||
| 316 | + $.each(st_park_data, function () { | ||
| 317 | + names.push(this.parkName); | ||
| 318 | + }); | ||
| 319 | + } | ||
| 320 | + | ||
| 321 | + //debugger | ||
| 322 | + array.sort(function (a, b) { | ||
| 323 | + if(a.code==information.carPark) | ||
| 324 | + return -1; | ||
| 325 | + if(b.code==information.carPark) | ||
| 326 | + return 1; | ||
| 327 | + | ||
| 328 | + var ai = names.indexOf(a.name), | ||
| 329 | + bi = names.indexOf(b.name); | ||
| 330 | + | ||
| 331 | + if(ai!=-1 && bi==-1) | ||
| 332 | + return -1; | ||
| 333 | + else if(ai==-1 && bi!=-1) | ||
| 334 | + return 1; | ||
| 335 | + else | ||
| 336 | + return $.trim(a.name).localeCompare($.trim(b.name), 'zh-CN'); | ||
| 337 | + }); | ||
| 338 | + return array; | ||
| 339 | + } | ||
| 340 | + | ||
| 341 | + function $f(name, f) { | ||
| 342 | + return $('[name=' + name + ']', f); | ||
| 343 | + } | ||
| 344 | + | ||
| 345 | + /** | ||
| 346 | + * 提交表单 | ||
| 347 | + */ | ||
| 348 | + function submit_temp_schedule_form(data, cb, err) { | ||
| 349 | + if (!data.lpName) { | ||
| 350 | + notify_err('路牌信息缺失'); | ||
| 351 | + return; | ||
| 352 | + } | ||
| 353 | + data.xlBm = sch.xlBm; | ||
| 354 | + data.xlName = sch.xlName; | ||
| 355 | + //拆分驾驶员工号和姓名 | ||
| 356 | + data.jGh = data.jsy.split('/')[0]; | ||
| 357 | + data.jName = data.jsy.split('/')[1]; | ||
| 358 | + delete data.jsy; | ||
| 359 | + //拆分售票员工号和姓名 | ||
| 360 | + if (data.spy != '') { | ||
| 361 | + data.sGh = data.spy.split('/')[0]; | ||
| 362 | + data.sName = data.spy.split('/')[1]; | ||
| 363 | + delete data.spy; | ||
| 364 | + } | ||
| 365 | + | ||
| 366 | + //公司信息 | ||
| 367 | + var line = gb_data_basic.findLineByCodes([data.xlBm]); | ||
| 368 | + if(line && line.length > 0){ | ||
| 369 | + line = line[0]; | ||
| 370 | + data.xlName = line.name; | ||
| 371 | + data.gsBm = line.company; | ||
| 372 | + data.fgsBm = line.brancheCompany; | ||
| 373 | + } | ||
| 374 | + | ||
| 375 | + gb_common.$post('/realSchedule', data, function (rs) { | ||
| 376 | + notify_succ('新增临加班次成功'); | ||
| 377 | + cb && cb(rs); | ||
| 378 | + }, err); | ||
| 379 | + } | ||
| 380 | + | ||
| 381 | + | ||
| 382 | + | ||
| 383 | + | ||
| 384 | + })(); | ||
| 385 | + </script> | ||
| 386 | +</div> | ||
| 387 | + | ||
| 388 | +<script id="djg-form-temp" type="text/html"> | ||
| 389 | + <input type="hidden" name="id" value=""/> | ||
| 390 | + | ||
| 391 | + <div class="uk-grid"> | ||
| 392 | + <div class="uk-width-4-2"> | ||
| 393 | + <div class="uk-form-row"> | ||
| 394 | + <h3>满载信息</h3> | ||
| 395 | + </div> | ||
| 396 | + </div> | ||
| 397 | + </div> | ||
| 398 | + <div class="uk-grid"> | ||
| 399 | + <div class="uk-width-4-2"> | ||
| 400 | + <div class="uk-form-row"> | ||
| 401 | + <label class="uk-form-labels" >{{lineName}} {{startStation.stationName}} -> {{stopStation.stationName}}方向 的 {{clzbh}} 出现满载</label> | ||
| 402 | + </div> | ||
| 403 | + </div> | ||
| 404 | + | ||
| 405 | + </div> | ||
| 406 | + | ||
| 407 | + <div class="uk-grid"> | ||
| 408 | + <div class="uk-width-1-2"> | ||
| 409 | + <div class="uk-form-row"> | ||
| 410 | + <label class="uk-form-label">车辆发车时间</label> | ||
| 411 | + <div class="uk-form-controls"> | ||
| 412 | + <input type="time" value="{{fcsj}}" name="fcsj" disabled> | ||
| 413 | + </div> | ||
| 414 | + </div> | ||
| 415 | + </div> | ||
| 416 | + <div class="uk-width-1-2"> | ||
| 417 | + <div class="uk-form-row"> | ||
| 418 | + <label class="uk-form-label">车辆所在站点</label> | ||
| 419 | + <div class="uk-form-controls"> | ||
| 420 | + <input value="环湖西三路杞青路" disabled> | ||
| 421 | + </div> | ||
| 422 | + </div> | ||
| 423 | + </div> | ||
| 424 | + </div> | ||
| 425 | + | ||
| 426 | + <div class="uk-grid"> | ||
| 427 | + <div class="uk-width-1-2"> | ||
| 428 | + <div class="uk-form-row"> | ||
| 429 | + <label class="uk-form-label">车内人数</label> | ||
| 430 | + <div class="uk-form-controls"> | ||
| 431 | + <input value="23" disabled> | ||
| 432 | + </div> | ||
| 433 | + </div> | ||
| 434 | + </div> | ||
| 435 | + <div class="uk-width-1-2"> | ||
| 436 | + <div class="uk-form-row"> | ||
| 437 | + <label class="uk-form-label">摄像</label> | ||
| 438 | + <div class="uk-form-controls"> | ||
| 439 | + <select name="destroy" class="form-control" id="destroySelect"> | ||
| 440 | + <option value="0">-- 前车厢 --</option> | ||
| 441 | + <option value="1">-- 后车厢 --</option> | ||
| 442 | + </select> | ||
| 443 | + </div> | ||
| 444 | + </div> | ||
| 445 | + </div> | ||
| 446 | + </div> | ||
| 447 | + <div class="uk-grid"> | ||
| 448 | + | ||
| 449 | + <div class="uk-width-1-1"> | ||
| 450 | + <div class="uk-form-row"> | ||
| 451 | + <label class="uk-form-label">车内视频:</label> | ||
| 452 | + </div> | ||
| 453 | + </div> | ||
| 454 | + </div> | ||
| 455 | + <div class="uk-grid"> | ||
| 456 | + <div class="uk-width-4-2"> | ||
| 457 | + <div class="uk-form-row video_1"> | ||
| 458 | + <video id="myVideo" style="width: 100%" src="/real_control_v2/zndd/video/a.mp4" controls></video> | ||
| 459 | + </div> | ||
| 460 | + <div class="uk-form-row video_2" style="display: none"> | ||
| 461 | + <video id="myVideos" style="width: 100%" src="/real_control_v2/zndd/video/b.mp4" controls></video> | ||
| 462 | + </div> | ||
| 463 | + </div> | ||
| 464 | + </div> | ||
| 465 | + | ||
| 466 | + <div class="uk-grid"> | ||
| 467 | + <div class="uk-width-4-2"> | ||
| 468 | + <div class="uk-form-row"> | ||
| 469 | + <h3>方案优势</h3> | ||
| 470 | + </div> | ||
| 471 | + </div> | ||
| 472 | + </div> | ||
| 473 | + | ||
| 474 | + <div class="uk-grid fanganys"> | ||
| 475 | + <div class="uk-width-1-2"> | ||
| 476 | + <div class="uk-form-row"> | ||
| 477 | + <label class="uk-form-label">载客量</label> | ||
| 478 | + <div class="uk-form-controls"> | ||
| 479 | + <i class="icon-user"></i> | ||
| 480 | + <input value="24" disabled> | ||
| 481 | + </div> | ||
| 482 | + </div> | ||
| 483 | + </div> | ||
| 484 | + <div class="uk-width-1-2"> | ||
| 485 | + <div class="uk-form-row"> | ||
| 486 | + <label class="uk-form-label">准点率</label> | ||
| 487 | + <div class="uk-form-controls"> | ||
| 488 | + <i class="icon-user"></i> | ||
| 489 | + <input value="0.1%" disabled> | ||
| 490 | + </div> | ||
| 491 | + </div> | ||
| 492 | + </div> | ||
| 493 | + </div> | ||
| 494 | + <div class="uk-grid fanganys"> | ||
| 495 | + <div class="uk-width-1-2"> | ||
| 496 | + <div class="uk-form-row"> | ||
| 497 | + <label class="uk-form-label">乘客满意度</label> | ||
| 498 | + <div class="uk-form-controls"> | ||
| 499 | + <i class="icon-user"></i> | ||
| 500 | + <input value="0.1%" disabled> | ||
| 501 | + </div> | ||
| 502 | + </div> | ||
| 503 | + </div> | ||
| 504 | + <div class="uk-width-1-2"> | ||
| 505 | + <div class="uk-form-row"> | ||
| 506 | + <label class="uk-form-label">运营效率</label> | ||
| 507 | + <div class="uk-form-controls"> | ||
| 508 | + <i class="icon-user"></i> | ||
| 509 | + <input value="0.3%" disabled> | ||
| 510 | + </div> | ||
| 511 | + </div> | ||
| 512 | + </div> | ||
| 513 | + </div> | ||
| 514 | + | ||
| 515 | + <!-- 表单按钮组件 START --> | ||
| 516 | + <div class="form-actions"> | ||
| 517 | + <div class="row"> | ||
| 518 | + <div class="col-md-offset-5 col-md-7"> | ||
| 519 | + <button type="submit" class="btn green" id="submintBtn"><i class="fa fa-check"></i> 提交</button> | ||
| 520 | + <a type="button" class="btn default" href="list.html" data-pjax><i class="fa fa-times"></i> 取消</a> | ||
| 521 | + </div> | ||
| 522 | + </div> | ||
| 523 | + </div> | ||
| 524 | +</script> | ||
| 525 | +<style> | ||
| 526 | + .fanganys input{ | ||
| 527 | + text-align: center; | ||
| 528 | + } | ||
| 529 | + .icon-user{ | ||
| 530 | + | ||
| 531 | + position: absolute; | ||
| 532 | + background-image: url(/real_control_v2/zndd/img/up.png); /*引入图片图片*/ | ||
| 533 | + background-size: 100% 100%; | ||
| 534 | + background-repeat: no-repeat; /*设置图片不重复*/ | ||
| 535 | + background-position: 0px 0px; /*图片显示的位置*/ | ||
| 536 | + width: 30px; /*设置图片显示的宽*/ | ||
| 537 | + height: 30px; /*图片显示的高*/ | ||
| 538 | + | ||
| 539 | + } | ||
| 540 | + | ||
| 541 | +</style> |
src/main/resources/static/real_control_v2/zndd/type/wd.html
0 → 100644
| 1 | +<div class="uk-modal ct-form-modal ct_move_modal" id="wd-addsch-modal"> | ||
| 2 | + <div class="uk-modal-dialog" style="width: 850px;"> | ||
| 3 | + <a href="" class="uk-modal-close uk-close"></a> | ||
| 4 | + <div class="uk-modal-header"> | ||
| 5 | + <h2>误点<i class="uk-icon-question-circle uk-icon-hover"></i></h2></div> | ||
| 6 | + | ||
| 7 | + <div class="uk-grid uk-width-3-5 lj_1" style="float: left"> | ||
| 8 | + <form class="uk-form uk-form-horizontal"> </form> | ||
| 9 | + </div> | ||
| 10 | + | ||
| 11 | + | ||
| 12 | + | ||
| 13 | + <div class="uk-grid uk-width-2-5 lj_2" style="padding-left: 100px"> | ||
| 14 | + <div class="uk-width-1-1" id ="tempsdsf"></div> | ||
| 15 | + | ||
| 16 | + </div> | ||
| 17 | + </div> | ||
| 18 | + | ||
| 19 | + <script> | ||
| 20 | + (function () { | ||
| 21 | + var modal = '#wd-addsch-modal', | ||
| 22 | + sch, stationRoutes, parks, information, carsArray, st_park_data,conf; | ||
| 23 | + var f = $('.uk-form-horizontal', modal); | ||
| 24 | + | ||
| 25 | + $(modal).on('init', function (e, data) { | ||
| 26 | + e.stopPropagation(); | ||
| 27 | + | ||
| 28 | + sch = data.data; | ||
| 29 | + sch.xlBm = sch.lineCode; | ||
| 30 | + //站点路由 | ||
| 31 | + stationRoutes = gb_common.groupBy(gb_data_basic.stationRoutes(sch.xlBm).sort(function (a, b) { | ||
| 32 | + return a.stationRouteCode - b.stationRouteCode; | ||
| 33 | + }), 'directions'); | ||
| 34 | + let route = stationRoutes[sch.xlDir]; | ||
| 35 | + sch.startStation = route[0]; | ||
| 36 | + sch.stopStation = route[route.length - 1]; | ||
| 37 | + var formHtml = template('wd-form-temp', sch); | ||
| 38 | + $('form', modal).html(formHtml); | ||
| 39 | + //车辆信息 | ||
| 40 | + carsArray = gb_data_basic.carsArray(); | ||
| 41 | + initAutoCom(f); | ||
| 42 | + $.get('/lineConfig/getByLineCode', {lineCode: sch.lineCode}, function (datan) { | ||
| 43 | + var formHtmls = template('buffer_config_form-temp1', datan); | ||
| 44 | + conf = datan; | ||
| 45 | + $('#tempsdsf', modal).html(formHtmls); | ||
| 46 | + $('[name=enableYjtk]', modal).on('change', function () { | ||
| 47 | + if($(this).val() == '1'){ | ||
| 48 | + enableYjtkForm(); | ||
| 49 | + } | ||
| 50 | + else | ||
| 51 | + disabledYjtkForm(); | ||
| 52 | + }); | ||
| 53 | + }); | ||
| 54 | + | ||
| 55 | + | ||
| 56 | + f.formValidation(gb_form_validation_opts); | ||
| 57 | + f.on('success.form.fv', function(e) { | ||
| 58 | + | ||
| 59 | + | ||
| 60 | + e.preventDefault(); | ||
| 61 | + var data = $(this).serializeJSON(); | ||
| 62 | + let fn = $('#destroySelect').val(); | ||
| 63 | + debugger | ||
| 64 | + if (fn == "1"){ | ||
| 65 | + //调整人员车辆 | ||
| 66 | + let datas = { | ||
| 67 | + id : sch.sch.id, | ||
| 68 | + jsy: data.jsy, | ||
| 69 | + clZbh : data.clZbh, | ||
| 70 | + remarks : '调整人员车辆', | ||
| 71 | + } | ||
| 72 | + | ||
| 73 | + gb_common.$post('/realSchedule/schInfoFineTune', datas, function(rs){ | ||
| 74 | + gb_schedule_table.updateSchedule(rs.ts); | ||
| 75 | + UIkit.modal(modal).hide(); | ||
| 76 | + notify_succ('操作成功!'); | ||
| 77 | + //计算应发未发 | ||
| 78 | + gb_schedule_table.calc_yfwf_num(sch.xlBm); | ||
| 79 | + //更新路牌公里统计面板 | ||
| 80 | + gb_schedule_table.showLpMileageTipBySch(sch); | ||
| 81 | + }); | ||
| 82 | + | ||
| 83 | + }else if((fn == "2")) { | ||
| 84 | + gb_common.$post_arr('/realSchedule/lateAdjust', {idx: sch.id, minute: data.wdsj}, function (rs) { | ||
| 85 | + console.log('误点调整rs', rs); | ||
| 86 | + if(rs.ts){ | ||
| 87 | + gb_schedule_table.updateSchedule(rs.ts); | ||
| 88 | + notify_succ('成功设置误点停靠时间'); | ||
| 89 | + UIkit.modal(modal).hide(); | ||
| 90 | + } | ||
| 91 | + }); | ||
| 92 | + } | ||
| 93 | + }); | ||
| 94 | + | ||
| 95 | + // 之后可以在事件处理函数中给它赋值 | ||
| 96 | + document.getElementById('wdsj').onkeyup = function(event) { | ||
| 97 | + debugger | ||
| 98 | + let KeyP = event.target.value; // 赋值 | ||
| 99 | + $('#dfsj').val($('#dfsj_0').val() +' + '+ KeyP) | ||
| 100 | + // ...其他代码... | ||
| 101 | + }; | ||
| 102 | + //方案选择 | ||
| 103 | + $("#destroySelect").on('change',function(){ | ||
| 104 | + debugger | ||
| 105 | + let fn = $('#destroySelect').val(); | ||
| 106 | + if (fn == "1"){ | ||
| 107 | + $(".lj_2").css({ display: 'none'}); | ||
| 108 | + $(".k1").css({ display: ''}); | ||
| 109 | + $(".k2").css({display: ''}); | ||
| 110 | + $(".k3").css({display: 'none'}); | ||
| 111 | + }else if((fn == "2")) { | ||
| 112 | + $(".lj_2").css({ display: 'none'}); | ||
| 113 | + $(".k1").css({ display: ''}); | ||
| 114 | + $(".k2").css({display: 'none'}); | ||
| 115 | + $(".k3").css({display: ''}); | ||
| 116 | + }else { | ||
| 117 | + $(".lj_2").css({ display: ''}); | ||
| 118 | + $(".k1").css({ display: 'none'}); | ||
| 119 | + $(".k2").css({display: 'none'}); | ||
| 120 | + $(".k3").css({display: 'none'}); | ||
| 121 | + } | ||
| 122 | + }) | ||
| 123 | + | ||
| 124 | + }); | ||
| 125 | + | ||
| 126 | + | ||
| 127 | + function initAutoCom(f) { | ||
| 128 | + //车辆 | ||
| 129 | + debugger | ||
| 130 | + if(carsArray) | ||
| 131 | + gb_common.carAutocomplete($('.car-autocom', f), carsArray); | ||
| 132 | + //驾驶员 | ||
| 133 | + gb_common.personAutocomplete($('.jsy-autocom', f)); | ||
| 134 | + //售票员 | ||
| 135 | + gb_common.personAutocomplete($('.spy-autocom', f)); | ||
| 136 | + //备注补全 | ||
| 137 | + gb_common.remarksAutocomplete($('.remarks-autocom', f)); | ||
| 138 | + } | ||
| 139 | + function enableYjtkForm() { | ||
| 140 | + var f = $('form[name=yjtkForm]', modal); | ||
| 141 | + $('input', f).removeAttr('disabled'); | ||
| 142 | + //开始时间 | ||
| 143 | + if($('[name=yjtkStart]',f).val() == '') | ||
| 144 | + $('[name=yjtkStart]',f).val('00:00'); | ||
| 145 | + if($('[name=yjtkEnd]',f).val() == '') | ||
| 146 | + $('[name=yjtkEnd]',f).val('23:59'); | ||
| 147 | + var data = f.serializeJSON(); | ||
| 148 | + data.lineCode = conf.line.lineCode; | ||
| 149 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 150 | + conf = rs.conf; | ||
| 151 | + notify_succ('启用随到随发'); | ||
| 152 | + }); | ||
| 153 | + } | ||
| 154 | + function disabledYjtkForm() { | ||
| 155 | + var f = $('form[name=yjtkForm]', modal); | ||
| 156 | + $('input', f).attr('disabled', 'disabled'); | ||
| 157 | + //恢复val | ||
| 158 | + $('[name=yjtkStart]',f).val(conf.yjtkStart); | ||
| 159 | + $('[name=yjtkEnd]',f).val(conf.yjtkEnd); | ||
| 160 | + $('[name=upStopMinute]',f).val(conf.upStopMinute); | ||
| 161 | + $('[name=downStopMinute]',f).val(conf.downStopMinute); | ||
| 162 | + | ||
| 163 | + var data = {enableYjtk: 0, lineCode: conf.line.lineCode}; | ||
| 164 | + gb_common.$post('/lineConfig/yjtkSet', data, function (rs) { | ||
| 165 | + conf = rs.conf; | ||
| 166 | + notify_succ('禁用随到随发'); | ||
| 167 | + }); | ||
| 168 | + } | ||
| 169 | + | ||
| 170 | + | ||
| 171 | + $(modal).on('mouseenter', '.uk-icon-question-circle', function() { | ||
| 172 | + debugger | ||
| 173 | + $(this).qtip({ | ||
| 174 | + show: { | ||
| 175 | + ready: true, | ||
| 176 | + delay: 0 | ||
| 177 | + }, | ||
| 178 | + content: { | ||
| 179 | + text: function() { | ||
| 180 | + return template('home-icoe-img'); | ||
| 181 | + } | ||
| 182 | + }, | ||
| 183 | + position: { | ||
| 184 | + viewport: $(window) , | ||
| 185 | + }, | ||
| 186 | + style: { | ||
| 187 | + classes: 'qtip-img' | ||
| 188 | + }, | ||
| 189 | + hide: { | ||
| 190 | + fixed: true, | ||
| 191 | + delay: 300 | ||
| 192 | + }, | ||
| 193 | + }); | ||
| 194 | + }); | ||
| 195 | + | ||
| 196 | + })(); | ||
| 197 | + </script> | ||
| 198 | +</div> | ||
| 199 | + | ||
| 200 | +<script id="wd-form-temp" type="text/html"> | ||
| 201 | + <input type="hidden" name="id" value=""/> | ||
| 202 | + | ||
| 203 | + <div class="uk-grid"> | ||
| 204 | + <div class="uk-width-4-2"> | ||
| 205 | + <div class="uk-form-row"> | ||
| 206 | + <h3>误点信息</h3> | ||
| 207 | + </div> | ||
| 208 | + </div> | ||
| 209 | + </div> | ||
| 210 | + <div class="uk-grid"> | ||
| 211 | + <div class="uk-width-4-2"> | ||
| 212 | + <div class="uk-form-row"> | ||
| 213 | + <label class="uk-form-labels" >{{lineName}} {{startStation.stationName}} -> {{stopStation.stationName}}方向 的 {{clzbh}} 出现误点</label> | ||
| 214 | + </div> | ||
| 215 | + </div> | ||
| 216 | + </div> | ||
| 217 | + <div class="uk-grid"> | ||
| 218 | + <div class="uk-width-1-1"> | ||
| 219 | + <div class="uk-form-row"> | ||
| 220 | + <label class="uk-form-labels">待发时间 {{sch.fcsj}}-> 实发时间 {{sch.fcsjActual}}</label> | ||
| 221 | + | ||
| 222 | + </div> | ||
| 223 | + </div> | ||
| 224 | + </div> | ||
| 225 | + <div class="uk-grid"> | ||
| 226 | + <div class="uk-width-1-2"> | ||
| 227 | + <div class="uk-form-row"> | ||
| 228 | + <label class="uk-form-label">调整前:</label> | ||
| 229 | + <div class="uk-form-controls"> | ||
| 230 | + </div> | ||
| 231 | + </div> | ||
| 232 | + </div> | ||
| 233 | + <div class="uk-width-1-2"> | ||
| 234 | + <div class="uk-form-row"> | ||
| 235 | + <label class="uk-form-label">调整后:</label> | ||
| 236 | + <div class="uk-form-controls"> | ||
| 237 | + </div> | ||
| 238 | + </div> | ||
| 239 | + </div> | ||
| 240 | + </div> | ||
| 241 | + <div class="uk-grid"> | ||
| 242 | + <div class="uk-width-1-2"> | ||
| 243 | + <div class="uk-form-row"> | ||
| 244 | + <label class="uk-form-label">线路名称</label> | ||
| 245 | + <div class="uk-form-controls"> | ||
| 246 | + <input value="{{sch.xlName}}" disabled> | ||
| 247 | + </div> | ||
| 248 | + </div> | ||
| 249 | + </div> | ||
| 250 | + <div class="uk-width-1-2"> | ||
| 251 | + <div class="uk-form-row"> | ||
| 252 | + <label class="uk-form-label">线路名称</label> | ||
| 253 | + <div class="uk-form-controls"> | ||
| 254 | + <input value="{{sch.xlName}}" disabled> | ||
| 255 | + </div> | ||
| 256 | + </div> | ||
| 257 | + </div> | ||
| 258 | + </div> | ||
| 259 | + <div class="uk-grid"> | ||
| 260 | + <div class="uk-width-1-2"> | ||
| 261 | + <div class="uk-form-row"> | ||
| 262 | + <label class="uk-form-label">路牌</label> | ||
| 263 | + <div class="uk-form-controls"> | ||
| 264 | + <input value="{{sch.lpName}}" disabled> | ||
| 265 | + </div> | ||
| 266 | + </div> | ||
| 267 | + </div> | ||
| 268 | + <div class="uk-width-1-2"> | ||
| 269 | + <div class="uk-form-row"> | ||
| 270 | + <label class="uk-form-label">路牌</label> | ||
| 271 | + <div class="uk-form-controls"> | ||
| 272 | + <input value="{{sch.lpName}}" disabled> | ||
| 273 | + </div> | ||
| 274 | + </div> | ||
| 275 | + </div> | ||
| 276 | + </div> | ||
| 277 | + <div class="uk-grid"> | ||
| 278 | + <div class="uk-width-2-2"> | ||
| 279 | + <div class="uk-form-row"> | ||
| 280 | + <label class="uk-form-label">选择方案</label> | ||
| 281 | + <div class="uk-form-controls"> | ||
| 282 | + <select name="destroy" class="form-control" id="destroySelect"> | ||
| 283 | + <option value="0">-- 随到随发 --</option> | ||
| 284 | + <option value="1">-- 换人换车 --</option> | ||
| 285 | + <option value="2">-- 误点待发调整 --</option> | ||
| 286 | + </select> | ||
| 287 | + </div> | ||
| 288 | + </div> | ||
| 289 | + </div> | ||
| 290 | + </div> | ||
| 291 | + <div class="uk-grid k2"style="display: none"> | ||
| 292 | + <div class="uk-width-1-2"> | ||
| 293 | + <div class="uk-form-row"> | ||
| 294 | + <label class="uk-form-label">车辆</label> | ||
| 295 | + <div class="uk-form-controls"> | ||
| 296 | + <input value="{{sch.clZbh}}" disabled> | ||
| 297 | + </div> | ||
| 298 | + </div> | ||
| 299 | + </div> | ||
| 300 | + <div class="uk-width-1-2"> | ||
| 301 | + <div class="uk-form-row"> | ||
| 302 | + <label class="uk-form-label">车辆</label> | ||
| 303 | + <div class="uk-form-controls car-autocom"> | ||
| 304 | + <input value="{{sch.clZbh}}" name="clZbh" required> | ||
| 305 | + </div> | ||
| 306 | + </div> | ||
| 307 | + </div> | ||
| 308 | + </div> | ||
| 309 | + | ||
| 310 | + <div class="uk-grid k2"style="display: none"> | ||
| 311 | + <div class="uk-width-1-2"> | ||
| 312 | + <div class="uk-form-row"> | ||
| 313 | + <label class="uk-form-label">人员</label> | ||
| 314 | + <div class="uk-form-controls"> | ||
| 315 | + <input value="{{sch.jName}}" disabled> | ||
| 316 | + </div> | ||
| 317 | + </div> | ||
| 318 | + </div> | ||
| 319 | + <div class="uk-width-1-2"> | ||
| 320 | + <div class="uk-form-row"> | ||
| 321 | + <label class="uk-form-label">人员</label> | ||
| 322 | + <div class="uk-form-controls uk-form jsy-autocom"> | ||
| 323 | + <input type="text" value="{{sch.jGh}}/{{sch.jName}}" name="jsy" required> | ||
| 324 | + | ||
| 325 | + </div> | ||
| 326 | + </div> | ||
| 327 | + </div> | ||
| 328 | + </div> | ||
| 329 | + <div class="uk-grid k3"style="display: none"> | ||
| 330 | + <div class="uk-width-1-2"> | ||
| 331 | + <div class="uk-form-row"> | ||
| 332 | + <label class="uk-form-label">误点时间(分钟)</label> | ||
| 333 | + <div class="uk-form-controls"> | ||
| 334 | + <input value="{{sch.lateMinute}}" disabled> | ||
| 335 | + </div> | ||
| 336 | + </div> | ||
| 337 | + </div> | ||
| 338 | + <div class="uk-width-1-2"> | ||
| 339 | + <div class="uk-form-row"> | ||
| 340 | + <label class="uk-form-label">误点时间(分钟)</label> | ||
| 341 | + <div class="uk-form-controls"> | ||
| 342 | + <input value="6" name="wdsj" id="wdsj"> | ||
| 343 | + </div> | ||
| 344 | + </div> | ||
| 345 | + </div> | ||
| 346 | + </div> | ||
| 347 | + <div class="uk-grid k3" style="display: none"> | ||
| 348 | + <div class="uk-width-1-2"> | ||
| 349 | + <div class="uk-form-row"> | ||
| 350 | + <label class="uk-form-label">待发时间</label> | ||
| 351 | + <div class="uk-form-controls"> | ||
| 352 | + <input value="{{sch.fcsj}}" id="dfsj_0" disabled> | ||
| 353 | + </div> | ||
| 354 | + </div> | ||
| 355 | + </div> | ||
| 356 | + <div class="uk-width-1-2"> | ||
| 357 | + <div class="uk-form-row"> | ||
| 358 | + <label class="uk-form-label">待发时间</label> | ||
| 359 | + <div class="uk-form-controls"> | ||
| 360 | + <input value="{{sch.fcsj}} + {{sch.lateMinute}}" name="wd" id="dfsj" disabled> | ||
| 361 | + </div> | ||
| 362 | + </div> | ||
| 363 | + </div> | ||
| 364 | + </div> | ||
| 365 | + | ||
| 366 | + <div class="uk-grid"> | ||
| 367 | + <div class="uk-width-4-2"> | ||
| 368 | + <div class="uk-form-row"> | ||
| 369 | + <h3>方案优势</h3> | ||
| 370 | + </div> | ||
| 371 | + </div> | ||
| 372 | + </div> | ||
| 373 | + <div class="uk-grid"> | ||
| 374 | + <div class="uk-width-1-2"> | ||
| 375 | + <div class="uk-form-row"> | ||
| 376 | + <label class="uk-form-label">发现效率</label> | ||
| 377 | + <div class="uk-form-controls"> | ||
| 378 | + <i class="icon-user"></i> | ||
| 379 | + <input value="80%" disabled> | ||
| 380 | + </div> | ||
| 381 | + </div> | ||
| 382 | + </div> | ||
| 383 | + <div class="uk-width-1-2"> | ||
| 384 | + <div class="uk-form-row"> | ||
| 385 | + <label class="uk-form-label">处置效率</label> | ||
| 386 | + <div class="uk-form-controls"> | ||
| 387 | + <i class="icon-user"></i> | ||
| 388 | + <input value="50%" disabled> | ||
| 389 | + </div> | ||
| 390 | + </div> | ||
| 391 | + </div> | ||
| 392 | + </div> | ||
| 393 | + <div class="uk-grid"> | ||
| 394 | + | ||
| 395 | + </div> | ||
| 396 | + <div class="uk-modal-footer uk-text-right k1" style="display: none"> | ||
| 397 | + <button type="button" class="uk-button uk-modal-close">取消</button> | ||
| 398 | + <button type="submit" class="uk-button uk-button-primary"><i class="uk-icon-check"></i> 保存</button> | ||
| 399 | + </div> | ||
| 400 | +</script> | ||
| 401 | +<style> | ||
| 402 | + .uk-form-labels{ | ||
| 403 | + margin-top: 5px; | ||
| 404 | + } | ||
| 405 | +</style> | ||
| 406 | + | ||
| 407 | +<script id="home-icoe-img" type="text/html"> | ||
| 408 | + <img src="/real_control_v2/zndd/img/wd_0.png" style="width: 100%;height: 100%"> | ||
| 409 | +</script> | ||
| 410 | + | ||
| 411 | + | ||
| 412 | +<script id="buffer_config_form-temp1" type="text/html"> | ||
| 413 | + <div id="emergency_stop_panel"> | ||
| 414 | + <h3 class="btn_title_lines1"> | ||
| 415 | + <a class="uk-link-reset" >调整随到随发 </a> | ||
| 416 | + </h3> | ||
| 417 | + <div> | ||
| 418 | + <form class="uk-form" name="yjtkForm"> | ||
| 419 | + <table> | ||
| 420 | + <tr> | ||
| 421 | + <td colspan="2"> | ||
| 422 | + 是否启用 | ||
| 423 | + <select class="z-depth-input" name="enableYjtk"> | ||
| 424 | + <option value="0" >禁用</option> | ||
| 425 | + <option value="1" {{if enableYjtk}}selected{{/if}}>启用</option> | ||
| 426 | + </select> | ||
| 427 | + </td> | ||
| 428 | + </tr> | ||
| 429 | + <tr> | ||
| 430 | + <td colspan="2"> | ||
| 431 | + 时间 | ||
| 432 | + <input type="time" value="{{yjtkStart}}" name="yjtkStart" {{if !enableYjtk}}disabled{{/if}}>至 | ||
| 433 | + <input type="time" value="{{yjtkEnd}}" name="yjtkEnd" {{if !enableYjtk}}disabled{{/if}}> | ||
| 434 | + </td> | ||
| 435 | + </tr> | ||
| 436 | + <tr> | ||
| 437 | + <td> | ||
| 438 | + 上行停靠时间 | ||
| 439 | + <input type="number" value="{{upStopMinute}}" name="upStopMinute" {{if !enableYjtk}}disabled{{/if}}>分钟 | ||
| 440 | + </td> | ||
| 441 | + </tr> | ||
| 442 | + <tr> | ||
| 443 | + <td> | ||
| 444 | + 下行停靠时间 | ||
| 445 | + <input type="number" value="{{downStopMinute}}" name="downStopMinute" {{if !enableYjtk}}disabled{{/if}}>分钟 | ||
| 446 | + </td> | ||
| 447 | + </tr> | ||
| 448 | + </table> | ||
| 449 | + </form> | ||
| 450 | + </div> | ||
| 451 | + </div> | ||
| 452 | +</script> |