Commit a219b6f749e3759c7d58856e57529945e34bfe7a
1 parent
1e706ca6
1.线路版本变更前一天的电子路单异常情况解决
2.调度员点击安全驾驶反馈至dsm
Showing
5 changed files
with
612 additions
and
522 deletions
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
| 1 | package com.bsth.controller.realcontrol; | 1 | package com.bsth.controller.realcontrol; |
| 2 | 2 | ||
| 3 | +import java.io.ByteArrayOutputStream; | ||
| 4 | +import java.io.IOException; | ||
| 5 | +import java.io.InputStream; | ||
| 6 | +import java.io.OutputStream; | ||
| 7 | +import java.net.HttpURLConnection; | ||
| 8 | +import java.net.MalformedURLException; | ||
| 9 | +import java.net.URL; | ||
| 10 | +import java.net.URLEncoder; | ||
| 3 | import java.util.ArrayList; | 11 | import java.util.ArrayList; |
| 4 | import java.util.Arrays; | 12 | import java.util.Arrays; |
| 5 | import java.util.Collection; | 13 | import java.util.Collection; |
| @@ -7,6 +15,10 @@ import java.util.HashMap; | @@ -7,6 +15,10 @@ import java.util.HashMap; | ||
| 7 | import java.util.List; | 15 | import java.util.List; |
| 8 | import java.util.Map; | 16 | import java.util.Map; |
| 9 | 17 | ||
| 18 | +import com.bsth.entity.sys.SysUser; | ||
| 19 | +import com.bsth.security.util.SecurityUtils; | ||
| 20 | +import com.fasterxml.jackson.databind.ObjectMapper; | ||
| 21 | +import org.apache.commons.io.IOUtils; | ||
| 10 | import org.apache.commons.lang3.StringEscapeUtils; | 22 | import org.apache.commons.lang3.StringEscapeUtils; |
| 11 | import org.joda.time.format.DateTimeFormat; | 23 | import org.joda.time.format.DateTimeFormat; |
| 12 | import org.joda.time.format.DateTimeFormatter; | 24 | import org.joda.time.format.DateTimeFormatter; |
| @@ -711,7 +723,7 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -711,7 +723,7 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 711 | 723 | ||
| 712 | /** | 724 | /** |
| 713 | * 从历史库里删除临加班次 | 725 | * 从历史库里删除临加班次 |
| 714 | - * @param sch | 726 | + * @param param |
| 715 | * @return | 727 | * @return |
| 716 | */ | 728 | */ |
| 717 | @RequestMapping(value = "wxsb", method = RequestMethod.POST) | 729 | @RequestMapping(value = "wxsb", method = RequestMethod.POST) |
| @@ -728,4 +740,50 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -728,4 +740,50 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 728 | public Map<String, String> lineLevel(@RequestParam String idx){ | 740 | public Map<String, String> lineLevel(@RequestParam String idx){ |
| 729 | return scheduleRealInfoService.getLevelsByLines(Arrays.asList(idx.split(","))); | 741 | return scheduleRealInfoService.getLevelsByLines(Arrays.asList(idx.split(","))); |
| 730 | } | 742 | } |
| 743 | + | ||
| 744 | + /** | ||
| 745 | + * 反馈安全驾驶系统 | ||
| 746 | + * @param param | ||
| 747 | + * @return | ||
| 748 | + */ | ||
| 749 | + @RequestMapping(value = "ackDsm", method = RequestMethod.POST) | ||
| 750 | + public Map<String, Object> ackDsm(@RequestParam Map<String, Object> param){ | ||
| 751 | + Map<String, Object> res = new HashMap<>(); | ||
| 752 | + InputStream in = null; | ||
| 753 | + OutputStream out = null; | ||
| 754 | + SysUser user = SecurityUtils.getCurrentUser(); | ||
| 755 | + DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss"); | ||
| 756 | + StringBuilder url = new StringBuilder("http://211.95.61.66:9008/modules/dsmCheckTheRecord/addDsm?"), uri = new StringBuilder(); | ||
| 757 | + uri.append("ddyName=").append(user == null ? "admin" : user.getUserName()); | ||
| 758 | + uri.append("&checkTime=").append(fmt.print(System.currentTimeMillis())); | ||
| 759 | + uri.append("&nbbm=").append(param.get("nbbm")); | ||
| 760 | + uri.append("&starttime=").append(fmt.print(Long.parseLong(param.get("ts").toString()))); | ||
| 761 | + try { | ||
| 762 | + url.append(URLEncoder.encode(url.toString(), "UTF-8")); | ||
| 763 | + HttpURLConnection con = (HttpURLConnection)new URL(url.toString()).openConnection(); | ||
| 764 | + con.setDoInput(true); | ||
| 765 | + con.setRequestMethod("POST"); | ||
| 766 | + con.setConnectTimeout(5000); | ||
| 767 | + con.setReadTimeout(5000); | ||
| 768 | + con.setRequestProperty("keep-alive", "true"); | ||
| 769 | + con.setRequestProperty("accept", "*/*"); | ||
| 770 | + con.setRequestProperty("content-type", "application/x-www-form-urlencoded"); | ||
| 771 | + con.connect(); | ||
| 772 | + | ||
| 773 | + if (con.getResponseCode() == 200) { | ||
| 774 | + in = con.getInputStream(); | ||
| 775 | + ByteArrayOutputStream bout = new ByteArrayOutputStream(); | ||
| 776 | + IOUtils.copy(in, bout); | ||
| 777 | + Map<String, Object> map = new ObjectMapper().readValue(bout.toByteArray(), Map.class); | ||
| 778 | + } | ||
| 779 | + } catch (MalformedURLException e) { | ||
| 780 | + // TODO Auto-generated catch block | ||
| 781 | + e.printStackTrace(); | ||
| 782 | + } catch (IOException e) { | ||
| 783 | + // TODO Auto-generated catch block | ||
| 784 | + e.printStackTrace(); | ||
| 785 | + } | ||
| 786 | + | ||
| 787 | + return res; | ||
| 788 | + } | ||
| 731 | } | 789 | } |
src/main/java/com/bsth/repository/LineVersionsRepository.java
| 1 | -package com.bsth.repository; | ||
| 2 | - | ||
| 3 | -import java.util.Date; | ||
| 4 | -import java.util.List; | ||
| 5 | - | ||
| 6 | -import org.springframework.data.jpa.repository.Modifying; | ||
| 7 | -import org.springframework.data.jpa.repository.Query; | ||
| 8 | -import org.springframework.stereotype.Repository; | ||
| 9 | -import org.springframework.transaction.annotation.Transactional; | ||
| 10 | - | ||
| 11 | -import com.bsth.entity.Line; | ||
| 12 | -import com.bsth.entity.LineVersions; | ||
| 13 | - | ||
| 14 | -/** | ||
| 15 | - * | ||
| 16 | - * @Interface: LineVersionsRepository(线路Repository数据持久层接口) | ||
| 17 | - * | ||
| 18 | - * @Extends : BaseRepository | ||
| 19 | - * | ||
| 20 | - * @Description: TODO(线路版本Repository数据持久层接口) | ||
| 21 | - * | ||
| 22 | - * @Author bsth@lq | ||
| 23 | - * | ||
| 24 | - * @Version 公交调度系统BS版 0.1 | ||
| 25 | - * | ||
| 26 | - */ | ||
| 27 | -@Repository | ||
| 28 | -public interface LineVersionsRepository extends BaseRepository<LineVersions, Integer> { | ||
| 29 | - | ||
| 30 | - /** | ||
| 31 | - * 获取线路所有版本 | ||
| 32 | - */ | ||
| 33 | - @Query(value = " SELECT lv FROM LineVersions lv where lv.line.id = ?1") | ||
| 34 | - public List<LineVersions> findBylineId(int lineId); | ||
| 35 | - | ||
| 36 | - @Transactional | ||
| 37 | - @Modifying | ||
| 38 | - @Query(value = "UPDATE LineVersions lv set lv.line=?2, lv.lineCode=?3, lv.startDate=?4, lv.endDate=?5, " | ||
| 39 | - + "lv.versions=?6, lv.status=?7, lv.remark=?8, lv.name=?9 where lv.id=?1") | ||
| 40 | - public int update(Integer id, Line line, String lineCode, Date startDate, Date endDate, Integer versions, Integer status, | ||
| 41 | - String remark,String name); | ||
| 42 | - | ||
| 43 | - /** | ||
| 44 | - * 查询待更新线路的线路版本 | ||
| 45 | - */ | ||
| 46 | - @Query(value = "SELECT lv FROM LineVersions lv where lv.status = 2 and lv.startDate<sysdate() and lv.endDate > sysdate() and lv.isupdate != 1") | ||
| 47 | - public List<LineVersions> findupdated(); | ||
| 48 | - | ||
| 49 | - /** | ||
| 50 | - * 更改为历史版本 | ||
| 51 | - */ | ||
| 52 | - @Modifying | ||
| 53 | - @Query(value = "UPDATE LineVersions lv set lv.status=0 where lv.line.id=?1 and lv.lineCode=?2 and lv.status=1") | ||
| 54 | - public void updateOdlVersions(Integer lineId, String lineCode); | ||
| 55 | - | ||
| 56 | - /** | ||
| 57 | - * 更改为当前版本 | ||
| 58 | - */ | ||
| 59 | - @Modifying | ||
| 60 | - @Query(value = "UPDATE LineVersions lv set lv.status=1 where lv.line.id=?1 and lv.lineCode=?2 and lv.versions=?3") | ||
| 61 | - public void updateNewVersions(Integer lineId, String lineCode, Integer versions); | ||
| 62 | - | ||
| 63 | - | ||
| 64 | - /** | ||
| 65 | - * 查询线路最大线路版本 | ||
| 66 | - */ | ||
| 67 | - @Query(value = "select lv2 from LineVersions lv2 where lv2.line.id =?1 and lv2.versions=(SELECT max(lv.versions) FROM LineVersions lv where lv.line.id = ?1) ") | ||
| 68 | - public LineVersions findLineVersionsMax(int lineId); | ||
| 69 | - | ||
| 70 | - /** | ||
| 71 | - * 获取线路版本的上一个版本 | ||
| 72 | - */ | ||
| 73 | - @Query(value = " SELECT lv FROM LineVersions lv where lv.line.id = ?1 and lv.versions = (SELECT MAX(v.versions) FROM LineVersions v where v.line.id = ?1 and v.versions < ?2)") | ||
| 74 | - public LineVersions findBylineIdAndVersions(Integer id, Integer versions); | ||
| 75 | - | ||
| 76 | - | ||
| 77 | - /** | ||
| 78 | - * 获取线路版本的上一个版本 | ||
| 79 | - */ | ||
| 80 | - @Query(value = " SELECT lv.versions FROM LineVersions lv where lv.line.id = ?1 and lv.status=1") | ||
| 81 | - public Integer findCurrentVersion(Integer id); | ||
| 82 | - | ||
| 83 | - /** | ||
| 84 | - * 发布版本 | ||
| 85 | - */ | ||
| 86 | - @Transactional | ||
| 87 | - @Modifying | ||
| 88 | - @Query(value = "UPDATE LineVersions lv set lv.isupdate=1 where lv.id=?1 ") | ||
| 89 | - public int issueVersion(int id); | ||
| 90 | -} | 1 | +package com.bsth.repository; |
| 2 | + | ||
| 3 | +import java.util.Date; | ||
| 4 | +import java.util.List; | ||
| 5 | + | ||
| 6 | +import org.springframework.data.jpa.repository.Modifying; | ||
| 7 | +import org.springframework.data.jpa.repository.Query; | ||
| 8 | +import org.springframework.stereotype.Repository; | ||
| 9 | +import org.springframework.transaction.annotation.Transactional; | ||
| 10 | + | ||
| 11 | +import com.bsth.entity.Line; | ||
| 12 | +import com.bsth.entity.LineVersions; | ||
| 13 | + | ||
| 14 | +/** | ||
| 15 | + * | ||
| 16 | + * @Interface: LineVersionsRepository(线路Repository数据持久层接口) | ||
| 17 | + * | ||
| 18 | + * @Extends : BaseRepository | ||
| 19 | + * | ||
| 20 | + * @Description: TODO(线路版本Repository数据持久层接口) | ||
| 21 | + * | ||
| 22 | + * @Author bsth@lq | ||
| 23 | + * | ||
| 24 | + * @Version 公交调度系统BS版 0.1 | ||
| 25 | + * | ||
| 26 | + */ | ||
| 27 | +@Repository | ||
| 28 | +public interface LineVersionsRepository extends BaseRepository<LineVersions, Integer> { | ||
| 29 | + | ||
| 30 | + /** | ||
| 31 | + * 获取线路所有版本 | ||
| 32 | + */ | ||
| 33 | + @Query(value = " SELECT lv FROM LineVersions lv where lv.line.id = ?1") | ||
| 34 | + public List<LineVersions> findBylineId(int lineId); | ||
| 35 | + | ||
| 36 | + @Transactional | ||
| 37 | + @Modifying | ||
| 38 | + @Query(value = "UPDATE LineVersions lv set lv.line=?2, lv.lineCode=?3, lv.startDate=?4, lv.endDate=?5, " | ||
| 39 | + + "lv.versions=?6, lv.status=?7, lv.remark=?8, lv.name=?9 where lv.id=?1") | ||
| 40 | + public int update(Integer id, Line line, String lineCode, Date startDate, Date endDate, Integer versions, Integer status, | ||
| 41 | + String remark,String name); | ||
| 42 | + | ||
| 43 | + /** | ||
| 44 | + * 查询待更新线路的线路版本 | ||
| 45 | + */ | ||
| 46 | + @Query(value = "SELECT lv FROM LineVersions lv where lv.status = 2 and lv.startDate<sysdate() and lv.endDate > sysdate() and lv.isupdate != 1") | ||
| 47 | + public List<LineVersions> findupdated(); | ||
| 48 | + | ||
| 49 | + /** | ||
| 50 | + * 更改为历史版本 | ||
| 51 | + */ | ||
| 52 | + @Modifying | ||
| 53 | + @Query(value = "UPDATE LineVersions lv set lv.status=0 where lv.line.id=?1 and lv.lineCode=?2 and lv.status=1") | ||
| 54 | + public void updateOdlVersions(Integer lineId, String lineCode); | ||
| 55 | + | ||
| 56 | + /** | ||
| 57 | + * 更改为当前版本 | ||
| 58 | + */ | ||
| 59 | + @Modifying | ||
| 60 | + @Query(value = "UPDATE LineVersions lv set lv.status=1 where lv.line.id=?1 and lv.lineCode=?2 and lv.versions=?3") | ||
| 61 | + public void updateNewVersions(Integer lineId, String lineCode, Integer versions); | ||
| 62 | + | ||
| 63 | + | ||
| 64 | + /** | ||
| 65 | + * 查询线路最大线路版本 | ||
| 66 | + */ | ||
| 67 | + @Query(value = "select lv2 from LineVersions lv2 where lv2.line.id =?1 and lv2.versions=(SELECT max(lv.versions) FROM LineVersions lv where lv.line.id = ?1) ") | ||
| 68 | + public LineVersions findLineVersionsMax(int lineId); | ||
| 69 | + | ||
| 70 | + /** | ||
| 71 | + * 获取线路版本的上一个版本 | ||
| 72 | + */ | ||
| 73 | + @Query(value = " SELECT lv FROM LineVersions lv where lv.line.id = ?1 and lv.versions = (SELECT MAX(v.versions) FROM LineVersions v where v.line.id = ?1 and v.versions < ?2)") | ||
| 74 | + public LineVersions findBylineIdAndVersions(Integer id, Integer versions); | ||
| 75 | + | ||
| 76 | + | ||
| 77 | + /** | ||
| 78 | + * 获取线路版本的上一个版本 | ||
| 79 | + */ | ||
| 80 | + @Query(value = " SELECT lv.versions FROM LineVersions lv where lv.line.id = ?1 and lv.status=1") | ||
| 81 | + public Integer findCurrentVersion(Integer id); | ||
| 82 | + | ||
| 83 | + /** | ||
| 84 | + * 发布版本 | ||
| 85 | + */ | ||
| 86 | + @Transactional | ||
| 87 | + @Modifying | ||
| 88 | + @Query(value = "UPDATE LineVersions lv set lv.isupdate=1 where lv.id=?1 ") | ||
| 89 | + public int issueVersion(int id); | ||
| 90 | + | ||
| 91 | + /** | ||
| 92 | + * 获取指定日期的线路版本 | ||
| 93 | + */ | ||
| 94 | + @Query(value = " SELECT lv FROM LineVersions lv where FROM_UNIXTIME(?1) between lv.startDate and lv.endDate") | ||
| 95 | + public List<LineVersions> findLineVersionsByDate(int timestamp); | ||
| 96 | +} |
src/main/java/com/bsth/service/impl/TrafficManageServiceImpl.java
| @@ -27,6 +27,7 @@ import com.bsth.webService.trafficManage.org.tempuri.WebServiceSoap; | @@ -27,6 +27,7 @@ import com.bsth.webService.trafficManage.org.tempuri.WebServiceSoap; | ||
| 27 | import org.apache.commons.lang.StringEscapeUtils; | 27 | import org.apache.commons.lang.StringEscapeUtils; |
| 28 | import org.apache.commons.lang.StringUtils; | 28 | import org.apache.commons.lang.StringUtils; |
| 29 | import org.apache.commons.lang.time.DateUtils; | 29 | import org.apache.commons.lang.time.DateUtils; |
| 30 | +import org.joda.time.DateTime; | ||
| 30 | import org.slf4j.Logger; | 31 | import org.slf4j.Logger; |
| 31 | import org.slf4j.LoggerFactory; | 32 | import org.slf4j.LoggerFactory; |
| 32 | import org.springframework.beans.factory.annotation.Autowired; | 33 | import org.springframework.beans.factory.annotation.Autowired; |
| @@ -125,6 +126,12 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -125,6 +126,12 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 125 | @Autowired | 126 | @Autowired |
| 126 | private SendEmailController sendEmailController; | 127 | private SendEmailController sendEmailController; |
| 127 | 128 | ||
| 129 | + /** | ||
| 130 | + * 线路版本repository | ||
| 131 | + */ | ||
| 132 | + @Autowired | ||
| 133 | + private LineVersionsRepository lineVersionsRepository; | ||
| 134 | + | ||
| 128 | // 运管处上传接口 | 135 | // 运管处上传接口 |
| 129 | private com.bsth.webService.trafficManage.up.org.tempuri.WebServiceSoap webServiceSoapUp; | 136 | private com.bsth.webService.trafficManage.up.org.tempuri.WebServiceSoap webServiceSoapUp; |
| 130 | private WebServiceSoap ssop ; | 137 | private WebServiceSoap ssop ; |
| @@ -383,7 +390,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -383,7 +390,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 383 | String date = theDate == null ?sdfnyr.format(DateUtils.addDays(new Date(), -1)) : theDate; | 390 | String date = theDate == null ?sdfnyr.format(DateUtils.addDays(new Date(), -1)) : theDate; |
| 384 | StringBuffer sf = new StringBuffer(); | 391 | StringBuffer sf = new StringBuffer(); |
| 385 | Results results = null; | 392 | Results results = null; |
| 386 | - String str = "",xlbm; | 393 | + String str = "", xlbm = null, oldXlbm = null; |
| 387 | List<Map<String,Object>> listGroup = null; | 394 | List<Map<String,Object>> listGroup = null; |
| 388 | int scount = 0, ccount = 0; | 395 | int scount = 0, ccount = 0; |
| 389 | long start = System.currentTimeMillis(); | 396 | long start = System.currentTimeMillis(); |
| @@ -412,10 +419,19 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -412,10 +419,19 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 412 | code2line.put(line.getLineCode(), line); | 419 | code2line.put(line.getLineCode(), line); |
| 413 | } | 420 | } |
| 414 | 421 | ||
| 422 | + // 线路编码和线路版本映射(电子路单日期) | ||
| 423 | + Map<String, Integer> code2version = new HashMap<>(); | ||
| 424 | + Iterable<LineVersions> versions = lineVersionsRepository.findLineVersionsByDate((int)(DateTime.parse(theDate).getMillis() / 1000)); | ||
| 425 | + for (LineVersions version : versions) { | ||
| 426 | + code2version.put(version.getLineCode(), version.getVersions()); | ||
| 427 | + } | ||
| 428 | + | ||
| 429 | + Map<String, Integer> stationNumMap = null; | ||
| 415 | for(Map<String,Object> schRealInfo:listGroup){ | 430 | for(Map<String,Object> schRealInfo:listGroup){ |
| 416 | if(schRealInfo != null){ | 431 | if(schRealInfo != null){ |
| 417 | // 获取线路是否使用标识,如果未使用,则不查该线路数据 | 432 | // 获取线路是否使用标识,如果未使用,则不查该线路数据 |
| 418 | - Line line = code2line.get(schRealInfo.get("xlBm")+""); | 433 | + String lineCode = schRealInfo.get("xlBm")+""; |
| 434 | + Line line = code2line.get(lineCode); | ||
| 419 | if(line == null || line.getInUse() == null || line.getInUse() == 0){ | 435 | if(line == null || line.getInUse() == null || line.getInUse() == 0){ |
| 420 | ccount++; | 436 | ccount++; |
| 421 | continue; | 437 | continue; |
| @@ -425,7 +441,14 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -425,7 +441,14 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 425 | sf.append("<DLDS>"); | 441 | sf.append("<DLDS>"); |
| 426 | } | 442 | } |
| 427 | counter ++; | 443 | counter ++; |
| 428 | - xlbm = BasicData.lineCode2ShangHaiCodeMap.get(schRealInfo.get("xlBm")+""); | 444 | + xlbm = BasicData.lineCode2ShangHaiCodeMap.get(lineCode); |
| 445 | + if (!xlbm.equals(oldXlbm)) { | ||
| 446 | + oldXlbm = xlbm; | ||
| 447 | + Integer ver = code2version.get(lineCode); | ||
| 448 | + if (ver != null) { | ||
| 449 | + stationNumMap = getLsStationRoute(lineCode, ver); | ||
| 450 | + } | ||
| 451 | + } | ||
| 429 | 452 | ||
| 430 | sf.append("<DLD>"); | 453 | sf.append("<DLD>"); |
| 431 | sf.append("<RQ>").append(date).append("</RQ>"); | 454 | sf.append("<RQ>").append(date).append("</RQ>"); |
| @@ -460,7 +483,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -460,7 +483,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 460 | // 起点站的参数 | 483 | // 起点站的参数 |
| 461 | otherMap.put("stationMark","B"); | 484 | otherMap.put("stationMark","B"); |
| 462 | paramMap = packageYgcStationNumParam(scheduleRealInfo,otherMap); | 485 | paramMap = packageYgcStationNumParam(scheduleRealInfo,otherMap); |
| 463 | - sf.append("<FCZDXH>").append(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,null)).append("</FCZDXH>"); | 486 | + sf.append("<FCZDXH>").append(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,stationNumMap)).append("</FCZDXH>"); |
| 464 | sf.append("<FCZDBM>").append(scheduleRealInfo.getQdzCode()).append("</FCZDBM>"); | 487 | sf.append("<FCZDBM>").append(scheduleRealInfo.getQdzCode()).append("</FCZDBM>"); |
| 465 | sf.append("<JHFCSJ>").append(scheduleRealInfo.getFcsj()).append("</JHFCSJ>"); | 488 | sf.append("<JHFCSJ>").append(scheduleRealInfo.getFcsj()).append("</JHFCSJ>"); |
| 466 | sf.append("<DFSJ>").append(scheduleRealInfo.getDfsj()).append("</DFSJ>"); | 489 | sf.append("<DFSJ>").append(scheduleRealInfo.getDfsj()).append("</DFSJ>"); |
| @@ -470,7 +493,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -470,7 +493,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 470 | // 终点站的参数 | 493 | // 终点站的参数 |
| 471 | otherMap.put("stationMark","E"); | 494 | otherMap.put("stationMark","E"); |
| 472 | paramMap = packageYgcStationNumParam(scheduleRealInfo,otherMap); | 495 | paramMap = packageYgcStationNumParam(scheduleRealInfo,otherMap); |
| 473 | - sf.append("<DDZDXH>").append(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,null)).append("</DDZDXH>"); | 496 | + sf.append("<DDZDXH>").append(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,stationNumMap)).append("</DDZDXH>"); |
| 474 | sf.append("<DDZDBM>").append(scheduleRealInfo.getZdzCode()).append("</DDZDBM>"); | 497 | sf.append("<DDZDBM>").append(scheduleRealInfo.getZdzCode()).append("</DDZDBM>"); |
| 475 | sf.append("<JHDDSJ>").append(scheduleRealInfo.getZdsj()).append("</JHDDSJ>"); | 498 | sf.append("<JHDDSJ>").append(scheduleRealInfo.getZdsj()).append("</JHDDSJ>"); |
| 476 | sf.append("<SJDDSJ>").append(scheduleRealInfo.getZdsjActual()).append("</SJDDSJ>"); | 499 | sf.append("<SJDDSJ>").append(scheduleRealInfo.getZdsjActual()).append("</SJDDSJ>"); |
| @@ -499,6 +522,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | @@ -499,6 +522,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ | ||
| 499 | scount += invokeSetLD(str, counter); | 522 | scount += invokeSetLD(str, counter); |
| 500 | } | 523 | } |
| 501 | } catch (Exception e) { | 524 | } catch (Exception e) { |
| 525 | + e.printStackTrace(); | ||
| 502 | logger.error("setLD:", e); | 526 | logger.error("setLD:", e); |
| 503 | } finally { | 527 | } finally { |
| 504 | try { | 528 | try { |
src/main/resources/static/real_control_v2/js/safe_driv/safeDriv.js
| 1 | -/** | ||
| 2 | - * 安全驾驶相关 | ||
| 3 | - */ | ||
| 4 | -var gb_safe_driv = (function () { | ||
| 5 | - | ||
| 6 | - var codes = { | ||
| 7 | - 'B4': '未带口罩', | ||
| 8 | - 'A1': '手部违规', | ||
| 9 | - 'A2': '摄像头偏离', | ||
| 10 | - 'A3': '安全带', | ||
| 11 | - 'A4': '未戴袖章', | ||
| 12 | - 'A5': '眨眼/疲劳驾驶', | ||
| 13 | - 'A6': '打哈欠/打瞌睡', | ||
| 14 | - 'A7': '与人交谈', | ||
| 15 | - 'A9': '玩手机', | ||
| 16 | - 'A11': '抽烟', | ||
| 17 | - 'A12': '打电话' | ||
| 18 | - }; | ||
| 19 | - | ||
| 20 | - var path = 'http://211.95.61.66:9005/CurrentSafeDriving/'; | ||
| 21 | - | ||
| 22 | - var $wrap = $('.safe_driv_pop_wrap'); | ||
| 23 | - var max = 5; | ||
| 24 | - | ||
| 25 | - var pop = function (sd) { | ||
| 26 | - //时间格式化 | ||
| 27 | - var stm = moment(sd.ts); | ||
| 28 | - sd.timeStr = stm.format('HH时mm分ss秒'); | ||
| 29 | - //异常状态文本 | ||
| 30 | - if(sd.jctype == 'B4') | ||
| 31 | - sd.ycztText = codes[sd.jctype]; | ||
| 32 | - else | ||
| 33 | - sd.ycztText = codes[sd.yczltype]; | ||
| 34 | - var p; | ||
| 35 | - //图片地址 | ||
| 36 | - if(sd.jctype == 'B4') | ||
| 37 | - p = (sd.sbbh+'_A'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 38 | - else | ||
| 39 | - p = (sd.sbbh+'_'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 40 | - | ||
| 41 | - var url = stm.format('YYYYMMDD')+'/'+p+'/'+p; | ||
| 42 | - sd.url = path + url + '.gif'; | ||
| 43 | - | ||
| 44 | - var htmlStr = template('safe_driv_item-temp', sd); | ||
| 45 | - var items = $wrap.find('.safe_driv_pop'), len = items.length; | ||
| 46 | - if (len >= max) | ||
| 47 | - $wrap.find('.safe_driv_pop:lt(' + (len - max) + ')').remove(); | ||
| 48 | - | ||
| 49 | - $wrap.append(htmlStr); | ||
| 50 | - }; | ||
| 51 | - | ||
| 52 | - | ||
| 53 | - | ||
| 54 | - $wrap.on('click', '.safe_driv_pop', function () { | ||
| 55 | - var nbbm = $(this).data('nbbm'); | ||
| 56 | - var call_btn_html = '<button class="uk-button uk-button-mini uk-button-primary" ' + | ||
| 57 | - 'id="m_voip_call_btn_001" ' + | ||
| 58 | - 'type="button" ' + | ||
| 59 | - 'data-nbbm="'+nbbm+'">打电话</button>'; | ||
| 60 | - | ||
| 61 | - var title = $(this).data('title') + ' ' + call_btn_html; | ||
| 62 | - var url = $(this).data('url'); | ||
| 63 | - $(this).remove(); | ||
| 64 | - | ||
| 65 | - var lightbox = UIkit.lightbox.create([ | ||
| 66 | - {title: title, 'source': url} | ||
| 67 | - ], {keyboard: false}); | ||
| 68 | - | ||
| 69 | - lightbox.show(); | ||
| 70 | - }); | ||
| 71 | - | ||
| 72 | - var channelMap = { | ||
| 73 | - 'A1': 1, | ||
| 74 | - 'A2': 1, | ||
| 75 | - 'A3': 1, | ||
| 76 | - 'A9': 1, | ||
| 77 | - 'A4': 2, | ||
| 78 | - 'A5': 2, | ||
| 79 | - 'A6': 2, | ||
| 80 | - 'A7': 2 | ||
| 81 | - }; | ||
| 82 | - /* var showVedioModal = function (type) { | ||
| 83 | - var channel = channelMap[type]?channelMap[type]:1; | ||
| 84 | - open_modal_dom(vedioModal.replace('^^channel^^', channel) ,{}, {modal: false}); | ||
| 85 | - $('#ssspVedioModal #vedioIframe').on('load', function () { | ||
| 86 | - var that = this; | ||
| 87 | - setTimeout(function () { | ||
| 88 | - $(that).show(); | ||
| 89 | - $('#ssspVedioModal p.loading').remove(); | ||
| 90 | - }, 500); | ||
| 91 | - }); | ||
| 92 | - };*/ | ||
| 93 | - | ||
| 94 | - /* $(document).on('click', '#openVedioModalBtn', function () { | ||
| 95 | - showVedioModal($(this).data('type')); | ||
| 96 | - });*/ | ||
| 97 | - | ||
| 98 | - | ||
| 99 | - /* var showCallPhoneModal = function () { | ||
| 100 | - open_modal_dom(phoneModal ,{}, {modal: false}); | ||
| 101 | - $('#callPhoneModal #phoneIframe').on('load', function () { | ||
| 102 | - var that = this; | ||
| 103 | - var iframe = this.contentWindow.document.body; | ||
| 104 | - setTimeout(function () { | ||
| 105 | - //修改css | ||
| 106 | - $(iframe).find('.CallCenterToolBar').css('height', '200px').css('width', '100%').css('top', '10px').css('left', 'calc(50% - 148px)').css('box-shadow', 'none'); | ||
| 107 | - $(iframe).find('.CallCenterToolBar .top').css('display', 'none'); | ||
| 108 | - | ||
| 109 | - $('.toolBar td[data-action=call]', iframe).trigger('click'); | ||
| 110 | - | ||
| 111 | - //焦点 | ||
| 112 | - $('input#telNumber', iframe).focus(); | ||
| 113 | - | ||
| 114 | - $(that).show(); | ||
| 115 | - $('#callPhoneModal p.loading').remove(); | ||
| 116 | - }, 700); | ||
| 117 | - }); | ||
| 118 | - };*/ | ||
| 119 | - | ||
| 120 | - $(document).on('click', '#m_voip_call_btn_001', function () { | ||
| 121 | - //debugger | ||
| 122 | - var $lb = $('.uk-modal-dialog-lightbox'); | ||
| 123 | - var X = $lb.offset().top + $lb.height() - 240; | ||
| 124 | - var Y = $lb.offset().left + $lb.width(); | ||
| 125 | - | ||
| 126 | - var nbbm = $(this).data('nbbm'); | ||
| 127 | - | ||
| 128 | - var style = 'top: '+X+'px;left: '+Y+'px;height: '+$lb.height()+'px'; | ||
| 129 | - var htmlStr = template('voip_call_info_panel-temp', {style: style, nbbm: nbbm}); | ||
| 130 | - $lb.css('width', ($lb.width() + 260) + 'px'); | ||
| 131 | - $('.uk-lightbox-content', $lb.parent()).append(htmlStr); | ||
| 132 | - | ||
| 133 | - $(this).remove(); | ||
| 134 | - gb_call_phone.init(nbbm); | ||
| 135 | - }); | ||
| 136 | - | ||
| 137 | - | ||
| 138 | - return { | ||
| 139 | - pop: pop, | ||
| 140 | - safeCode: codes, | ||
| 141 | - urlPath: path//, | ||
| 142 | - //showVedioModal: showVedioModal | ||
| 143 | - } | 1 | +/** |
| 2 | + * 安全驾驶相关 | ||
| 3 | + */ | ||
| 4 | +var gb_safe_driv = (function () { | ||
| 5 | + | ||
| 6 | + var codes = { | ||
| 7 | + 'B4': '未带口罩', | ||
| 8 | + 'A1': '手部违规', | ||
| 9 | + 'A2': '摄像头偏离', | ||
| 10 | + 'A3': '安全带', | ||
| 11 | + 'A4': '未戴袖章', | ||
| 12 | + 'A5': '眨眼/疲劳驾驶', | ||
| 13 | + 'A6': '打哈欠/打瞌睡', | ||
| 14 | + 'A7': '与人交谈', | ||
| 15 | + 'A9': '玩手机', | ||
| 16 | + 'A11': '抽烟', | ||
| 17 | + 'A12': '打电话' | ||
| 18 | + }; | ||
| 19 | + | ||
| 20 | + var path = 'http://211.95.61.66:9005/CurrentSafeDriving/'; | ||
| 21 | + | ||
| 22 | + var $wrap = $('.safe_driv_pop_wrap'); | ||
| 23 | + var max = 5; | ||
| 24 | + | ||
| 25 | + var pop = function (sd) { | ||
| 26 | + //时间格式化 | ||
| 27 | + var stm = moment(sd.ts); | ||
| 28 | + sd.timeStr = stm.format('HH时mm分ss秒'); | ||
| 29 | + //异常状态文本 | ||
| 30 | + if(sd.jctype == 'B4') | ||
| 31 | + sd.ycztText = codes[sd.jctype]; | ||
| 32 | + else | ||
| 33 | + sd.ycztText = codes[sd.yczltype]; | ||
| 34 | + var p; | ||
| 35 | + //图片地址 | ||
| 36 | + if(sd.jctype == 'B4') | ||
| 37 | + p = (sd.sbbh+'_A'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 38 | + else | ||
| 39 | + p = (sd.sbbh+'_'+sd.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 40 | + | ||
| 41 | + var url = stm.format('YYYYMMDD')+'/'+p+'/'+p; | ||
| 42 | + sd.url = path + url + '.gif'; | ||
| 43 | + | ||
| 44 | + var htmlStr = template('safe_driv_item-temp', sd); | ||
| 45 | + var items = $wrap.find('.safe_driv_pop'), len = items.length; | ||
| 46 | + if (len >= max) | ||
| 47 | + $wrap.find('.safe_driv_pop:lt(' + (len - max) + ')').remove(); | ||
| 48 | + | ||
| 49 | + $wrap.append(htmlStr); | ||
| 50 | + }; | ||
| 51 | + | ||
| 52 | + | ||
| 53 | + | ||
| 54 | + $wrap.on('click', '.safe_driv_pop', function () { | ||
| 55 | + var nbbm = $(this).data('nbbm'), ts = $(this).data('ts'); | ||
| 56 | + var call_btn_html = '<button class="uk-button uk-button-mini uk-button-primary" ' + | ||
| 57 | + 'id="m_voip_call_btn_001" ' + | ||
| 58 | + 'type="button" ' + | ||
| 59 | + 'data-nbbm="'+nbbm+'">打电话</button>'; | ||
| 60 | + | ||
| 61 | + var title = $(this).data('title') + ' ' + call_btn_html; | ||
| 62 | + var url = $(this).data('url'); | ||
| 63 | + $(this).remove(); | ||
| 64 | + | ||
| 65 | + var lightbox = UIkit.lightbox.create([ | ||
| 66 | + {title: title, 'source': url} | ||
| 67 | + ], {keyboard: false}); | ||
| 68 | + | ||
| 69 | + lightbox.show(); | ||
| 70 | + | ||
| 71 | + $.post('/realSchedule/ackDsm', {ts : ts, nbbm : nbbm}, function(res) {}); | ||
| 72 | + }); | ||
| 73 | + | ||
| 74 | + var channelMap = { | ||
| 75 | + 'A1': 1, | ||
| 76 | + 'A2': 1, | ||
| 77 | + 'A3': 1, | ||
| 78 | + 'A9': 1, | ||
| 79 | + 'A4': 2, | ||
| 80 | + 'A5': 2, | ||
| 81 | + 'A6': 2, | ||
| 82 | + 'A7': 2 | ||
| 83 | + }; | ||
| 84 | + /* var showVedioModal = function (type) { | ||
| 85 | + var channel = channelMap[type]?channelMap[type]:1; | ||
| 86 | + open_modal_dom(vedioModal.replace('^^channel^^', channel) ,{}, {modal: false}); | ||
| 87 | + $('#ssspVedioModal #vedioIframe').on('load', function () { | ||
| 88 | + var that = this; | ||
| 89 | + setTimeout(function () { | ||
| 90 | + $(that).show(); | ||
| 91 | + $('#ssspVedioModal p.loading').remove(); | ||
| 92 | + }, 500); | ||
| 93 | + }); | ||
| 94 | + };*/ | ||
| 95 | + | ||
| 96 | + /* $(document).on('click', '#openVedioModalBtn', function () { | ||
| 97 | + showVedioModal($(this).data('type')); | ||
| 98 | + });*/ | ||
| 99 | + | ||
| 100 | + | ||
| 101 | + /* var showCallPhoneModal = function () { | ||
| 102 | + open_modal_dom(phoneModal ,{}, {modal: false}); | ||
| 103 | + $('#callPhoneModal #phoneIframe').on('load', function () { | ||
| 104 | + var that = this; | ||
| 105 | + var iframe = this.contentWindow.document.body; | ||
| 106 | + setTimeout(function () { | ||
| 107 | + //修改css | ||
| 108 | + $(iframe).find('.CallCenterToolBar').css('height', '200px').css('width', '100%').css('top', '10px').css('left', 'calc(50% - 148px)').css('box-shadow', 'none'); | ||
| 109 | + $(iframe).find('.CallCenterToolBar .top').css('display', 'none'); | ||
| 110 | + | ||
| 111 | + $('.toolBar td[data-action=call]', iframe).trigger('click'); | ||
| 112 | + | ||
| 113 | + //焦点 | ||
| 114 | + $('input#telNumber', iframe).focus(); | ||
| 115 | + | ||
| 116 | + $(that).show(); | ||
| 117 | + $('#callPhoneModal p.loading').remove(); | ||
| 118 | + }, 700); | ||
| 119 | + }); | ||
| 120 | + };*/ | ||
| 121 | + | ||
| 122 | + $(document).on('click', '#m_voip_call_btn_001', function () { | ||
| 123 | + //debugger | ||
| 124 | + var $lb = $('.uk-modal-dialog-lightbox'); | ||
| 125 | + var X = $lb.offset().top + $lb.height() - 240; | ||
| 126 | + var Y = $lb.offset().left + $lb.width(); | ||
| 127 | + | ||
| 128 | + var nbbm = $(this).data('nbbm'); | ||
| 129 | + | ||
| 130 | + var style = 'top: '+X+'px;left: '+Y+'px;height: '+$lb.height()+'px'; | ||
| 131 | + var htmlStr = template('voip_call_info_panel-temp', {style: style, nbbm: nbbm}); | ||
| 132 | + $lb.css('width', ($lb.width() + 260) + 'px'); | ||
| 133 | + $('.uk-lightbox-content', $lb.parent()).append(htmlStr); | ||
| 134 | + | ||
| 135 | + $(this).remove(); | ||
| 136 | + gb_call_phone.init(nbbm); | ||
| 137 | + }); | ||
| 138 | + | ||
| 139 | + | ||
| 140 | + return { | ||
| 141 | + pop: pop, | ||
| 142 | + safeCode: codes, | ||
| 143 | + urlPath: path//, | ||
| 144 | + //showVedioModal: showVedioModal | ||
| 145 | + } | ||
| 144 | })(); | 146 | })(); |
| 145 | \ No newline at end of file | 147 | \ No newline at end of file |
src/main/resources/static/real_control_v2/main.html
| 1 | -<!DOCTYPE html> | ||
| 2 | -<html lang="zh-cn"> | ||
| 3 | - | ||
| 4 | -<head> | ||
| 5 | - <meta charset="UTF-8"> | ||
| 6 | - <title>线路调度 v2.0</title> | ||
| 7 | - <!-- uikit core style--> | ||
| 8 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/css/uikit.gradient.min.css" /> | ||
| 9 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/notify.gradient.min.css" merge="plugins"/> | ||
| 10 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/tooltip.gradient.min.css" merge="plugins"/> | ||
| 11 | - <link rel="stylesheet" | ||
| 12 | - href="/real_control_v2/assets/plugins/uikit-2.27.1/components/autocomplete.gradient.min.css" merge="plugins"/> | ||
| 13 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/accordion.gradient.min.css" merge="plugins"/> | ||
| 14 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/slidenav.gradient.min.css" merge="plugins"/> | ||
| 15 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/sticky.gradient.min.css" merge="plugins"/> | ||
| 16 | - | ||
| 17 | - <!-- main style --> | ||
| 18 | - <link rel="stylesheet" href="/real_control_v2/css/main.css" /> | ||
| 19 | - <!-- north style --> | ||
| 20 | - <link rel="stylesheet" href="/real_control_v2/css/north.css" merge="custom_style"/> | ||
| 21 | - <!-- home style --> | ||
| 22 | - <link rel="stylesheet" href="/real_control_v2/css/home.css" merge="custom_style"/> | ||
| 23 | - <!-- line style --> | ||
| 24 | - <link rel="stylesheet" href="/real_control_v2/css/line_schedule.css" merge="custom_style"/> | ||
| 25 | - <link rel="stylesheet" href="/real_control_v2/css/line_schedule_table.css" merge="custom_style"/> | ||
| 26 | - | ||
| 27 | - <link rel="stylesheet" href="/real_control_v2/css/sch_autocomp_result.css" merge="custom_style"/> | ||
| 28 | - <!-- custom table --> | ||
| 29 | - <link rel="stylesheet" href="/real_control_v2/css/ct_table.css" merge="custom_style"/> | ||
| 30 | - <!-- jquery contextMenu style --> | ||
| 31 | - <link rel="stylesheet" href="/real_control_v2/assets/css/jquery.contextMenu.min.css" merge="plugins"/> | ||
| 32 | - <!-- formvalidation style --> | ||
| 33 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/formvalidation/formValidation.min.css" merge="plugins"/> | ||
| 34 | - <!-- js tree --> | ||
| 35 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/jstree/default/style.css" merge="plugins"/> | ||
| 36 | - <!-- tooltip css--> | ||
| 37 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.css" merge="plugins"/> | ||
| 38 | - <link rel="stylesheet" href="/real_control_v2/css/pace.css" merge="plugins"/> | ||
| 39 | - | ||
| 40 | - <link rel="stylesheet" href="/real_control_v2/css/modal_extend.css" merge="custom_style"/> | ||
| 41 | - <!-- perfect-scrollbar style --> | ||
| 42 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.css" merge="plugins"/> | ||
| 43 | - <!-- layer 3.0.3 --> | ||
| 44 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/layer3.0.3/skin/default/layer.css" merge="plugins"/> | ||
| 45 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/layer3.0.3/skin/moon/style.css" merge="plugins"/> | ||
| 46 | - | ||
| 47 | - <!-- flatpickr --> | ||
| 48 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.css" merge="plugins"> | ||
| 49 | - <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/themes/airbnb.css" merge="plugins"> | ||
| 50 | -</head> | ||
| 51 | - | ||
| 52 | -<body> | ||
| 53 | -<div class="north uk-width-1-1 uk-panel-box"> | ||
| 54 | - <div class="uk-grid uk-grid-match"> | ||
| 55 | - <div class="uk-width-4-10"> | ||
| 56 | - <div class="uk-panel"> | ||
| 57 | - <h2 class="north-logo"> | ||
| 58 | - <!--<i class="uk-icon-life-ring"></i>--> 浦东公交线路调度 | ||
| 59 | - </h2> | ||
| 60 | - </div> | ||
| 61 | - </div> | ||
| 62 | - <div class="uk-width-6-10"> | ||
| 63 | - <div class="uk-panel uk-width north-toolbar"></div> | ||
| 64 | - </div> | ||
| 65 | - </div> | ||
| 66 | - <div class="north-tabs"></div> | ||
| 67 | -</div> | ||
| 68 | - | ||
| 69 | -<div class="main-container"> | ||
| 70 | - <div class="load-panel"> | ||
| 71 | - <i class="uk-icon-spinner uk-icon-spin"></i> | ||
| 72 | - 正在加载数据 | ||
| 73 | - </div> | ||
| 74 | -</div> | ||
| 75 | - | ||
| 76 | -<script> | ||
| 77 | -/* var gb_beforeunload_fun = function (e) { | ||
| 78 | - var confirmationMessage = "\o/"; | ||
| 79 | - (e || window.event).returnValue = confirmationMessage; | ||
| 80 | - return confirmationMessage; | ||
| 81 | - } | ||
| 82 | - window.addEventListener("beforeunload", gb_beforeunload_fun);*/ | ||
| 83 | - | ||
| 84 | - delete window.exports; | ||
| 85 | - delete window.module; | ||
| 86 | - | ||
| 87 | - var ipcMain; | ||
| 88 | - //是否处于electron环境下 | ||
| 89 | - var isElectron = (function () { | ||
| 90 | - try { | ||
| 91 | - if (process.versions.electron) | ||
| 92 | - return true; | ||
| 93 | - else | ||
| 94 | - return false; | ||
| 95 | - } | ||
| 96 | - catch (e) { | ||
| 97 | - return false; | ||
| 98 | - } | ||
| 99 | - })(); | ||
| 100 | - | ||
| 101 | - if (isElectron) { | ||
| 102 | - var link = document.createElement("link"); | ||
| 103 | - link.type = "text/css"; | ||
| 104 | - link.rel = "stylesheet"; | ||
| 105 | - link.href = "/real_control_v2/css/electron.css"; | ||
| 106 | - document.getElementsByTagName("head")[0].appendChild(link); | ||
| 107 | - | ||
| 108 | - ipcMain = require('electron').ipcRenderer; | ||
| 109 | - } | ||
| 110 | -</script> | ||
| 111 | - | ||
| 112 | -<!-- 地图相关 --> | ||
| 113 | -<script src="http://api.map.baidu.com/api?v=2.0&ak=IGGrr4UjwIYzatoCRFKEL8sT"></script> | ||
| 114 | -<script src="http://api.map.baidu.com/library/TrafficControl/1.4/src/TrafficControl_min.js"></script> | ||
| 115 | -<script src="/assets/js/baidu//MarkerClusterer.js" merge="plugins"></script> | ||
| 116 | -<script src="/assets/js/TransGPS.js" merge="plugins"></script> | ||
| 117 | -<!-- 高德 --> | ||
| 118 | -<script src="http://webapi.amap.com/maps?v=1.3&key=16cb1c5043847e09ef9edafdd77befda"></script> | ||
| 119 | -<!-- jquery --> | ||
| 120 | -<script src="/real_control_v2/assets/js/jquery.min.js"></script> | ||
| 121 | -<!-- jquery actual --> | ||
| 122 | -<script src="/real_control_v2/assets/js/jquery.actual.min.js" merge="plugins"></script> | ||
| 123 | -<!-- jquery.serializejson JSON序列化插件 --> | ||
| 124 | -<script src="/assets/plugins/jquery.serializejson.js" merge="plugins"></script> | ||
| 125 | -<!-- moment.js 日期处理类库 --> | ||
| 126 | -<script src="/real_control_v2/assets/plugins/moment/moment.min.js"></script> | ||
| 127 | -<script src="/real_control_v2/assets/plugins/moment/zh-cn.js"></script> | ||
| 128 | - | ||
| 129 | -<!-- flatpickr --> | ||
| 130 | -<script src="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.js" merge="plugins"></script> | ||
| 131 | -<script src="/real_control_v2/assets/plugins/flatpickr/l10n/zh.js" merge="plugins"></script> | ||
| 132 | - | ||
| 133 | -<!-- perfect-scrollbar --> | ||
| 134 | -<script src="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.jquery.js" merge="plugins"></script> | ||
| 135 | -<!-- common js --> | ||
| 136 | -<script src="/real_control_v2/js/common.js"></script> | ||
| 137 | -<!-- art-template 模版引擎 --> | ||
| 138 | -<script src="/assets/plugins/template.js" merge="plugins"></script> | ||
| 139 | -<!-- d3 --> | ||
| 140 | -<script src="/assets/js/d3.min.js"></script> | ||
| 141 | -<!-- EventProxy --> | ||
| 142 | -<script src="/assets/js/eventproxy.js"></script> | ||
| 143 | -<!-- main js --> | ||
| 144 | -<script src="/real_control_v2/js/main.js"></script> | ||
| 145 | -<!-- uikit core --> | ||
| 146 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/uikit.min.js" merge="uikit_js"></script> | ||
| 147 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/notify.min.js" merge="uikit_js"></script> | ||
| 148 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/pagination.min.js" merge="uikit_js"></script> | ||
| 149 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/tooltip.min.js" merge="uikit_js"></script> | ||
| 150 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/autocomplete.min.js" merge="uikit_js"></script> | ||
| 151 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/accordion.min.js" merge="uikit_js"></script> | ||
| 152 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/timepicker.min.js" merge="uikit_js"></script> | ||
| 153 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/lightbox.min.js" merge="uikit_js"></script> | ||
| 154 | -<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/sticky.min.js" merge="uikit_js"></script> | ||
| 155 | - | ||
| 156 | - | ||
| 157 | -<!-- jquery contextMenu --> | ||
| 158 | -<script src="/real_control_v2/assets/js/jquery.contextMenu.min.js" merge="plugins"></script> | ||
| 159 | -<script src="/real_control_v2/assets/js/jquery.ui.position.min.js" merge="plugins"></script> | ||
| 160 | -<!-- formvalidation- --> | ||
| 161 | -<script src="/real_control_v2/assets/plugins/formvalidation/formValidation.min.js" merge="plugins"></script> | ||
| 162 | -<script src="/real_control_v2/assets/plugins/formvalidation/zh_CN.js" merge="plugins"></script> | ||
| 163 | -<script src="/real_control_v2/assets/plugins/formvalidation/uikit.min.js" merge="plugins"></script> | ||
| 164 | -<!-- js tree --> | ||
| 165 | -<script src="/real_control_v2/assets/plugins/jstree/jstree.min.js" merge="plugins"></script> | ||
| 166 | -<!-- simple pinyin --> | ||
| 167 | -<script src="/assets/plugins/pinyin.js" merge="plugins"></script> | ||
| 168 | -<!-- qtip --> | ||
| 169 | -<script src="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.js" merge="plugins"></script> | ||
| 170 | -<!-- layer 3.0.3 --> | ||
| 171 | -<script src="/real_control_v2/assets/plugins/layer3.0.3/layer.js" merge="plugins"></script> | ||
| 172 | - | ||
| 173 | -<!-- 数据 --> | ||
| 174 | -<script src="/real_control_v2/js/data/data_basic.js" merge="custom_js"></script> | ||
| 175 | -<script src="/real_control_v2/js/data/data_gps.js" merge="custom_js"></script> | ||
| 176 | -<script src="/real_control_v2/js/data/gps_abnormal.js" merge="custom_js"></script> | ||
| 177 | -<script src="/real_control_v2/js/data/data_line_config.js" merge="custom_js"></script> | ||
| 178 | -<!-- 线路模拟图 --> | ||
| 179 | -<script src="/real_control_v2/js/utils/svg_chart.js" merge="custom_js"></script> | ||
| 180 | -<script src="/real_control_v2/js/utils/svg_data_convert.js" merge="custom_js"></script> | ||
| 181 | -<script src="/real_control_v2/js/utils/svg_chart_tooltip.js" merge="custom_js"></script> | ||
| 182 | -<script src="/real_control_v2/js/utils/svg_chart_map.js" merge="custom_js"></script> | ||
| 183 | - | ||
| 184 | -<!-- custom table js --> | ||
| 185 | -<script src="/real_control_v2/js/utils/ct_table.js" merge="custom_js"></script> | ||
| 186 | -<!-- north js --> | ||
| 187 | -<script src="/real_control_v2/js/north/toolbar.js" merge="custom_js"></script> | ||
| 188 | -<script src="/real_control_v2/js/north/tabs.js" merge="custom_js"></script> | ||
| 189 | -<script src="/real_control_v2/js/north/second_timer.js" merge="custom_js"></script> | ||
| 190 | -<!-- home js --> | ||
| 191 | -<script src="/real_control_v2/js/home/layout.js" merge="custom_js"></script> | ||
| 192 | -<script src="/real_control_v2/js/home/line_panel.js" merge="custom_js"></script> | ||
| 193 | -<script src="/real_control_v2/js/home/context_menu.js" merge="custom_js"></script> | ||
| 194 | -<!-- line schedule js --> | ||
| 195 | -<script src="/real_control_v2/js/line_schedule/legend.js" merge="custom_js"></script> | ||
| 196 | -<script src="/real_control_v2/js/line_schedule/layout.js" merge="custom_js"></script> | ||
| 197 | -<script src="/real_control_v2/js/line_schedule/sch_table.js" merge="custom_js"></script> | ||
| 198 | -<script src="/real_control_v2/js/line_schedule/context_menu.js" merge="custom_js"></script> | ||
| 199 | -<script src="/real_control_v2/js/line_schedule/dbclick.js" merge="custom_js"></script> | ||
| 200 | -<script src="/real_control_v2/js/line_schedule/search.js" merge="custom_js"></script> | ||
| 201 | -<script src="/real_control_v2/js/line_schedule/badge_tooltip.js" merge="custom_js"></script> | ||
| 202 | -<script src="/real_control_v2/js/line_schedule/mileage_count.js" merge="custom_js"></script> | ||
| 203 | - | ||
| 204 | -<!-- 字典相关 --> | ||
| 205 | -<script src="/assets/js/dictionary.js" merge="custom_js"></script> | ||
| 206 | -<!-- websocket --> | ||
| 207 | -<script src="/real_control_v2/assets/plugins/sockjs-client/sockjs.min.js"></script> | ||
| 208 | -<script src="/real_control_v2/js/websocket/sch_websocket.js" merge="custom_js"></script> | ||
| 209 | -<!-- tts --> | ||
| 210 | -<script src="/real_control_v2/js/utils/tts.js" merge="custom_js"></script> | ||
| 211 | - | ||
| 212 | -<!-- echart --> | ||
| 213 | -<script src="/real_control_v2/assets/echarts-3/echarts.js" merge="plugins"></script> | ||
| 214 | -<!-- Geolib --> | ||
| 215 | -<script src="/real_control_v2/geolib/geolib.js" merge="plugins"></script> | ||
| 216 | - | ||
| 217 | -<script src="/real_control_v2/js/signal_state/signal_state.js" merge="custom_js"></script> | ||
| 218 | -<script src="/real_control_v2/js/utils/dispatch_pattern.js" merge="custom_js"></script> | ||
| 219 | - | ||
| 220 | -<!-- 处理表单片段嵌入问题 --> | ||
| 221 | -<script src="/real_control_v2/js/forms/form_embed.js" merge="custom_js"></script> | ||
| 222 | -<!-- 模态框扩展 --> | ||
| 223 | -<script src="/real_control_v2/js/modal_extend.js" merge="custom_js"></script> | ||
| 224 | - | ||
| 225 | -<!-- #### 安全驾驶 start ### --> | ||
| 226 | -<div class="safe_driv_pop_wrap" ></div> | ||
| 227 | -<script id="safe_driv_item-temp" type="text/html"> | ||
| 228 | - <div class="safe_driv_pop uk-animation-slide-bottom" data-nbbm="{{clzbh}}" data-type="{{yczltype}}" data-title="{{clzbh}} {{timeStr}} {{ycztText}}" data-url="{{url}}"> | ||
| 229 | - <div> | ||
| 230 | - <span class="title">异常 {{clzbh}}</span> | ||
| 231 | - <span class="text"> {{timeStr}} 出现违规驾驶({{ycztText}})</span> | ||
| 232 | - <span class="desc">--安全驾驶监管平台</span> | ||
| 233 | - </div> | ||
| 234 | - </div> | ||
| 235 | -</script> | ||
| 236 | - | ||
| 237 | -<script src="/real_control_v2/js/safe_driv/safeDriv.js" merge="custom_js"></script> | ||
| 238 | -<!-- #### 安全驾驶 end ### --> | ||
| 239 | - | ||
| 240 | -<!-- 打电话 --> | ||
| 241 | -<script src="http://114.80.178.12:9003/forward/voip/callCenterJs"></script> | ||
| 242 | -<script src="http://114.80.178.12:9003/forward/voip/phonePluginJs"></script> | ||
| 243 | -<script src="/real_control_v2/js/safe_driv/call_phone.js" ></script> | ||
| 244 | - | ||
| 245 | -<script id="voip_call_info_panel-temp" type="text/html"> | ||
| 246 | - <div class="voip_call_info_panel" style="{{style}}"> | ||
| 247 | - <p class="_title">VOIP</p> | ||
| 248 | - <form class="uk-form uk-form-horizontal"> | ||
| 249 | - | ||
| 250 | - <div class="uk-form-row"> | ||
| 251 | - <label class="uk-form-label" >工号:</label> | ||
| 252 | - <div class="uk-form-controls"> | ||
| 253 | - <input type="text" name="agentID" value="1002" disabled> | ||
| 254 | - </div> | ||
| 255 | - </div> | ||
| 256 | - <div class="uk-form-row"> | ||
| 257 | - <label class="uk-form-label" ">分机号:</label> | ||
| 258 | - <div class="uk-form-controls"> | ||
| 259 | - <input type="text" name="dn" value="" > | ||
| 260 | - </div> | ||
| 261 | - </div> | ||
| 262 | - <div class="uk-form-row"> | ||
| 263 | - <label class="uk-form-label" >自编号:</label> | ||
| 264 | - <div class="uk-form-controls"> | ||
| 265 | - <input type="text" value="{{nbbm}}" disabled> | ||
| 266 | - </div> | ||
| 267 | - </div> | ||
| 268 | - <div class="uk-form-row"> | ||
| 269 | - <label class="uk-form-label" >SIM号:</label> | ||
| 270 | - <div class="uk-form-controls"> | ||
| 271 | - <input type="text" name="simNo" disabled> | ||
| 272 | - </div> | ||
| 273 | - </div> | ||
| 274 | - <hr> | ||
| 275 | - <h4 class="state_txt"> | ||
| 276 | - <button class="uk-button uk-button-large" type="button" disabled>获取SIM卡号...</button> | ||
| 277 | - </h4> | ||
| 278 | - </form> | ||
| 279 | - </div> | ||
| 280 | -</script> | ||
| 281 | -</body> | ||
| 282 | - | ||
| 283 | -</html> | 1 | +<!DOCTYPE html> |
| 2 | +<html lang="zh-cn"> | ||
| 3 | + | ||
| 4 | +<head> | ||
| 5 | + <meta charset="UTF-8"> | ||
| 6 | + <title>线路调度 v2.0</title> | ||
| 7 | + <!-- uikit core style--> | ||
| 8 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/css/uikit.gradient.min.css" /> | ||
| 9 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/notify.gradient.min.css" merge="plugins"/> | ||
| 10 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/tooltip.gradient.min.css" merge="plugins"/> | ||
| 11 | + <link rel="stylesheet" | ||
| 12 | + href="/real_control_v2/assets/plugins/uikit-2.27.1/components/autocomplete.gradient.min.css" merge="plugins"/> | ||
| 13 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/accordion.gradient.min.css" merge="plugins"/> | ||
| 14 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/slidenav.gradient.min.css" merge="plugins"/> | ||
| 15 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/sticky.gradient.min.css" merge="plugins"/> | ||
| 16 | + | ||
| 17 | + <!-- main style --> | ||
| 18 | + <link rel="stylesheet" href="/real_control_v2/css/main.css" /> | ||
| 19 | + <!-- north style --> | ||
| 20 | + <link rel="stylesheet" href="/real_control_v2/css/north.css" merge="custom_style"/> | ||
| 21 | + <!-- home style --> | ||
| 22 | + <link rel="stylesheet" href="/real_control_v2/css/home.css" merge="custom_style"/> | ||
| 23 | + <!-- line style --> | ||
| 24 | + <link rel="stylesheet" href="/real_control_v2/css/line_schedule.css" merge="custom_style"/> | ||
| 25 | + <link rel="stylesheet" href="/real_control_v2/css/line_schedule_table.css" merge="custom_style"/> | ||
| 26 | + | ||
| 27 | + <link rel="stylesheet" href="/real_control_v2/css/sch_autocomp_result.css" merge="custom_style"/> | ||
| 28 | + <!-- custom table --> | ||
| 29 | + <link rel="stylesheet" href="/real_control_v2/css/ct_table.css" merge="custom_style"/> | ||
| 30 | + <!-- jquery contextMenu style --> | ||
| 31 | + <link rel="stylesheet" href="/real_control_v2/assets/css/jquery.contextMenu.min.css" merge="plugins"/> | ||
| 32 | + <!-- formvalidation style --> | ||
| 33 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/formvalidation/formValidation.min.css" merge="plugins"/> | ||
| 34 | + <!-- js tree --> | ||
| 35 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/jstree/default/style.css" merge="plugins"/> | ||
| 36 | + <!-- tooltip css--> | ||
| 37 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.css" merge="plugins"/> | ||
| 38 | + <link rel="stylesheet" href="/real_control_v2/css/pace.css" merge="plugins"/> | ||
| 39 | + | ||
| 40 | + <link rel="stylesheet" href="/real_control_v2/css/modal_extend.css" merge="custom_style"/> | ||
| 41 | + <!-- perfect-scrollbar style --> | ||
| 42 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.css" merge="plugins"/> | ||
| 43 | + <!-- layer 3.0.3 --> | ||
| 44 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/layer3.0.3/skin/default/layer.css" merge="plugins"/> | ||
| 45 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/layer3.0.3/skin/moon/style.css" merge="plugins"/> | ||
| 46 | + | ||
| 47 | + <!-- flatpickr --> | ||
| 48 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.css" merge="plugins"> | ||
| 49 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/themes/airbnb.css" merge="plugins"> | ||
| 50 | +</head> | ||
| 51 | + | ||
| 52 | +<body> | ||
| 53 | +<div class="north uk-width-1-1 uk-panel-box"> | ||
| 54 | + <div class="uk-grid uk-grid-match"> | ||
| 55 | + <div class="uk-width-4-10"> | ||
| 56 | + <div class="uk-panel"> | ||
| 57 | + <h2 class="north-logo"> | ||
| 58 | + <!--<i class="uk-icon-life-ring"></i>--> 浦东公交线路调度 | ||
| 59 | + </h2> | ||
| 60 | + </div> | ||
| 61 | + </div> | ||
| 62 | + <div class="uk-width-6-10"> | ||
| 63 | + <div class="uk-panel uk-width north-toolbar"></div> | ||
| 64 | + </div> | ||
| 65 | + </div> | ||
| 66 | + <div class="north-tabs"></div> | ||
| 67 | +</div> | ||
| 68 | + | ||
| 69 | +<div class="main-container"> | ||
| 70 | + <div class="load-panel"> | ||
| 71 | + <i class="uk-icon-spinner uk-icon-spin"></i> | ||
| 72 | + 正在加载数据 | ||
| 73 | + </div> | ||
| 74 | +</div> | ||
| 75 | + | ||
| 76 | +<script> | ||
| 77 | +/* var gb_beforeunload_fun = function (e) { | ||
| 78 | + var confirmationMessage = "\o/"; | ||
| 79 | + (e || window.event).returnValue = confirmationMessage; | ||
| 80 | + return confirmationMessage; | ||
| 81 | + } | ||
| 82 | + window.addEventListener("beforeunload", gb_beforeunload_fun);*/ | ||
| 83 | + | ||
| 84 | + delete window.exports; | ||
| 85 | + delete window.module; | ||
| 86 | + | ||
| 87 | + var ipcMain; | ||
| 88 | + //是否处于electron环境下 | ||
| 89 | + var isElectron = (function () { | ||
| 90 | + try { | ||
| 91 | + if (process.versions.electron) | ||
| 92 | + return true; | ||
| 93 | + else | ||
| 94 | + return false; | ||
| 95 | + } | ||
| 96 | + catch (e) { | ||
| 97 | + return false; | ||
| 98 | + } | ||
| 99 | + })(); | ||
| 100 | + | ||
| 101 | + if (isElectron) { | ||
| 102 | + var link = document.createElement("link"); | ||
| 103 | + link.type = "text/css"; | ||
| 104 | + link.rel = "stylesheet"; | ||
| 105 | + link.href = "/real_control_v2/css/electron.css"; | ||
| 106 | + document.getElementsByTagName("head")[0].appendChild(link); | ||
| 107 | + | ||
| 108 | + ipcMain = require('electron').ipcRenderer; | ||
| 109 | + } | ||
| 110 | +</script> | ||
| 111 | + | ||
| 112 | +<!-- 地图相关 --> | ||
| 113 | +<script src="http://api.map.baidu.com/api?v=2.0&ak=IGGrr4UjwIYzatoCRFKEL8sT"></script> | ||
| 114 | +<script src="http://api.map.baidu.com/library/TrafficControl/1.4/src/TrafficControl_min.js"></script> | ||
| 115 | +<script src="/assets/js/baidu//MarkerClusterer.js" merge="plugins"></script> | ||
| 116 | +<script src="/assets/js/TransGPS.js" merge="plugins"></script> | ||
| 117 | +<!-- 高德 --> | ||
| 118 | +<script src="http://webapi.amap.com/maps?v=1.3&key=16cb1c5043847e09ef9edafdd77befda"></script> | ||
| 119 | +<!-- jquery --> | ||
| 120 | +<script src="/real_control_v2/assets/js/jquery.min.js"></script> | ||
| 121 | +<!-- jquery actual --> | ||
| 122 | +<script src="/real_control_v2/assets/js/jquery.actual.min.js" merge="plugins"></script> | ||
| 123 | +<!-- jquery.serializejson JSON序列化插件 --> | ||
| 124 | +<script src="/assets/plugins/jquery.serializejson.js" merge="plugins"></script> | ||
| 125 | +<!-- moment.js 日期处理类库 --> | ||
| 126 | +<script src="/real_control_v2/assets/plugins/moment/moment.min.js"></script> | ||
| 127 | +<script src="/real_control_v2/assets/plugins/moment/zh-cn.js"></script> | ||
| 128 | + | ||
| 129 | +<!-- flatpickr --> | ||
| 130 | +<script src="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.js" merge="plugins"></script> | ||
| 131 | +<script src="/real_control_v2/assets/plugins/flatpickr/l10n/zh.js" merge="plugins"></script> | ||
| 132 | + | ||
| 133 | +<!-- perfect-scrollbar --> | ||
| 134 | +<script src="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.jquery.js" merge="plugins"></script> | ||
| 135 | +<!-- common js --> | ||
| 136 | +<script src="/real_control_v2/js/common.js"></script> | ||
| 137 | +<!-- art-template 模版引擎 --> | ||
| 138 | +<script src="/assets/plugins/template.js" merge="plugins"></script> | ||
| 139 | +<!-- d3 --> | ||
| 140 | +<script src="/assets/js/d3.min.js"></script> | ||
| 141 | +<!-- EventProxy --> | ||
| 142 | +<script src="/assets/js/eventproxy.js"></script> | ||
| 143 | +<!-- main js --> | ||
| 144 | +<script src="/real_control_v2/js/main.js"></script> | ||
| 145 | +<!-- uikit core --> | ||
| 146 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/uikit.min.js" merge="uikit_js"></script> | ||
| 147 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/notify.min.js" merge="uikit_js"></script> | ||
| 148 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/pagination.min.js" merge="uikit_js"></script> | ||
| 149 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/tooltip.min.js" merge="uikit_js"></script> | ||
| 150 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/autocomplete.min.js" merge="uikit_js"></script> | ||
| 151 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/accordion.min.js" merge="uikit_js"></script> | ||
| 152 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/timepicker.min.js" merge="uikit_js"></script> | ||
| 153 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/lightbox.min.js" merge="uikit_js"></script> | ||
| 154 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/sticky.min.js" merge="uikit_js"></script> | ||
| 155 | + | ||
| 156 | + | ||
| 157 | +<!-- jquery contextMenu --> | ||
| 158 | +<script src="/real_control_v2/assets/js/jquery.contextMenu.min.js" merge="plugins"></script> | ||
| 159 | +<script src="/real_control_v2/assets/js/jquery.ui.position.min.js" merge="plugins"></script> | ||
| 160 | +<!-- formvalidation- --> | ||
| 161 | +<script src="/real_control_v2/assets/plugins/formvalidation/formValidation.min.js" merge="plugins"></script> | ||
| 162 | +<script src="/real_control_v2/assets/plugins/formvalidation/zh_CN.js" merge="plugins"></script> | ||
| 163 | +<script src="/real_control_v2/assets/plugins/formvalidation/uikit.min.js" merge="plugins"></script> | ||
| 164 | +<!-- js tree --> | ||
| 165 | +<script src="/real_control_v2/assets/plugins/jstree/jstree.min.js" merge="plugins"></script> | ||
| 166 | +<!-- simple pinyin --> | ||
| 167 | +<script src="/assets/plugins/pinyin.js" merge="plugins"></script> | ||
| 168 | +<!-- qtip --> | ||
| 169 | +<script src="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.js" merge="plugins"></script> | ||
| 170 | +<!-- layer 3.0.3 --> | ||
| 171 | +<script src="/real_control_v2/assets/plugins/layer3.0.3/layer.js" merge="plugins"></script> | ||
| 172 | + | ||
| 173 | +<!-- 数据 --> | ||
| 174 | +<script src="/real_control_v2/js/data/data_basic.js" merge="custom_js"></script> | ||
| 175 | +<script src="/real_control_v2/js/data/data_gps.js" merge="custom_js"></script> | ||
| 176 | +<script src="/real_control_v2/js/data/gps_abnormal.js" merge="custom_js"></script> | ||
| 177 | +<script src="/real_control_v2/js/data/data_line_config.js" merge="custom_js"></script> | ||
| 178 | +<!-- 线路模拟图 --> | ||
| 179 | +<script src="/real_control_v2/js/utils/svg_chart.js" merge="custom_js"></script> | ||
| 180 | +<script src="/real_control_v2/js/utils/svg_data_convert.js" merge="custom_js"></script> | ||
| 181 | +<script src="/real_control_v2/js/utils/svg_chart_tooltip.js" merge="custom_js"></script> | ||
| 182 | +<script src="/real_control_v2/js/utils/svg_chart_map.js" merge="custom_js"></script> | ||
| 183 | + | ||
| 184 | +<!-- custom table js --> | ||
| 185 | +<script src="/real_control_v2/js/utils/ct_table.js" merge="custom_js"></script> | ||
| 186 | +<!-- north js --> | ||
| 187 | +<script src="/real_control_v2/js/north/toolbar.js" merge="custom_js"></script> | ||
| 188 | +<script src="/real_control_v2/js/north/tabs.js" merge="custom_js"></script> | ||
| 189 | +<script src="/real_control_v2/js/north/second_timer.js" merge="custom_js"></script> | ||
| 190 | +<!-- home js --> | ||
| 191 | +<script src="/real_control_v2/js/home/layout.js" merge="custom_js"></script> | ||
| 192 | +<script src="/real_control_v2/js/home/line_panel.js" merge="custom_js"></script> | ||
| 193 | +<script src="/real_control_v2/js/home/context_menu.js" merge="custom_js"></script> | ||
| 194 | +<!-- line schedule js --> | ||
| 195 | +<script src="/real_control_v2/js/line_schedule/legend.js" merge="custom_js"></script> | ||
| 196 | +<script src="/real_control_v2/js/line_schedule/layout.js" merge="custom_js"></script> | ||
| 197 | +<script src="/real_control_v2/js/line_schedule/sch_table.js" merge="custom_js"></script> | ||
| 198 | +<script src="/real_control_v2/js/line_schedule/context_menu.js" merge="custom_js"></script> | ||
| 199 | +<script src="/real_control_v2/js/line_schedule/dbclick.js" merge="custom_js"></script> | ||
| 200 | +<script src="/real_control_v2/js/line_schedule/search.js" merge="custom_js"></script> | ||
| 201 | +<script src="/real_control_v2/js/line_schedule/badge_tooltip.js" merge="custom_js"></script> | ||
| 202 | +<script src="/real_control_v2/js/line_schedule/mileage_count.js" merge="custom_js"></script> | ||
| 203 | + | ||
| 204 | +<!-- 字典相关 --> | ||
| 205 | +<script src="/assets/js/dictionary.js" merge="custom_js"></script> | ||
| 206 | +<!-- websocket --> | ||
| 207 | +<script src="/real_control_v2/assets/plugins/sockjs-client/sockjs.min.js"></script> | ||
| 208 | +<script src="/real_control_v2/js/websocket/sch_websocket.js" merge="custom_js"></script> | ||
| 209 | +<!-- tts --> | ||
| 210 | +<script src="/real_control_v2/js/utils/tts.js" merge="custom_js"></script> | ||
| 211 | + | ||
| 212 | +<!-- echart --> | ||
| 213 | +<script src="/real_control_v2/assets/echarts-3/echarts.js" merge="plugins"></script> | ||
| 214 | +<!-- Geolib --> | ||
| 215 | +<script src="/real_control_v2/geolib/geolib.js" merge="plugins"></script> | ||
| 216 | + | ||
| 217 | +<script src="/real_control_v2/js/signal_state/signal_state.js" merge="custom_js"></script> | ||
| 218 | +<script src="/real_control_v2/js/utils/dispatch_pattern.js" merge="custom_js"></script> | ||
| 219 | + | ||
| 220 | +<!-- 处理表单片段嵌入问题 --> | ||
| 221 | +<script src="/real_control_v2/js/forms/form_embed.js" merge="custom_js"></script> | ||
| 222 | +<!-- 模态框扩展 --> | ||
| 223 | +<script src="/real_control_v2/js/modal_extend.js" merge="custom_js"></script> | ||
| 224 | + | ||
| 225 | +<!-- #### 安全驾驶 start ### --> | ||
| 226 | +<div class="safe_driv_pop_wrap" ></div> | ||
| 227 | +<script id="safe_driv_item-temp" type="text/html"> | ||
| 228 | + <div class="safe_driv_pop uk-animation-slide-bottom" data-nbbm="{{clzbh}}" data-type="{{yczltype}}" data-title="{{clzbh}} {{timeStr}} {{ycztText}}" data-url="{{url}}" data-ts="{{ts}}"> | ||
| 229 | + <div> | ||
| 230 | + <span class="title">异常 {{clzbh}}</span> | ||
| 231 | + <span class="text"> {{timeStr}} 出现违规驾驶({{ycztText}})</span> | ||
| 232 | + <span class="desc">--安全驾驶监管平台</span> | ||
| 233 | + </div> | ||
| 234 | + </div> | ||
| 235 | +</script> | ||
| 236 | + | ||
| 237 | +<script src="/real_control_v2/js/safe_driv/safeDriv.js" merge="custom_js"></script> | ||
| 238 | +<!-- #### 安全驾驶 end ### --> | ||
| 239 | + | ||
| 240 | +<!-- 打电话 --> | ||
| 241 | +<script src="http://114.80.178.12:9003/forward/voip/callCenterJs"></script> | ||
| 242 | +<script src="http://114.80.178.12:9003/forward/voip/phonePluginJs"></script> | ||
| 243 | +<script src="/real_control_v2/js/safe_driv/call_phone.js" ></script> | ||
| 244 | + | ||
| 245 | +<script id="voip_call_info_panel-temp" type="text/html"> | ||
| 246 | + <div class="voip_call_info_panel" style="{{style}}"> | ||
| 247 | + <p class="_title">VOIP</p> | ||
| 248 | + <form class="uk-form uk-form-horizontal"> | ||
| 249 | + | ||
| 250 | + <div class="uk-form-row"> | ||
| 251 | + <label class="uk-form-label" >工号:</label> | ||
| 252 | + <div class="uk-form-controls"> | ||
| 253 | + <input type="text" name="agentID" value="1002" disabled> | ||
| 254 | + </div> | ||
| 255 | + </div> | ||
| 256 | + <div class="uk-form-row"> | ||
| 257 | + <label class="uk-form-label" ">分机号:</label> | ||
| 258 | + <div class="uk-form-controls"> | ||
| 259 | + <input type="text" name="dn" value="" > | ||
| 260 | + </div> | ||
| 261 | + </div> | ||
| 262 | + <div class="uk-form-row"> | ||
| 263 | + <label class="uk-form-label" >自编号:</label> | ||
| 264 | + <div class="uk-form-controls"> | ||
| 265 | + <input type="text" value="{{nbbm}}" disabled> | ||
| 266 | + </div> | ||
| 267 | + </div> | ||
| 268 | + <div class="uk-form-row"> | ||
| 269 | + <label class="uk-form-label" >SIM号:</label> | ||
| 270 | + <div class="uk-form-controls"> | ||
| 271 | + <input type="text" name="simNo" disabled> | ||
| 272 | + </div> | ||
| 273 | + </div> | ||
| 274 | + <hr> | ||
| 275 | + <h4 class="state_txt"> | ||
| 276 | + <button class="uk-button uk-button-large" type="button" disabled>获取SIM卡号...</button> | ||
| 277 | + </h4> | ||
| 278 | + </form> | ||
| 279 | + </div> | ||
| 280 | +</script> | ||
| 281 | +</body> | ||
| 282 | + | ||
| 283 | +</html> |