Commit 72e7348cd47a884a2ff4f857cb002dc2e23adf64

Authored by 潘钊
1 parent c1bc1070

update...

src/main/java/com/bsth/XDApplication.java
@@ -146,7 +146,7 @@ public class XDApplication implements CommandLineRunner { @@ -146,7 +146,7 @@ public class XDApplication implements CommandLineRunner {
146 sexec.scheduleWithFixedDelay(schedulePstThread, 120, 10, TimeUnit.SECONDS);//班次延迟入库线程 146 sexec.scheduleWithFixedDelay(schedulePstThread, 120, 10, TimeUnit.SECONDS);//班次延迟入库线程
147 sexec.scheduleWithFixedDelay(seiPstThread, 160, 60, TimeUnit.SECONDS);//班次修正日志入库 147 sexec.scheduleWithFixedDelay(seiPstThread, 160, 60, TimeUnit.SECONDS);//班次修正日志入库
148 sexec.scheduleWithFixedDelay(directivesPstThread, 180, 120, TimeUnit.SECONDS);//调度指令延迟入库 148 sexec.scheduleWithFixedDelay(directivesPstThread, 180, 120, TimeUnit.SECONDS);//调度指令延迟入库
149 - //sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS);//线程监听(防止重要的线程阻塞、异常结束。以及部分主备切换工作) 149 + sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS);//线程监听(防止重要的线程阻塞、异常结束。以及部分主备切换工作)
150 sexec.scheduleWithFixedDelay(sampleTimeDataLoader, 140, 120 * 60, TimeUnit.SECONDS);//到离站预测需要的站点间耗时数据 150 sexec.scheduleWithFixedDelay(sampleTimeDataLoader, 140, 120 * 60, TimeUnit.SECONDS);//到离站预测需要的站点间耗时数据
151 sexec.scheduleWithFixedDelay(basicDataLoader, 2, 2, TimeUnit.HOURS);//基础数据更新 151 sexec.scheduleWithFixedDelay(basicDataLoader, 2, 2, TimeUnit.HOURS);//基础数据更新
152 sexec.scheduleWithFixedDelay(autoExecScanThread, 160, 50, TimeUnit.SECONDS);//班次自动执行 152 sexec.scheduleWithFixedDelay(autoExecScanThread, 160, 50, TimeUnit.SECONDS);//班次自动执行
src/main/java/com/bsth/data/ThreadMonotor.java
1 package com.bsth.data; 1 package com.bsth.data;
2 2
3 -import org.slf4j.Logger;  
4 -import org.slf4j.LoggerFactory; 3 +import com.bsth.data.gpsdata_v2.DataHandleProcess;
  4 +import com.bsth.data.gpsdata_v2.thread.GpsDataLoaderThread;
5 import org.springframework.stereotype.Component; 5 import org.springframework.stereotype.Component;
6 6
7 /** 7 /**
@@ -10,32 +10,10 @@ import org.springframework.stereotype.Component; @@ -10,32 +10,10 @@ import org.springframework.stereotype.Component;
10 @Component 10 @Component
11 public class ThreadMonotor extends Thread{ 11 public class ThreadMonotor extends Thread{
12 12
13 - Logger log = LoggerFactory.getLogger(this.getClass());  
14 -  
15 @Override 13 @Override
16 public void run() { 14 public void run() {
17 -  
18 - //线调GPS分析主线程  
19 - /*if(GpsRealAnalyse.isBlock()){  
20 - log.warn("GpsRealAnalyse isBlock true !!!!");  
21 - GpsRealAnalyse.shutdown();  
22 - }*/  
23 -  
24 - /*if(GpsRealAnalyse.isIdle()){  
25 - //切换到备用的网关实时GPS对照数据 15 + //切换到备用的网关实时GPS对照数据
  16 + if(DataHandleProcess.isBlock())
26 GpsDataLoaderThread.setFlag(-1); 17 GpsDataLoaderThread.setFlag(-1);
27 - }*/  
28 -  
29 - //webSocket 消息推送队列  
30 - /*if(WebSocketPushQueue.isIdle()){  
31 - log.warn("WebSocketPushQueue isIdle true !!!!");  
32 - WebSocketPushQueue.start();  
33 - }*/  
34 -  
35 - //网关指令推送队列(系统自动发送的)  
36 - /*if(DirectivePushQueue.isIdle()){  
37 - log.warn("DirectivePushQueue isIdle true !!!!");  
38 - DirectivePushQueue.start();  
39 - }*/  
40 } 18 }
41 } 19 }
42 \ No newline at end of file 20 \ No newline at end of file
src/main/java/com/bsth/data/gpsdata_v2/DataHandleProcess.java
@@ -46,8 +46,17 @@ public class DataHandleProcess { @@ -46,8 +46,17 @@ public class DataHandleProcess {
46 @Autowired 46 @Autowired
47 GpsRealData gpsRealData; 47 GpsRealData gpsRealData;
48 48
  49 + static long lastTime;
  50 +
  51 + public static boolean isBlock() {
  52 + return System.currentTimeMillis() - lastTime > 1000 * 20;
  53 + }
  54 +
49 public void handle(List<GpsEntity> list) { 55 public void handle(List<GpsEntity> list) {
50 try { 56 try {
  57 + if(list.size() == 0)
  58 + return;
  59 + lastTime = System.currentTimeMillis();
51 //按设备号分组数据(一个设备的多条数据,必须在一个线程里跑) 60 //按设备号分组数据(一个设备的多条数据,必须在一个线程里跑)
52 ArrayListMultimap multimap = ArrayListMultimap.create(); 61 ArrayListMultimap multimap = ArrayListMultimap.create();
53 for (GpsEntity gps : list) { 62 for (GpsEntity gps : list) {
src/main/resources/static/pages/base/geo_data_edit/main.html
@@ -7,26 +7,95 @@ @@ -7,26 +7,95 @@
7 <link rel="stylesheet" href="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.css" /> 7 <link rel="stylesheet" href="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.css" />
8 <!-- flatpickr --> 8 <!-- flatpickr -->
9 <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.css"> 9 <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.css">
  10 + <!-- tooltip css-->
  11 + <link rel="stylesheet" href="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.css" />
  12 + <link rel="stylesheet" href="/real_control_v2/css/pace.css" />
10 <style> 13 <style>
  14 + /* ^_^ baidu map hide logo */
  15 + .anchorBL, .anchorBL, .amap-logo, .amap-copyright {
  16 + display: none;
  17 + }
  18 +
11 html,body{ 19 html,body{
12 height: 100%; 20 height: 100%;
13 } 21 }
14 .ct_page{ 22 .ct_page{
15 - padding: 25px 15px; 23 + padding: 0;
  24 + height: 100%;
  25 + }
  26 +
  27 + div#map_wrap{
16 height: 100%; 28 height: 100%;
17 - height: calc(100% - 50px);  
18 } 29 }
19 30
  31 + .main_left_panel{
  32 + position: absolute;
  33 + z-index: 999;
  34 + height: calc(100% - 20px);
  35 + width: 300px;
  36 + background: #fffffff5;
  37 + top: 7px;
  38 + left: 5px;
  39 + box-shadow: 5px 5px 15px rgba(90, 90, 90, 0.48);
  40 + }
  41 + .main_lt_search_panel{
  42 + position: absolute;
  43 + z-index: 99;
  44 + top: 10px;
  45 + left: 330px;
  46 + background: #fffffff5;
  47 + box-shadow: 5px 5px 15px rgba(90, 90, 90, 0.48);
  48 + }
  49 + .main_rt_tools_panel{
  50 + position: absolute;
  51 + z-index: 99;
  52 + top: 7px;
  53 + right: 7px;
  54 + background: #ffffff;
  55 + box-shadow: -5px 4px 15px rgba(90, 90, 90, 0.48);
  56 + padding: 0 12px;
  57 + text-align: center;
  58 + border-radius: 7px;
  59 + height: 28px;
  60 + }
20 61
  62 + .main_rt_tools_panel>._icon{
  63 + margin: 0 9px;
  64 + }
  65 + .search_input{
  66 + width: 250px;
  67 + height: 42px;
  68 + }
  69 +
  70 + .search_input::placeholder{
  71 + color: grey;
  72 + font-size: 12px;
  73 + }
21 </style> 74 </style>
22 </head> 75 </head>
23 76
24 <body> 77 <body>
25 <div class="ct_page" > 78 <div class="ct_page" >
26 <div id="map_wrap"> 79 <div id="map_wrap">
  80 + </div>
  81 + <div class="main_left_panel">
  82 + <div class="_line_info">
27 83
  84 + </div>
  85 + </div>
  86 + <div class="main_lt_search_panel">
  87 + <div class="uk-inline">
  88 + <span class="uk-form-icon uk-form-icon-flip" uk-icon="icon: search"></span>
  89 + <input class="uk-input search_input" placeholder="搜索地图位置" type="text">
  90 + </div>
  91 + </div>
  92 + <div class="main_rt_tools_panel">
  93 + <a uk-icon="icon: info;ratio: .9" class="_icon"></a>
  94 + <a uk-icon="icon: expand;ratio: .9" class="_icon"></a>
28 </div> 95 </div>
29 </div> 96 </div>
  97 +<!-- 百度 -->
  98 +<script src="http://api.map.baidu.com/api?v=2.0&ak=IGGrr4UjwIYzatoCRFKEL8sT"></script>
30 <script src="/metronic_v4.5.4/plugins/jquery.min.js"></script> 99 <script src="/metronic_v4.5.4/plugins/jquery.min.js"></script>
31 <script src="/assets/plugins/uk3.0/uikit.min.js"></script> 100 <script src="/assets/plugins/uk3.0/uikit.min.js"></script>
32 <script src="/assets/plugins/uk3.0/uikit-icons.min.js"></script> 101 <script src="/assets/plugins/uk3.0/uikit-icons.min.js"></script>
@@ -41,7 +110,10 @@ @@ -41,7 +110,10 @@
41 <!-- flatpickr --> 110 <!-- flatpickr -->
42 <script src="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.js" ></script> 111 <script src="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.js" ></script>
43 <script src="/real_control_v2/assets/plugins/flatpickr/l10n/zh.js" ></script> 112 <script src="/real_control_v2/assets/plugins/flatpickr/l10n/zh.js" ></script>
  113 +<!-- qtip -->
  114 +<script src="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.js" ></script>
44 <script> 115 <script>
  116 + top.document.title = "绘制线路";
45 // 关闭左侧栏 117 // 关闭左侧栏
46 if (!top.$('body').hasClass('page-sidebar-closed')) {top.$('.menu-toggler.sidebar-toggler').click();} 118 if (!top.$('body').hasClass('page-sidebar-closed')) {top.$('.menu-toggler.sidebar-toggler').click();}
47 119
@@ -58,6 +130,7 @@ @@ -58,6 +130,7 @@
58 }; 130 };
59 131
60 map = new BMap.Map($(gb_map_consts.mapContainer)[0]); 132 map = new BMap.Map($(gb_map_consts.mapContainer)[0]);
  133 + //map.setMapStyle({style:'dark'});
61 //中心点和缩放级别 134 //中心点和缩放级别
62 map.centerAndZoom(new BMap.Point(gb_map_consts.center_point.lng, gb_map_consts.center_point.lat), 13); 135 map.centerAndZoom(new BMap.Point(gb_map_consts.center_point.lng, gb_map_consts.center_point.lat), 13);
63 map.enableScrollWheelZoom(); 136 map.enableScrollWheelZoom();