Commit 61a2e4c3b2ebec70ae8d60429e60f1a598b042cc
1 parent
855f993b
1.调度工作台
Showing
6 changed files
with
1350 additions
and
2 deletions
src/main/java/com/bsth/controller/realcontrol/PageForwardingController.java
| @@ -81,9 +81,11 @@ public class PageForwardingController { | @@ -81,9 +81,11 @@ public class PageForwardingController { | ||
| 81 | } | 81 | } |
| 82 | 82 | ||
| 83 | 83 | ||
| 84 | - if(type.equals("v2_mobile")){ | 84 | + if ("v2_mobile".equals(type)) { |
| 85 | mv.setViewName("/real_control_v2_mobile/main"); | 85 | mv.setViewName("/real_control_v2_mobile/main"); |
| 86 | - }else{ | 86 | + } else if("v2_".equals(type)) { |
| 87 | + mv.setViewName("/real_control_v2/main_"); | ||
| 88 | + } else { | ||
| 87 | //正常线调主页 | 89 | //正常线调主页 |
| 88 | mv.setViewName("/real_control_v2/main"); | 90 | mv.setViewName("/real_control_v2/main"); |
| 89 | } | 91 | } |
src/main/resources/static/pages/control/lineallot_v2/iframe_wrap_.html
0 → 100644
src/main/resources/static/pages/control/lineallot_v2/main_.html
0 → 100644
| 1 | +<!DOCTYPE html> | ||
| 2 | +<html lang="zh-cn"> | ||
| 3 | + | ||
| 4 | +<head> | ||
| 5 | + <meta charset="UTF-8"> | ||
| 6 | + <link rel="stylesheet" href="/assets/plugins/uk3.0/uikit.min.css"/> | ||
| 7 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.css"/> | ||
| 8 | + <!-- flatpickr --> | ||
| 9 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.css"> | ||
| 10 | + <style> | ||
| 11 | + html, body { | ||
| 12 | + height: 100%; | ||
| 13 | + } | ||
| 14 | + | ||
| 15 | + .ct_page { | ||
| 16 | + padding: 25px 15px; | ||
| 17 | + height: 100%; | ||
| 18 | + height: calc(100% - 65px); | ||
| 19 | + } | ||
| 20 | + | ||
| 21 | + .ct_cont { | ||
| 22 | + height: calc(100% - 41px); | ||
| 23 | + } | ||
| 24 | + | ||
| 25 | + .ct_cont > div > div.uk-card { | ||
| 26 | + height: 99%; | ||
| 27 | + } | ||
| 28 | + | ||
| 29 | + .loading { | ||
| 30 | + height: 100%; | ||
| 31 | + text-align: center; | ||
| 32 | + } | ||
| 33 | + | ||
| 34 | + .loading .uk-spinner { | ||
| 35 | + margin-top: 200px; | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + .loading circle { | ||
| 39 | + stroke: red; | ||
| 40 | + } | ||
| 41 | + | ||
| 42 | + .ps-container > .ps-scrollbar-x-rail, .ps-container > .ps-scrollbar-y-rail { | ||
| 43 | + opacity: 0.6 !important; | ||
| 44 | + padding: 0 !important; | ||
| 45 | + } | ||
| 46 | + | ||
| 47 | + .line_list_all_wrap { | ||
| 48 | + height: 200px; | ||
| 49 | + overflow: auto; | ||
| 50 | + position: relative; | ||
| 51 | + -webkit-user-select:none; | ||
| 52 | + -moz-user-select:none; | ||
| 53 | + -ms-user-select:none; | ||
| 54 | + user-select:none; | ||
| 55 | + } | ||
| 56 | + | ||
| 57 | + .line_list_all_wrap > .item { | ||
| 58 | + background: #fff; | ||
| 59 | + color: #666; | ||
| 60 | + box-shadow: 0px 3px 12px rgba(0, 0, 0, 0.08); | ||
| 61 | + padding: 7px 12px; | ||
| 62 | + border: 1px solid #ececec; | ||
| 63 | + display: inline-block; | ||
| 64 | + margin: 5px; | ||
| 65 | + min-width: 70px; | ||
| 66 | + text-align: center; | ||
| 67 | + cursor: default; | ||
| 68 | + } | ||
| 69 | + | ||
| 70 | + .line_list_all_wrap > .item.active{ | ||
| 71 | + background: #ffe9a5; | ||
| 72 | + } | ||
| 73 | + | ||
| 74 | + .checked_list { | ||
| 75 | + padding-left: 4px; | ||
| 76 | + -webkit-user-select:none; | ||
| 77 | + -moz-user-select:none; | ||
| 78 | + -ms-user-select:none; | ||
| 79 | + user-select:none; | ||
| 80 | + } | ||
| 81 | + | ||
| 82 | + .checked_list > .item { | ||
| 83 | + color: #fbfbfb; | ||
| 84 | + box-shadow: 0px 3px 12px rgba(50, 197, 210, 0.3); | ||
| 85 | + padding: 7px 12px; | ||
| 86 | + border: 1px solid #ececec; | ||
| 87 | + display: inline-block; | ||
| 88 | + margin: 5px 2px; | ||
| 89 | + min-width: 70px; | ||
| 90 | + text-align: center; | ||
| 91 | + background: #32C5D2; | ||
| 92 | + cursor: move; | ||
| 93 | + } | ||
| 94 | + | ||
| 95 | + .company_search_wrap { | ||
| 96 | + width: 610px; | ||
| 97 | + margin-left: 6px; | ||
| 98 | + } | ||
| 99 | + | ||
| 100 | + .company_search_wrap select { | ||
| 101 | + display: inline-block; | ||
| 102 | + width: 128px; | ||
| 103 | + margin-right: 12px; | ||
| 104 | + } | ||
| 105 | + | ||
| 106 | + .uk-card { | ||
| 107 | + border: 1px solid #eeeeee; | ||
| 108 | + } | ||
| 109 | + | ||
| 110 | + .footer_tools_card { | ||
| 111 | + margin-top: 20px; | ||
| 112 | + padding: 20px 40px; | ||
| 113 | + } | ||
| 114 | + | ||
| 115 | + .footer_tools_card label { | ||
| 116 | + vertical-align: bottom; | ||
| 117 | + display: inline-block; | ||
| 118 | + font-size: 13px; | ||
| 119 | + margin-left: 13px; | ||
| 120 | + margin-bottom: 3px !important; | ||
| 121 | + } | ||
| 122 | + | ||
| 123 | + .uk-button-default{ | ||
| 124 | + background: #e0e0e0 !important; | ||
| 125 | + } | ||
| 126 | + | ||
| 127 | + .line_list_all_wrap > .item.destroy{ | ||
| 128 | + color: #f64242; | ||
| 129 | + } | ||
| 130 | + | ||
| 131 | + .checked_list > .item.destroy{ | ||
| 132 | + background: #ff5c5c; | ||
| 133 | + } | ||
| 134 | + </style> | ||
| 135 | +</head> | ||
| 136 | + | ||
| 137 | +<body> | ||
| 138 | +<div class="loading"> | ||
| 139 | + <div uk-spinner></div> | ||
| 140 | +</div> | ||
| 141 | +<div class="ct_page" style="display: none;"> | ||
| 142 | + <h2 class="uk-heading-line uk-heading-bullet"><span>调度工作台 <h5 style="display: inline-block;">-选择线路</h5></span></h2> | ||
| 143 | + <div class="ct_cont"> | ||
| 144 | + <div class="allot_wrap uk-flex-center" uk-grid> | ||
| 145 | + <div class="uk-card uk-card-hover uk-card-body uk-width-2-3@m" | ||
| 146 | + style="padding-top: 20px;padding-bottom: 20px;"> | ||
| 147 | + <div class="company_search_wrap" style="width: 99%"> | ||
| 148 | + <select class="uk-select company_search_select"></select> | ||
| 149 | + <select class="uk-select fgs_search_select" disabled> | ||
| 150 | + <option value="">分公司搜索</option> | ||
| 151 | + </select> | ||
| 152 | + <div class="uk-inline"> | ||
| 153 | + <span class="uk-form-icon uk-form-icon-flip" uk-icon="icon: search"></span> | ||
| 154 | + <input class="uk-input line_search_input" style="width: 310px;" placeholder="搜索线路"> | ||
| 155 | + </div> | ||
| 156 | + <button class="uk-button uk-button-primary" style="font-size: 16px;float: right;" id="select_all" data-selectType="select_all_no"><i | ||
| 157 | + uk-icon=" " style="margin-right: 5px;" ></i>全选 | ||
| 158 | + </button> | ||
| 159 | + </div> | ||
| 160 | + <hr> | ||
| 161 | + <div class="line_list_all_wrap"></div> | ||
| 162 | + <hr> | ||
| 163 | + <div class="checked_list" uk-sortable> </div> | ||
| 164 | + </div> | ||
| 165 | + | ||
| 166 | + <div class="uk-card uk-card-hover uk-card-body uk-width-2-3@m footer_tools_card"> | ||
| 167 | + <button class="uk-button uk-button-default uk-button-large" style="font-size: 16px" id="go_to_real_system_btn"><i | ||
| 168 | + uk-icon=" icon: sign-in" style="margin-right: 5px;" ></i>进入线路调度 | ||
| 169 | + </button> | ||
| 170 | + | ||
| 171 | + <label class="pattern_type_label"><input class="uk-checkbox" type="checkbox" > 主调模式登录</label> | ||
| 172 | + <label class="new_window_open_label" title="可能会被浏览器阻止新建窗口" uk-tooltip><input class="uk-checkbox" type="checkbox"> 新窗口打开</label> | ||
| 173 | + | ||
| 174 | + </div> | ||
| 175 | + | ||
| 176 | + <div class="uk-alert-warning uk-width-2-3@m " uk-alert> | ||
| 177 | + <p>注意!!! 相关“设备调试人员”和“测试人员”不要以主调模式进入调度工作台。</p> | ||
| 178 | + </div> | ||
| 179 | + </div> | ||
| 180 | + </div> | ||
| 181 | +</div> | ||
| 182 | + | ||
| 183 | +<script id="line_list_items_temp" type="text/html"> | ||
| 184 | + {{each list as obj i}} | ||
| 185 | + <span class="item {{obj.destroy==1?'destroy':''}}" data-id="{{obj.lineCode}}" data-gsbm="{{obj.company}}_{{obj.brancheCompany}}">{{obj.name}}</span> | ||
| 186 | + {{/each}} | ||
| 187 | +</script> | ||
| 188 | + | ||
| 189 | +<script src="/metronic_v4.5.4/plugins/jquery.min.js"></script> | ||
| 190 | +<script src="/assets/plugins/uk3.0/uikit.min.js"></script> | ||
| 191 | +<script src="/assets/plugins/uk3.0/uikit-icons.min.js"></script> | ||
| 192 | +<script src="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.jquery.js"></script> | ||
| 193 | +<!-- EventProxy --> | ||
| 194 | +<script src="/assets/js/eventproxy.js"></script> | ||
| 195 | +<!-- art-template 模版引擎 --> | ||
| 196 | +<script src="/assets/plugins/template.js"></script> | ||
| 197 | +<script src="/real_control_v2/assets/plugins/moment/moment.min.js"></script> | ||
| 198 | +<script src="/assets/plugins/pinyin.js"></script> | ||
| 199 | +<script> | ||
| 200 | + var allMapps = {};//线路搜索映射 | ||
| 201 | + var companyData = {}; | ||
| 202 | + var codeMapps={}; //线路编码映射 | ||
| 203 | + //滚动条 | ||
| 204 | + $('.line_list_all_wrap').perfectScrollbar(); | ||
| 205 | + window.localStorage.setItem("pattern", 0); | ||
| 206 | + | ||
| 207 | + var ep = EventProxy.create('all_lines', 'user_author', 'company_data', function (allLines, userAuthor, company_data) { | ||
| 208 | + //按用户权限过滤线路 | ||
| 209 | + var authArray = userAuthor.lineCodeStr.split(','), | ||
| 210 | + newArray = []; | ||
| 211 | + $.each(allLines, function () { | ||
| 212 | + if (this.lineCode && authArray.indexOf(this.lineCode) != -1) { | ||
| 213 | + newArray.push(this); | ||
| 214 | + codeMapps[this.lineCode] = this; | ||
| 215 | + } | ||
| 216 | + }); | ||
| 217 | + //排序 | ||
| 218 | + newArray.sort(function (a, b) { | ||
| 219 | + return a.name.localeCompare(b.name); | ||
| 220 | + }); | ||
| 221 | + //创建线路搜索映射 | ||
| 222 | + createLineSearchMapps(newArray); | ||
| 223 | + | ||
| 224 | + var htmlStr = template('line_list_items_temp', {list: newArray}); | ||
| 225 | + $('.line_list_all_wrap').html(htmlStr); | ||
| 226 | + | ||
| 227 | + //过滤公司编码数据 | ||
| 228 | + filter_company_data.filter(newArray, convert_buss_data(company_data)); | ||
| 229 | + initCompanySelect(); | ||
| 230 | + //更新滚动条高度 | ||
| 231 | + setTimeout(function () { | ||
| 232 | + $('.line_list_all_wrap').perfectScrollbar('update'); | ||
| 233 | + }, 1000); | ||
| 234 | + | ||
| 235 | + //登录模式 | ||
| 236 | + changePattern(userAuthor.pattern); | ||
| 237 | + window.localStorage.setItem("pattern", userAuthor.pattern); | ||
| 238 | + if(!userAuthor.pattern) | ||
| 239 | + $('.pattern_type_label').hide().find('input')[0].checked=false; | ||
| 240 | + else | ||
| 241 | + $('input','.pattern_type_label')[0].checked=true; | ||
| 242 | + | ||
| 243 | + $('.loading').remove(); | ||
| 244 | + $('.ct_page').show(); | ||
| 245 | + | ||
| 246 | + //默认选中上次记录 | ||
| 247 | + var lineControlItems = window.localStorage.getItem('lineControlItems'); | ||
| 248 | + if (lineControlItems) { | ||
| 249 | + var array = JSON.parse(lineControlItems); | ||
| 250 | + $.each(array, function (i, line) { | ||
| 251 | + $('.item[data-id='+line.lineCode+']','.line_list_all_wrap').trigger('click'); | ||
| 252 | + }); | ||
| 253 | + } | ||
| 254 | + selectButtonStatus(); | ||
| 255 | + }); | ||
| 256 | + | ||
| 257 | + $('.pattern_type_label').on('click', function () { | ||
| 258 | + var checked = $('input',this)[0].checked; | ||
| 259 | + changePattern(checked); | ||
| 260 | + }); | ||
| 261 | + | ||
| 262 | + function changePattern(status) { | ||
| 263 | + var btn = $('#go_to_real_system_btn'), | ||
| 264 | + def='uk-button-default', | ||
| 265 | + prim='uk-button-primary'; | ||
| 266 | + if(status){ | ||
| 267 | + btn.removeClass(def).addClass(prim); | ||
| 268 | + } | ||
| 269 | + else{ | ||
| 270 | + btn.removeClass(prim).addClass(def); | ||
| 271 | + } | ||
| 272 | + } | ||
| 273 | + | ||
| 274 | + /** | ||
| 275 | + * 查询所有线路 | ||
| 276 | + */ | ||
| 277 | + $.get('/line/all', {remove_ne: 1}, function (list) { | ||
| 278 | + ep.emit('all_lines', list); | ||
| 279 | + }); | ||
| 280 | + | ||
| 281 | + /**用户分配的线路*/ | ||
| 282 | + $.get('/realControAuthority/findByCurrentUser', function (t) { | ||
| 283 | + ep.emit('user_author', t); | ||
| 284 | + }); | ||
| 285 | + | ||
| 286 | + /** 查询公司编码 */ | ||
| 287 | + $.get('/business/all', function (rs) { | ||
| 288 | + ep.emit('company_data', rs); | ||
| 289 | + }); | ||
| 290 | + | ||
| 291 | + //点击选择线路 | ||
| 292 | + $('.line_list_all_wrap').on('click', 'span.item', function () { | ||
| 293 | + var lineCode = $(this).data('id'), | ||
| 294 | + name = $(this).text(); | ||
| 295 | + if ($(this).hasClass('active')) { | ||
| 296 | + $(this).removeClass('active'); | ||
| 297 | + | ||
| 298 | + $('.item[data-id='+lineCode+']','.checked_list').remove(); | ||
| 299 | + } | ||
| 300 | + else { | ||
| 301 | + $(this).addClass('active'); | ||
| 302 | + var span = $('<span data-id="'+lineCode+'" class="item uk-card uk-card-default uk-animation-slide-bottom '+($(this).hasClass('destroy')?"destroy":"")+'">'+name+'</span>') | ||
| 303 | + .one('webkitAnimationEnd', function () { | ||
| 304 | + $(this).removeClass('uk-animation-slide-bottom'); | ||
| 305 | + }); | ||
| 306 | + $('.checked_list').append(span); | ||
| 307 | + } | ||
| 308 | + selectButtonStatus(); | ||
| 309 | + }); | ||
| 310 | + | ||
| 311 | + /*$('.checked_list').on('click', '.item', function () { | ||
| 312 | + var lineCode = $(this).data('id'); | ||
| 313 | + $('.item[data-id='+lineCode+']','.line_list_all_wrap').removeClass('active'); | ||
| 314 | + $(this).remove(); | ||
| 315 | + });*/ | ||
| 316 | + | ||
| 317 | + /** | ||
| 318 | + * 搜索线路 | ||
| 319 | + */ | ||
| 320 | + function search_line_list() { | ||
| 321 | + var comp = $('select.company_search_select').val(), | ||
| 322 | + fgs = $('select.fgs_search_select').val(), | ||
| 323 | + gsbm = comp + '_' + fgs; | ||
| 324 | + | ||
| 325 | + if(gsbm=='_') | ||
| 326 | + gsbm=null; | ||
| 327 | + var allDoms = $('.line_list_all_wrap span.item'); | ||
| 328 | + //线路 | ||
| 329 | + var lineCodeArray = []; | ||
| 330 | + var t = $('.line_search_input').val(); | ||
| 331 | + if(t){ | ||
| 332 | + t = t.toUpperCase(); | ||
| 333 | + for(var m in allMapps){ | ||
| 334 | + if(m.indexOf(t)!=-1) | ||
| 335 | + lineCodeArray.push(allMapps[m]); | ||
| 336 | + } | ||
| 337 | + } | ||
| 338 | + | ||
| 339 | + //搜索 | ||
| 340 | + var show_elems = []; | ||
| 341 | + for (var i=0, dom; dom = allDoms[i++];) { | ||
| 342 | + if(gsbm && $(dom).data('gsbm').indexOf(gsbm)==-1) | ||
| 343 | + continue; | ||
| 344 | + | ||
| 345 | + if(t && lineCodeArray.indexOf($(dom).data('id')+'') == -1) | ||
| 346 | + continue; | ||
| 347 | + | ||
| 348 | + show_elems.push($(dom)); | ||
| 349 | + } | ||
| 350 | + | ||
| 351 | + //show | ||
| 352 | + allDoms.hide(); | ||
| 353 | + for(var j=0,$dom;$dom=show_elems[j++];) | ||
| 354 | + $dom.show(); | ||
| 355 | + } | ||
| 356 | + | ||
| 357 | + function createLineSearchMapps(list) { | ||
| 358 | + allMapps = {}; | ||
| 359 | + var name, code; | ||
| 360 | + for (var i = 0, line; line = list[i++];) { | ||
| 361 | + name = line.name; | ||
| 362 | + code = line.lineCode; | ||
| 363 | + //拼音映射 | ||
| 364 | + allMapps[pinyin.getCamelChars(name)] = code; | ||
| 365 | + allMapps[pinyin.getFullChars(name).toUpperCase()] = code; | ||
| 366 | + //中文映射 | ||
| 367 | + allMapps[name] = code; | ||
| 368 | + } | ||
| 369 | + } | ||
| 370 | + | ||
| 371 | + | ||
| 372 | + //构建公司级联下拉框 | ||
| 373 | + function initCompanySelect() { | ||
| 374 | + var opts = '<option value="">公司搜索</option>'; | ||
| 375 | + for (var k in companyData) { | ||
| 376 | + opts += '<option value="' + k + '">' + companyData[k].name + '</option>'; | ||
| 377 | + } | ||
| 378 | + $('select.company_search_select').html(opts); | ||
| 379 | + } | ||
| 380 | + | ||
| 381 | + //公司切换 | ||
| 382 | + $('select.company_search_select').on('change', function () { | ||
| 383 | + var opts = '<option value="">分公司搜索</option>', | ||
| 384 | + t = $(this).val(), | ||
| 385 | + fgsSelect = $('select.fgs_search_select'); | ||
| 386 | + if (!t) { | ||
| 387 | + fgsSelect.html(opts).attr('disabled', 'disabled'); | ||
| 388 | + } | ||
| 389 | + else{ | ||
| 390 | + var array = companyData[t].childs; | ||
| 391 | + for (var i = 0, fgs; fgs = array[i++];) { | ||
| 392 | + opts += '<option value="' + fgs.businessCode + '">' + fgs.businessName + '</option>'; | ||
| 393 | + } | ||
| 394 | + | ||
| 395 | + fgsSelect.html(opts).removeAttr('disabled'); | ||
| 396 | + } | ||
| 397 | + search_line_list(); | ||
| 398 | + }); | ||
| 399 | + | ||
| 400 | + //分公司切换 | ||
| 401 | + $('select.fgs_search_select').on('change', search_line_list); | ||
| 402 | + | ||
| 403 | + //线路文本框输入 | ||
| 404 | + var flag; | ||
| 405 | + $('.line_search_input').on('input', function () { | ||
| 406 | + if(flag) | ||
| 407 | + return; | ||
| 408 | + flag = true; | ||
| 409 | + setTimeout(function () { | ||
| 410 | + //延迟 | ||
| 411 | + search_line_list(); | ||
| 412 | + flag = false; | ||
| 413 | + }, 200); | ||
| 414 | + }); | ||
| 415 | + | ||
| 416 | + function convert_buss_data(rs) { | ||
| 417 | + var baseCode; | ||
| 418 | + //找到跟节点 | ||
| 419 | + $.each(rs, function () { | ||
| 420 | + if (this.upCode == 0) { | ||
| 421 | + baseCode = this.businessCode; | ||
| 422 | + return false; | ||
| 423 | + } | ||
| 424 | + }); | ||
| 425 | + if (!baseCode)return; | ||
| 426 | + //提取二级节点 | ||
| 427 | + var secondMap = {}; | ||
| 428 | + $.each(rs, function () { | ||
| 429 | + if (this.upCode == baseCode) | ||
| 430 | + secondMap[this.businessCode] = {name: this.businessName, childs: []}; | ||
| 431 | + }); | ||
| 432 | + //分公司节点 | ||
| 433 | + $.each(rs, function () { | ||
| 434 | + if (secondMap[this.upCode]) | ||
| 435 | + secondMap[this.upCode].childs.push(this); | ||
| 436 | + }); | ||
| 437 | + //排序 | ||
| 438 | + for (var sid in secondMap) | ||
| 439 | + secondMap[sid].childs.sort(naturalSort); | ||
| 440 | + return secondMap; | ||
| 441 | + } | ||
| 442 | + | ||
| 443 | + var naturalSort = function (a, b) { | ||
| 444 | + return a.businessName.localeCompare(b.businessName); | ||
| 445 | + }; | ||
| 446 | + | ||
| 447 | + /** | ||
| 448 | + * 根据用户线路权限过滤公司编码数据 | ||
| 449 | + */ | ||
| 450 | + var filter_company_data = (function () { | ||
| 451 | + var filter = function (lineArray, data) { | ||
| 452 | + companyData = {}; | ||
| 453 | + var com, fCom; | ||
| 454 | + $.each(lineArray, function () { | ||
| 455 | + com = this.company; | ||
| 456 | + fCom = this.brancheCompany; | ||
| 457 | + if (!companyData[com]) { | ||
| 458 | + companyData[com] = {name: data[com].name, childs: []}; | ||
| 459 | + } | ||
| 460 | + | ||
| 461 | + if (!get(fCom, companyData[com].childs)) { | ||
| 462 | + companyData[com].childs.push(get(fCom, data[com].childs)); | ||
| 463 | + } | ||
| 464 | + }); | ||
| 465 | + }; | ||
| 466 | + | ||
| 467 | + function get(fgsCode, fgsArray) { | ||
| 468 | + for (var i = 0, fgs; fgs = fgsArray[i++];) { | ||
| 469 | + if (fgs.businessCode == fgsCode) | ||
| 470 | + return fgs; | ||
| 471 | + } | ||
| 472 | + return null; | ||
| 473 | + } | ||
| 474 | + | ||
| 475 | + return { | ||
| 476 | + filter: filter | ||
| 477 | + } | ||
| 478 | + })(); | ||
| 479 | + var storage = window.localStorage; | ||
| 480 | + $('#go_to_real_system_btn').on('click', go_to_xd_sys); | ||
| 481 | + $('#select_all').on('click', function(){ | ||
| 482 | + if ($(this).attr("data-selectType")=="select_all_no"){ | ||
| 483 | + $('.line_list_all_wrap>.item').addClass('active'); | ||
| 484 | + $(this).text('全不选'); | ||
| 485 | + $(this).attr("data-selectType","select_all"); | ||
| 486 | + var linesArrays= $('.line_list_all_wrap span.item'); | ||
| 487 | + if(linesArrays&&linesArrays.length>0){ | ||
| 488 | + $('.checked_list').empty(); | ||
| 489 | + for (var i = 0; i < linesArrays.length; i++) { | ||
| 490 | + var span = $('<span data-id="'+$(linesArrays[i]).data('id')+'" class="item uk-card uk-card-default uk-animation-slide-bottom '+($(linesArrays[i]).hasClass('destroy')?"destroy":"")+'">'+$(linesArrays[i]).text()+'</span>') | ||
| 491 | + .one('webkitAnimationEnd', function () { | ||
| 492 | + $(this).removeClass('uk-animation-slide-bottom'); | ||
| 493 | + }); | ||
| 494 | + $('.checked_list').append(span); | ||
| 495 | + } | ||
| 496 | + } | ||
| 497 | + $(this).removeClass('uk-button-primary'); | ||
| 498 | + $(this).addClass('uk-button-default'); | ||
| 499 | + return; | ||
| 500 | + } | ||
| 501 | + if ($(this).attr("data-selectType")=="select_all"){ | ||
| 502 | + $('.line_list_all_wrap>.item').removeClass('active'); | ||
| 503 | + $(this).text('全选'); | ||
| 504 | + $(this).attr("data-selectType","select_all_no"); | ||
| 505 | + $('.checked_list').empty(); | ||
| 506 | + $(this).removeClass('uk-button-default'); | ||
| 507 | + $(this).addClass('uk-button-primary'); | ||
| 508 | + return; | ||
| 509 | + } | ||
| 510 | + }); | ||
| 511 | + var selectButtonStatus=function(){ | ||
| 512 | + if($('.checked_list span.item').length==$('.line_list_all_wrap span.item').length){ | ||
| 513 | + $('#select_all').removeClass('uk-button-primary').addClass('uk-button-default').attr("data-selectType","select_all").text('全不选'); | ||
| 514 | + }else { | ||
| 515 | + $('#select_all').removeClass('uk-button-default').addClass('uk-button-primary').attr("data-selectType","select_all_no").text('全选'); | ||
| 516 | + } | ||
| 517 | + } | ||
| 518 | + | ||
| 519 | + /** | ||
| 520 | + * 进入调度工作台 | ||
| 521 | + */ | ||
| 522 | + function go_to_xd_sys() { | ||
| 523 | + var items = $('.checked_list .item'); | ||
| 524 | + if(items.length==0) | ||
| 525 | + return UIkit.notification({message: '你还没有选择线路!', pos: 'bottom-center', status: 'danger'}); | ||
| 526 | + $(this).attr('disabled', 'disabled'); | ||
| 527 | + | ||
| 528 | + show_btn_load(this, '更新缓存数据...'); | ||
| 529 | + (function () { | ||
| 530 | + var ls_line_data = []; | ||
| 531 | + $.each(items, function () { | ||
| 532 | + ls_line_data.push(codeMapps[$(this).data('id')]); | ||
| 533 | + }); | ||
| 534 | + //将线路基础信息写入localStorage | ||
| 535 | + storage.setItem('lineControlItems', JSON.stringify(ls_line_data)); | ||
| 536 | + //监控模式还是主调模式 | ||
| 537 | + storage.setItem('operationMode', $('.pattern_type_label>input')[0].checked?1:0); | ||
| 538 | + | ||
| 539 | + //进入调度工作台 | ||
| 540 | + var eq = EventProxy.create('cache_route', 'check_line_config', function () { | ||
| 541 | + var newWinOpen = $('input','.new_window_open_label')[0].checked; | ||
| 542 | + if(!newWinOpen){ | ||
| 543 | + top.window.location.href = "/real_control/v2_"; | ||
| 544 | + /*if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) { | ||
| 545 | + //移动端 | ||
| 546 | + top.window.location.href = "/real_control/mobile_v2"; | ||
| 547 | + }else{ | ||
| 548 | + top.window.location.href = "/real_control/v2"; | ||
| 549 | + }*/ | ||
| 550 | + }else{ | ||
| 551 | + window.open("/real_control/v2_"); | ||
| 552 | + $('#go_to_real_system_btn').html('已经尝试打开新窗口,如看不到,可能被浏览器阻止了'); | ||
| 553 | + } | ||
| 554 | + }); | ||
| 555 | + | ||
| 556 | + //拼接线路编码 | ||
| 557 | + var idx=''; | ||
| 558 | + $.each(ls_line_data, function () { | ||
| 559 | + idx+=(this.lineCode + ','); | ||
| 560 | + }); | ||
| 561 | + //缓存路由 | ||
| 562 | + idx=idx.substr(0, idx.length - 1); | ||
| 563 | + $.get('/realMap/findRouteByLine', {idx: idx}, function (rs) { | ||
| 564 | + if (rs) { | ||
| 565 | + for(var lineCode in rs) | ||
| 566 | + storage.setItem(lineCode + '_route', JSON.stringify(rs[lineCode])); | ||
| 567 | + | ||
| 568 | + eq.emit('cache_route'); | ||
| 569 | + } | ||
| 570 | + }); | ||
| 571 | + | ||
| 572 | + //检查线路配置 | ||
| 573 | + checkLineConfig(ls_line_data, function (rs) { | ||
| 574 | + if (rs.status == 0) | ||
| 575 | + eq.emit('check_line_config'); | ||
| 576 | + else if (rs.status == 1){ | ||
| 577 | + initLineConfig(rs.not, function () { | ||
| 578 | + eq.emit('check_line_config'); | ||
| 579 | + }); | ||
| 580 | + } | ||
| 581 | + }) | ||
| 582 | + })(); | ||
| 583 | + } | ||
| 584 | + | ||
| 585 | + function checkLineConfig(lsData, cb) { | ||
| 586 | + var lineCodeArray = []; | ||
| 587 | + $.each(lsData, function () { | ||
| 588 | + lineCodeArray.push(this.lineCode); | ||
| 589 | + }); | ||
| 590 | + | ||
| 591 | + $.ajax({ | ||
| 592 | + url: '/lineConfig/check', | ||
| 593 | + traditional: true, | ||
| 594 | + data: {codeArray: lineCodeArray}, | ||
| 595 | + method: 'POST', | ||
| 596 | + success: cb | ||
| 597 | + }); | ||
| 598 | + } | ||
| 599 | + | ||
| 600 | + function initLineConfig(arr, cb) { | ||
| 601 | + var i = 0; | ||
| 602 | + (function () { | ||
| 603 | + if (i >= arr.length) { | ||
| 604 | + cb && cb(); | ||
| 605 | + return; | ||
| 606 | + } | ||
| 607 | + var f = arguments.callee | ||
| 608 | + , lineCode = arr[i]; | ||
| 609 | + | ||
| 610 | + //showLoad('初始化' + lineIds[lineCode] + '配置信息...'); | ||
| 611 | + $.post('/lineConfig/init/' + lineCode, function (rs) { | ||
| 612 | + if (rs == 1) { | ||
| 613 | + i++; | ||
| 614 | + f(); | ||
| 615 | + } | ||
| 616 | + }); | ||
| 617 | + })(); | ||
| 618 | + } | ||
| 619 | + | ||
| 620 | + /** | ||
| 621 | + * 按钮转菊花 | ||
| 622 | + */ | ||
| 623 | + function show_btn_load(btn, msg) { | ||
| 624 | + $(btn).html('<div uk-spinner></div> ' + msg); | ||
| 625 | + } | ||
| 626 | + | ||
| 627 | + window.onload = function () { | ||
| 628 | + if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) { | ||
| 629 | + goPAGE(); | ||
| 630 | + $('.checked_list').on('touchstart', '.item', function () { | ||
| 631 | + itemDataIdRemoveClass($(this)); | ||
| 632 | + }); | ||
| 633 | + }else{ | ||
| 634 | + $('.checked_list').on('click', '.item', function () { | ||
| 635 | + itemDataIdRemoveClass($(this)); | ||
| 636 | + }); | ||
| 637 | + } | ||
| 638 | + | ||
| 639 | + } | ||
| 640 | + | ||
| 641 | + /** | ||
| 642 | + * 如何使移动端修改按钮文字 | ||
| 643 | + */ | ||
| 644 | + function goPAGE() { | ||
| 645 | + $("#go_to_real_system_btn")[0].innerText = "进入移动端线调系统"; | ||
| 646 | + $.each($("#go_to_real_system_btn").siblings(),function(i,el){ | ||
| 647 | + if(i === 1) $(el).css({'display':'none'}); | ||
| 648 | + }); | ||
| 649 | + } | ||
| 650 | + | ||
| 651 | + /** | ||
| 652 | + * 移除選中的車 | ||
| 653 | + */ | ||
| 654 | + function itemDataIdRemoveClass(e) { | ||
| 655 | + var lineCode = $(e).data('id'); | ||
| 656 | + $('.item[data-id='+lineCode+']','.line_list_all_wrap').removeClass('active'); | ||
| 657 | + $(e).remove(); | ||
| 658 | + selectButtonStatus(); | ||
| 659 | + } | ||
| 660 | + | ||
| 661 | +</script> | ||
| 662 | +</body> | ||
| 663 | +</html> | ||
| 0 | \ No newline at end of file | 664 | \ No newline at end of file |
src/main/resources/static/real_control_v2/fragments/north/toolbar_.html
0 → 100644
| 1 | +<div> | ||
| 2 | + <script id="north-toolbar-temp" type="text/html"> | ||
| 3 | + <div class="uk-margin" id="north_toolbar_panel"> | ||
| 4 | + <nav class="uk-navbar"> | ||
| 5 | + <a class="uk-navbar-brand" id="navbar_user_detail_link" title="点击切换账号"> | ||
| 6 | + <span><i class="uk-icon-user"></i> <span id="north_toolbar_user">{{user.userName}}</span></span><i class="uk-icon-ellipsis-v"></i> | ||
| 7 | + </a> | ||
| 8 | + <ul class="uk-navbar-nav"> | ||
| 9 | + {{each list as obj i}} | ||
| 10 | + <li class="uk-parent " data-uk-dropdown="{{if obj.columns}}{pos:'top-right'}{{/if}}" aria-haspopup="true" aria-expanded="false"> | ||
| 11 | + <a>{{obj.text}} <i class="uk-icon-caret-down"></i></a> | ||
| 12 | + {{if obj.children != null}} | ||
| 13 | + <div class="uk-dropdown uk-dropdown-navbar uk-dropdown-bottom" style="top: 40px; left: 0px;"> | ||
| 14 | + <ul class="uk-nav uk-nav-navbar uk-dropdown-close"> | ||
| 15 | + {{each obj.children as c j}} | ||
| 16 | + {{if c.header}} | ||
| 17 | + <li class="uk-nav-header">{{c.text}}</li> | ||
| 18 | + | ||
| 19 | + {{else if c.divider}} | ||
| 20 | + <li class="uk-nav-divider"></li> | ||
| 21 | + {{else}} | ||
| 22 | + <li class="event"><a data-event="{{c.event}}">{{c.text}}</a></li> | ||
| 23 | + {{/if}} | ||
| 24 | + {{/each}} | ||
| 25 | + </ul> | ||
| 26 | + </div> | ||
| 27 | + {{else if obj.columns}} | ||
| 28 | + <div class="uk-dropdown {{obj.clazz}}"> | ||
| 29 | + <div class="uk-grid uk-dropdown-grid"> | ||
| 30 | + {{each obj.grid as cls s}} | ||
| 31 | + <div class="{{obj.cls_class}}"> | ||
| 32 | + <ul class="uk-nav uk-nav-dropdown uk-panel uk-dropdown-close"> | ||
| 33 | + {{each cls as c z}} | ||
| 34 | + {{if c.header}} | ||
| 35 | + <li class="uk-nav-header">{{c.text}}</li> | ||
| 36 | + | ||
| 37 | + {{else if c.divider}} | ||
| 38 | + <li class="uk-nav-divider"></li> | ||
| 39 | + {{else}} | ||
| 40 | + <li class="event"> | ||
| 41 | + <a data-event="{{c.event}}"> | ||
| 42 | + {{if c.icon != null}} | ||
| 43 | + <i class="{{c.icon}}"></i> | ||
| 44 | + {{/if}} | ||
| 45 | + {{c.text}}</a> | ||
| 46 | + </li> | ||
| 47 | + {{/if}} | ||
| 48 | + {{/each}} | ||
| 49 | + </ul> | ||
| 50 | + </div> | ||
| 51 | + {{/each}} | ||
| 52 | + </div> | ||
| 53 | + </div> | ||
| 54 | + {{/if}} | ||
| 55 | + </li> | ||
| 56 | + {{/each}} | ||
| 57 | + </ul> | ||
| 58 | + <a class="uk-navbar-brand op-beijingtime-time" > | ||
| 59 | + <span></span> | ||
| 60 | + </a> | ||
| 61 | + <div class="uk-navbar-content uk-navbar-flip uk-hidden-small" style="padding-left: 0;"> | ||
| 62 | + <div class="uk-button-group"> | ||
| 63 | + <button class="uk-button uk-button-danger exit-system">退出线调</button> | ||
| 64 | + </div> | ||
| 65 | + </div> | ||
| 66 | + </nav> | ||
| 67 | + </div> | ||
| 68 | + </script> | ||
| 69 | + | ||
| 70 | + <script id="north-toolbar-electron-temp" type="text/html"> | ||
| 71 | + <div class="uk-margin" id="north_toolbar_panel"> | ||
| 72 | + <nav class="uk-navbar"> | ||
| 73 | + <a class="uk-navbar-brand" > | ||
| 74 | + <span><i class="uk-icon-user"></i> <span id="north_toolbar_user">{{user.userName}}</span>,在线</span><i class="uk-icon-ellipsis-v"></i> | ||
| 75 | + </a> | ||
| 76 | + <ul class="uk-navbar-nav"> | ||
| 77 | + {{each list as obj i}} | ||
| 78 | + <li class="uk-parent " data-uk-dropdown="{{if obj.columns}}{pos:'top-right'}{{/if}}" aria-haspopup="true" aria-expanded="false"> | ||
| 79 | + <a>{{obj.text}} <i class="uk-icon-caret-down"></i></a> | ||
| 80 | + {{if obj.children != null}} | ||
| 81 | + <div class="uk-dropdown uk-dropdown-navbar uk-dropdown-bottom" style="top: 40px; left: 0px;"> | ||
| 82 | + <ul class="uk-nav uk-nav-navbar uk-dropdown-close"> | ||
| 83 | + {{each obj.children as c j}} | ||
| 84 | + {{if c.header}} | ||
| 85 | + <li class="uk-nav-header">{{c.text}}</li> | ||
| 86 | + | ||
| 87 | + {{else if c.divider}} | ||
| 88 | + <li class="uk-nav-divider"></li> | ||
| 89 | + {{else}} | ||
| 90 | + <li class="event"><a data-event="{{c.event}}">{{c.text}}</a></li> | ||
| 91 | + {{/if}} | ||
| 92 | + {{/each}} | ||
| 93 | + </ul> | ||
| 94 | + </div> | ||
| 95 | + {{else if obj.columns}} | ||
| 96 | + <div class="uk-dropdown {{obj.clazz}}"> | ||
| 97 | + <div class="uk-grid uk-dropdown-grid"> | ||
| 98 | + {{each obj.grid as cls s}} | ||
| 99 | + <div class="{{obj.cls_class}}"> | ||
| 100 | + <ul class="uk-nav uk-nav-dropdown uk-panel uk-dropdown-close"> | ||
| 101 | + {{each cls as c z}} | ||
| 102 | + {{if c.header}} | ||
| 103 | + <li class="uk-nav-header">{{c.text}}</li> | ||
| 104 | + | ||
| 105 | + {{else if c.divider}} | ||
| 106 | + <li class="uk-nav-divider"></li> | ||
| 107 | + {{else}} | ||
| 108 | + <li class="event"> | ||
| 109 | + <a data-event="{{c.event}}"> | ||
| 110 | + {{if c.icon != null}} | ||
| 111 | + <i class="{{c.icon}}"></i> | ||
| 112 | + {{/if}} | ||
| 113 | + {{c.text}}</a> | ||
| 114 | + </li> | ||
| 115 | + {{/if}} | ||
| 116 | + {{/each}} | ||
| 117 | + </ul> | ||
| 118 | + </div> | ||
| 119 | + {{/each}} | ||
| 120 | + </div> | ||
| 121 | + </div> | ||
| 122 | + {{/if}} | ||
| 123 | + </li> | ||
| 124 | + {{/each}} | ||
| 125 | + </ul> | ||
| 126 | + <div class="uk-navbar-content uk-navbar-flip uk-hidden-small" style="padding-left: 0;"> | ||
| 127 | + <div class="icon-item" id="mnavbarIconBtnMIN" data-uk-tooltip="{pos:'bottom'}" title="最小化"> | ||
| 128 | + <img src="/real_control_v2/assets/imgs/icon/minus.png"> | ||
| 129 | + </div> | ||
| 130 | + | ||
| 131 | + <div class="icon-item" id="mnavbarIconBtnCLOSE" data-uk-tooltip="{pos:'bottom'}" title="退出系统"> | ||
| 132 | + <img src="/real_control_v2/assets/imgs/icon/remove.png"> | ||
| 133 | + </div> | ||
| 134 | + </div> | ||
| 135 | + </nav> | ||
| 136 | + </div> | ||
| 137 | + </script> | ||
| 138 | +</div> |
src/main/resources/static/real_control_v2/js/north/toolbar_.js
0 → 100644
| 1 | +/* main.html north toolbar js */ | ||
| 2 | + | ||
| 3 | +var gb_northToolbar = (function () { | ||
| 4 | + | ||
| 5 | + var modal_opts = {center: true, bgclose: false}; | ||
| 6 | + var currentUser; | ||
| 7 | + | ||
| 8 | + var init = function () { | ||
| 9 | + $.get('/real_control_v2/fragments/north/toolbar_.html', function (temp) { | ||
| 10 | + ep.emit("template", temp); | ||
| 11 | + }); | ||
| 12 | + | ||
| 13 | + $.get('/real_control_v2/js/data/json/north_toolbar.json', function (data) { | ||
| 14 | + ep.emit("data", data); | ||
| 15 | + }); | ||
| 16 | + | ||
| 17 | + //当前用户信息 | ||
| 18 | + $.get('/user/currentUser', function (user) { | ||
| 19 | + ep.emit("user", user); | ||
| 20 | + | ||
| 21 | + //查询线调权限信息 | ||
| 22 | + $.get('/realControAuthority/findByUserId', {userId: user.id}, function (rs) { | ||
| 23 | + ep.emit("xd_auth", rs); | ||
| 24 | + }); | ||
| 25 | + }); | ||
| 26 | + | ||
| 27 | + var xd_auth;//线调权限 | ||
| 28 | + var ep = EventProxy.create("template", "data", "user", 'xd_auth', function (temp, data, user, auth) { | ||
| 29 | + var tempId = '#north-toolbar-temp'; | ||
| 30 | + xd_auth = auth; | ||
| 31 | + currentUser = user; | ||
| 32 | + var t = $(tempId, temp).html() | ||
| 33 | + , htmlStr = template.render(t)({list: data, user: currentUser}); | ||
| 34 | + $('.north .north-toolbar').html(htmlStr); | ||
| 35 | + | ||
| 36 | + //exit | ||
| 37 | + $('.north .north-toolbar .exit-system').on('click', function () { | ||
| 38 | + //关闭websocket 连接 | ||
| 39 | + gb_sch_websocket.sock().close(1000, '退出线调'); | ||
| 40 | + window.location.href = '/pages/control/lineallot_v2/iframe_wrap_.html'; | ||
| 41 | + }); | ||
| 42 | + | ||
| 43 | + //过滤菜单 | ||
| 44 | + var excludes=[]; | ||
| 45 | + if(xd_auth.excludeMenus) | ||
| 46 | + excludes=xd_auth.excludeMenus.split(','); | ||
| 47 | + if(excludes.length>0){ | ||
| 48 | + $('li.event', '#north_toolbar_panel').each(function () { | ||
| 49 | + if(excludes.indexOf($('a', this).data('event'))!=-1) | ||
| 50 | + $(this).remove(); | ||
| 51 | + }); | ||
| 52 | + } | ||
| 53 | + }); | ||
| 54 | + }; | ||
| 55 | + | ||
| 56 | + init(); | ||
| 57 | + | ||
| 58 | + //点击用户名 | ||
| 59 | + $(document).on('click', '#navbar_user_detail_link', function () { | ||
| 60 | + open_modal('/real_control_v2/fragments/north/nav/user_change/user_change_modal.html', {}, {center: false, bgclose: false}); | ||
| 61 | + }); | ||
| 62 | + | ||
| 63 | + $(document).on('click', '#north_toolbar_panel li.event a', function () { | ||
| 64 | + var event = $(this).data('event'); | ||
| 65 | + handler[event] && handler[event](); | ||
| 66 | + }); | ||
| 67 | + | ||
| 68 | + //electron环境 | ||
| 69 | + if(isElectron){ | ||
| 70 | + tempId = '#north-toolbar-electron-temp'; | ||
| 71 | + //最小化 | ||
| 72 | + $(document).on('click', '#mnavbarIconBtnMIN', function () { | ||
| 73 | + ipcMain.send('webPageMainWindowMinimize'); | ||
| 74 | + }); | ||
| 75 | + //关闭 | ||
| 76 | + $(document).on('click', '#mnavbarIconBtnCLOSE', function () { | ||
| 77 | + ipcMain.send('webPageMainWindowClose'); | ||
| 78 | + }); | ||
| 79 | + } | ||
| 80 | + | ||
| 81 | + var handler = { | ||
| 82 | + // device report list | ||
| 83 | + device_report: function () { | ||
| 84 | + open_modal('/real_control_v2/fragments/north/nav/report_80.html', {}, modal_opts); | ||
| 85 | + }, | ||
| 86 | + directive_history: function () { | ||
| 87 | + open_modal('/real_control_v2/fragments/north/nav/directive_history.html', {}, modal_opts); | ||
| 88 | + }, | ||
| 89 | + tts_config: function () { | ||
| 90 | + open_modal('/real_control_v2/fragments/north/nav/tts_config.html', {}, modal_opts); | ||
| 91 | + }, | ||
| 92 | + all_devices: function () { | ||
| 93 | + open_modal('/real_control_v2/fragments/north/nav/all_devices.html', {}, modal_opts); | ||
| 94 | + }, | ||
| 95 | + device_online_rate: function () { | ||
| 96 | + open_modal('/real_control_v2/fragments/north/nav/charts/device_online_rate.html', {}, modal_opts); | ||
| 97 | + }, | ||
| 98 | + turnout_rate: function () { | ||
| 99 | + open_modal('/real_control_v2/fragments/north/nav/charts/car_out_rate.html', {}, modal_opts); | ||
| 100 | + }, | ||
| 101 | + s_e_punctuality_rate: function () { | ||
| 102 | + open_modal('/real_control_v2/fragments/north/nav/charts/strat_end_punctuality_rate.html', {}, modal_opts); | ||
| 103 | + }, | ||
| 104 | + s_e_punctuality_rate_line: function () { | ||
| 105 | + open_modal('/real_control_v2/fragments/north/nav/charts/s_e_punctuality_rate_line.html', {}, modal_opts); | ||
| 106 | + }, | ||
| 107 | + history_sch_maintain: function () { | ||
| 108 | + open_modal('/real_control_v2/fragments/north/nav/history_sch_maintain.html', {}, { | ||
| 109 | + center: false, | ||
| 110 | + bgclose: false | ||
| 111 | + }); | ||
| 112 | + }, | ||
| 113 | + sch_exec_rate: function () { | ||
| 114 | + open_modal('/real_control_v2/fragments/north/nav/charts/sch_exec_rate.html', {}, modal_opts); | ||
| 115 | + }, | ||
| 116 | + gps_play_back: function () { | ||
| 117 | + gb_map_play_back.initParams(); | ||
| 118 | + }, | ||
| 119 | + signal_state: function () { | ||
| 120 | + open_modal('/real_control_v2/fragments/north/nav/signal_state_config.html', {}, modal_opts); | ||
| 121 | + }, | ||
| 122 | + line_config: function () { | ||
| 123 | + open_modal('/real_control_v2/fragments/north/nav/line_config/line_config.html', {}, modal_opts); | ||
| 124 | + }, | ||
| 125 | + cache_data_manage: function () { | ||
| 126 | + open_modal('/real_control_v2/fragments/north/nav/cache_data/list.html', {}, modal_opts); | ||
| 127 | + }, | ||
| 128 | + form_waybill: function () { | ||
| 129 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/waybill.html', '行车路单'); | ||
| 130 | + }, | ||
| 131 | + form_waybillQp: function () { | ||
| 132 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/waybillQp.html', '行车路单'); | ||
| 133 | + }, | ||
| 134 | + form_history_message: function () { | ||
| 135 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/historyMessage.html', '调度历史消息'); | ||
| 136 | + }, | ||
| 137 | + form_account: function () { | ||
| 138 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/account.html', '驾驶员请求台账'); | ||
| 139 | + }, | ||
| 140 | + form_daily: function () { | ||
| 141 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/daily.html', '班次日报表'); | ||
| 142 | + }, | ||
| 143 | + form_correctForm: function () { | ||
| 144 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/correctForm.html', '修正报表'); | ||
| 145 | + }, | ||
| 146 | + form_statisticsDaily: function () { | ||
| 147 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/statisticsDaily.html', '统计日报'); | ||
| 148 | + }, | ||
| 149 | + form_scheduleDaily: function () { | ||
| 150 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/scheduleDaily.html', '调度日报'); | ||
| 151 | + }, | ||
| 152 | + form_jobSummary: function () { | ||
| 153 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/jobSummary.html', '工作汇总'); | ||
| 154 | + }, | ||
| 155 | + form_waybillday: function () { | ||
| 156 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/waybilldays/waybillday.html', '行车路单日报表'); | ||
| 157 | + }, | ||
| 158 | + form_inoutstation: function () { | ||
| 159 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/report/inoutstation.html', '班次到离站'); | ||
| 160 | + }, | ||
| 161 | + form_shifday: function () { | ||
| 162 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/shifdays/shifday.html', '班次车辆人员日报表'); | ||
| 163 | + }, | ||
| 164 | + form_shiftuehiclemanth: function () { | ||
| 165 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/shiftuehiclemanths/shiftuehiclemanth.html', '班次车辆人员月报表'); | ||
| 166 | + }, | ||
| 167 | + form_workDaily: function () { | ||
| 168 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/workDaily.html', '营运服务日报表'); | ||
| 169 | + }/*, | ||
| 170 | + form_peopleCarPlan: function () { | ||
| 171 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/peopleCarPlan.html', '计划车辆班次人员'); | ||
| 172 | + }*/, | ||
| 173 | + form_oilListMonth: function () { | ||
| 174 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/report/oil/oilListMonth.html', '月存油报表'); | ||
| 175 | + }, | ||
| 176 | + form_scheduleAnaly: function () { | ||
| 177 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/scheduleAnaly.html', '时刻表分析'); | ||
| 178 | + }, | ||
| 179 | + form_message: function () { | ||
| 180 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/report/message/message.html', '调度消息分析'); | ||
| 181 | + }, | ||
| 182 | + form_commandState: function () { | ||
| 183 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/commandState.html', '指令状态分析'); | ||
| 184 | + }, | ||
| 185 | + form_firstAndLastBus: function () { | ||
| 186 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/firstAndLastBus.html', '线路首末班查询'); | ||
| 187 | + }, | ||
| 188 | + form_singledata: function () { | ||
| 189 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/singledatas/singledata.html', '路单数据'); | ||
| 190 | + }, | ||
| 191 | + form_vehicleloading: function () { | ||
| 192 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/vehicleloadings/vehicleloading.html', '车辆加注'); | ||
| 193 | + }, | ||
| 194 | + form_operationservice: function () { | ||
| 195 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/operationservices/operationservice.html', '运营服务阶段报表'); | ||
| 196 | + }, | ||
| 197 | + form_linepassengerflow: function () { | ||
| 198 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/linepassengerflows/linepassengerflow.html', '线路客流量报表'); | ||
| 199 | + }, | ||
| 200 | + form_changetochange: function () { | ||
| 201 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/changetochanges/changetochange.html', '换人换车情况统计表'); | ||
| 202 | + }, | ||
| 203 | + form_turnoutrate: function () { | ||
| 204 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/changetochanges/turnoutrate.html', '营运线路出车率统计表'); | ||
| 205 | + }, | ||
| 206 | + form_executionrate: function () { | ||
| 207 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/executionrates/executionrate.html', '班次执行率统计表'); | ||
| 208 | + }, | ||
| 209 | + form_allline: function () { | ||
| 210 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/alllines/allline.html', '营运线路名称统计表'); | ||
| 211 | + }, | ||
| 212 | + curr_date_schedule: function () { | ||
| 213 | + open_modal('/real_control_v2/fragments/north/nav/curr_date_schedule.html', {}, modal_opts); | ||
| 214 | + }, | ||
| 215 | + form_schedule_daily_qp: function () { | ||
| 216 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/scheduleDailyQp.html', '调度工作日报表'); | ||
| 217 | + }, | ||
| 218 | + form_schedule_daily: function () { | ||
| 219 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/forms/statement/scheduleDaily.html', '调度工作日报表'); | ||
| 220 | + }, | ||
| 221 | + safe_driving: function () { | ||
| 222 | + open_modal('/real_control_v2/fragments/north/nav/safeDriving.html', {}, modal_opts); | ||
| 223 | + }, | ||
| 224 | + data_move_and_verification: function () { | ||
| 225 | + open_modal('/real_control_v2/fragments/north/nav/dataManager/dataMoveAndVerification.html', {}, modal_opts); | ||
| 226 | + }, | ||
| 227 | + sch_edit_info: function () { | ||
| 228 | + open_modal('/real_control_v2/fragments/north/nav/sch_edit_info/list.html', {}, modal_opts); | ||
| 229 | + }, | ||
| 230 | + form_shifday: function () { | ||
| 231 | + gb_embed_form_hanlde.open_modal_form_fragment('/pages/mforms/shifdays/shifday.html', '班次车辆人员日统计'); | ||
| 232 | + } | ||
| 233 | + }; | ||
| 234 | + | ||
| 235 | + return { | ||
| 236 | + user: function () { | ||
| 237 | + return currentUser; | ||
| 238 | + }, | ||
| 239 | + init: init | ||
| 240 | + } | ||
| 241 | +})(); |
src/main/resources/static/real_control_v2/main_.html
0 → 100644
| 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" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/autocomplete.gradient.min.css" merge="plugins"/> | ||
| 12 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/accordion.gradient.min.css" | ||
| 13 | + merge="plugins"/> | ||
| 14 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/slidenav.gradient.min.css" | ||
| 15 | + merge="plugins"/> | ||
| 16 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/uikit-2.27.1/components/sticky.gradient.min.css" | ||
| 17 | + merge="plugins"/> | ||
| 18 | + | ||
| 19 | + <!-- main style --> | ||
| 20 | + <link rel="stylesheet" href="/real_control_v2/css/main.css"/> | ||
| 21 | + <!-- north style --> | ||
| 22 | + <link rel="stylesheet" href="/real_control_v2/css/north.css" merge="custom_style"/> | ||
| 23 | + <!-- home style --> | ||
| 24 | + <link rel="stylesheet" href="/real_control_v2/css/home.css" merge="custom_style"/> | ||
| 25 | + <!-- line style --> | ||
| 26 | + <link rel="stylesheet" href="/real_control_v2/css/line_schedule.css" merge="custom_style"/> | ||
| 27 | + <link rel="stylesheet" href="/real_control_v2/css/line_schedule_table.css" merge="custom_style"/> | ||
| 28 | + | ||
| 29 | + <link rel="stylesheet" href="/real_control_v2/css/sch_autocomp_result.css" merge="custom_style"/> | ||
| 30 | + <!-- custom table --> | ||
| 31 | + <link rel="stylesheet" href="/real_control_v2/css/ct_table.css" merge="custom_style"/> | ||
| 32 | + <!-- jquery contextMenu style --> | ||
| 33 | + <link rel="stylesheet" href="/real_control_v2/assets/css/jquery.contextMenu.min.css" merge="plugins"/> | ||
| 34 | + <!-- formvalidation style --> | ||
| 35 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/formvalidation/formValidation.min.css" | ||
| 36 | + merge="plugins"/> | ||
| 37 | + <!-- js tree --> | ||
| 38 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/jstree/default/style.css" merge="plugins"/> | ||
| 39 | + <!-- tooltip css--> | ||
| 40 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.css" merge="plugins"/> | ||
| 41 | + <link rel="stylesheet" href="/real_control_v2/css/pace.css" merge="plugins"/> | ||
| 42 | + | ||
| 43 | + <link rel="stylesheet" href="/real_control_v2/css/modal_extend.css" merge="custom_style"/> | ||
| 44 | + <!-- perfect-scrollbar style --> | ||
| 45 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.css" | ||
| 46 | + merge="plugins"/> | ||
| 47 | + <!-- layer 3.0.3 --> | ||
| 48 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/layer3.0.3/skin/default/layer.css" merge="plugins"/> | ||
| 49 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/layer3.0.3/skin/moon/style.css" merge="plugins"/> | ||
| 50 | + | ||
| 51 | + <!-- flatpickr --> | ||
| 52 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.css" merge="plugins"> | ||
| 53 | + <link rel="stylesheet" href="/real_control_v2/assets/plugins/flatpickr/themes/airbnb.css" merge="plugins"> | ||
| 54 | +</head> | ||
| 55 | + | ||
| 56 | +<body> | ||
| 57 | +<div class="north uk-width-1-1 uk-panel-box"> | ||
| 58 | + <div class="uk-grid uk-grid-match"> | ||
| 59 | + <div class="uk-width-4-10"> | ||
| 60 | + <div class="uk-panel"> | ||
| 61 | + <h2 class="north-logo"> | ||
| 62 | + <!--<i class="uk-icon-life-ring"></i>--> 闵行公交调度工作台 | ||
| 63 | + </h2> | ||
| 64 | + </div> | ||
| 65 | + </div> | ||
| 66 | + <div class="uk-width-6-10"> | ||
| 67 | + <div class="uk-panel uk-width north-toolbar"></div> | ||
| 68 | + </div> | ||
| 69 | + </div> | ||
| 70 | + <div class="north-tabs"></div> | ||
| 71 | +</div> | ||
| 72 | + | ||
| 73 | +<div class="main-container"> | ||
| 74 | + <div class="load-panel"> | ||
| 75 | + <i class="uk-icon-spinner uk-icon-spin"></i> | ||
| 76 | + 正在加载数据 | ||
| 77 | + </div> | ||
| 78 | +</div> | ||
| 79 | + | ||
| 80 | +<script> | ||
| 81 | + /* var gb_beforeunload_fun = function (e) { | ||
| 82 | + var confirmationMessage = "\o/"; | ||
| 83 | + (e || window.event).returnValue = confirmationMessage; | ||
| 84 | + return confirmationMessage; | ||
| 85 | + } | ||
| 86 | + window.addEventListener("beforeunload", gb_beforeunload_fun);*/ | ||
| 87 | + | ||
| 88 | + delete window.exports; | ||
| 89 | + delete window.module; | ||
| 90 | + | ||
| 91 | + var ipcMain; | ||
| 92 | + //是否处于electron环境下 | ||
| 93 | + var isElectron = (function () { | ||
| 94 | + try { | ||
| 95 | + if (process.versions.electron) | ||
| 96 | + return true; | ||
| 97 | + else | ||
| 98 | + return false; | ||
| 99 | + } | ||
| 100 | + catch (e) { | ||
| 101 | + return false; | ||
| 102 | + } | ||
| 103 | + })(); | ||
| 104 | + | ||
| 105 | + if (isElectron) { | ||
| 106 | + var link = document.createElement("link"); | ||
| 107 | + link.type = "text/css"; | ||
| 108 | + link.rel = "stylesheet"; | ||
| 109 | + link.href = "/real_control_v2/css/electron.css"; | ||
| 110 | + document.getElementsByTagName("head")[0].appendChild(link); | ||
| 111 | + | ||
| 112 | + ipcMain = require('electron').ipcRenderer; | ||
| 113 | + } | ||
| 114 | +</script> | ||
| 115 | + | ||
| 116 | +<!-- 地图相关 --> | ||
| 117 | +<script src="http://api.map.baidu.com/api?v=2.0&ak=IGGrr4UjwIYzatoCRFKEL8sT"></script> | ||
| 118 | +<script src="http://api.map.baidu.com/library/TrafficControl/1.4/src/TrafficControl_min.js"></script> | ||
| 119 | +<script src="/assets/js/baidu//MarkerClusterer.js" merge="plugins"></script> | ||
| 120 | +<script src="/assets/js/TransGPS.js" merge="plugins"></script> | ||
| 121 | +<!-- 高德 --> | ||
| 122 | +<script src="http://webapi.amap.com/maps?v=1.3&key=16cb1c5043847e09ef9edafdd77befda"></script> | ||
| 123 | +<!-- jquery --> | ||
| 124 | +<script src="/real_control_v2/assets/js/jquery.min.js"></script> | ||
| 125 | +<!-- jquery actual --> | ||
| 126 | +<script src="/real_control_v2/assets/js/jquery.actual.min.js" merge="plugins"></script> | ||
| 127 | +<!-- jquery.serializejson JSON序列化插件 --> | ||
| 128 | +<script src="/assets/plugins/jquery.serializejson.js" merge="plugins"></script> | ||
| 129 | +<!-- moment.js 日期处理类库 --> | ||
| 130 | +<script src="/real_control_v2/assets/plugins/moment/moment.min.js"></script> | ||
| 131 | +<script src="/real_control_v2/assets/plugins/moment/zh-cn.js"></script> | ||
| 132 | + | ||
| 133 | +<!-- flatpickr --> | ||
| 134 | +<script src="/real_control_v2/assets/plugins/flatpickr/flatpickr.min.js" merge="plugins"></script> | ||
| 135 | +<script src="/real_control_v2/assets/plugins/flatpickr/l10n/zh.js" merge="plugins"></script> | ||
| 136 | + | ||
| 137 | +<!-- perfect-scrollbar --> | ||
| 138 | +<script src="/real_control_v2/assets/plugins/perfect-scrollbar/perfect-scrollbar.jquery.js" merge="plugins"></script> | ||
| 139 | +<!-- common js --> | ||
| 140 | +<script src="/real_control_v2/js/common.js"></script> | ||
| 141 | +<!-- art-template 模版引擎 --> | ||
| 142 | +<script src="/assets/plugins/template.js" merge="plugins"></script> | ||
| 143 | +<!-- d3 --> | ||
| 144 | +<script src="/assets/js/d3.min.js"></script> | ||
| 145 | +<!-- EventProxy --> | ||
| 146 | +<script src="/assets/js/eventproxy.js"></script> | ||
| 147 | +<!-- main js --> | ||
| 148 | +<script src="/real_control_v2/js/main.js"></script> | ||
| 149 | +<!-- uikit core --> | ||
| 150 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/uikit.min.js" merge="uikit_js"></script> | ||
| 151 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/notify.min.js" merge="uikit_js"></script> | ||
| 152 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/pagination.min.js" merge="uikit_js"></script> | ||
| 153 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/tooltip.min.js" merge="uikit_js"></script> | ||
| 154 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/autocomplete.min.js" merge="uikit_js"></script> | ||
| 155 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/accordion.min.js" merge="uikit_js"></script> | ||
| 156 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/timepicker.min.js" merge="uikit_js"></script> | ||
| 157 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/lightbox.min.js" merge="uikit_js"></script> | ||
| 158 | +<script src="/real_control_v2/assets/plugins/uikit-2.27.1/components/sticky.min.js" merge="uikit_js"></script> | ||
| 159 | + | ||
| 160 | + | ||
| 161 | +<!-- jquery contextMenu --> | ||
| 162 | +<script src="/real_control_v2/assets/js/jquery.contextMenu.min.js" merge="plugins"></script> | ||
| 163 | +<script src="/real_control_v2/assets/js/jquery.ui.position.min.js" merge="plugins"></script> | ||
| 164 | +<!-- formvalidation- --> | ||
| 165 | +<script src="/real_control_v2/assets/plugins/formvalidation/formValidation.min.js" merge="plugins"></script> | ||
| 166 | +<script src="/real_control_v2/assets/plugins/formvalidation/zh_CN.js" merge="plugins"></script> | ||
| 167 | +<script src="/real_control_v2/assets/plugins/formvalidation/uikit.min.js" merge="plugins"></script> | ||
| 168 | + | ||
| 169 | +<!-- jquery-validation- --> | ||
| 170 | +<script src="/real_control_v2/assets/plugins/jquery-validation/js/jquery.validate.min.js" merge="plugins"></script> | ||
| 171 | +<script src="/real_control_v2/assets/plugins/jquery-validation/js/localization/messages_zh.js" merge="plugins"></script> | ||
| 172 | + | ||
| 173 | +<!-- js tree --> | ||
| 174 | +<script src="/real_control_v2/assets/plugins/jstree/jstree.min.js" merge="plugins"></script> | ||
| 175 | +<!-- simple pinyin --> | ||
| 176 | +<script src="/assets/plugins/pinyin.js" merge="plugins"></script> | ||
| 177 | +<!-- qtip --> | ||
| 178 | +<script src="/real_control_v2/assets/plugins/qtip/jquery.qtip.min.js" merge="plugins"></script> | ||
| 179 | +<!-- layer 3.0.3 --> | ||
| 180 | +<script src="/real_control_v2/assets/plugins/layer3.0.3/layer.js" merge="plugins"></script> | ||
| 181 | + | ||
| 182 | +<!-- 数据 --> | ||
| 183 | +<script src="/real_control_v2/js/data/data_basic.js" merge="custom_js"></script> | ||
| 184 | +<script src="/real_control_v2/js/data/data_gps.js" merge="custom_js"></script> | ||
| 185 | +<script src="/real_control_v2/js/data/gps_abnormal.js" merge="custom_js"></script> | ||
| 186 | +<script src="/real_control_v2/js/data/data_line_config.js" merge="custom_js"></script> | ||
| 187 | +<!-- 线路模拟图 --> | ||
| 188 | +<script src="/real_control_v2/js/utils/svg_chart.js" merge="custom_js"></script> | ||
| 189 | +<script src="/real_control_v2/js/utils/svg_data_convert.js" merge="custom_js"></script> | ||
| 190 | +<script src="/real_control_v2/js/utils/svg_chart_tooltip.js" merge="custom_js"></script> | ||
| 191 | +<script src="/real_control_v2/js/utils/svg_chart_map.js" merge="custom_js"></script> | ||
| 192 | + | ||
| 193 | +<!-- custom table js --> | ||
| 194 | +<script src="/real_control_v2/js/utils/ct_table.js" merge="custom_js"></script> | ||
| 195 | +<!-- north js --> | ||
| 196 | +<script src="/real_control_v2/js/north/toolbar_.js" merge="custom_js"></script> | ||
| 197 | +<script src="/real_control_v2/js/north/tabs.js" merge="custom_js"></script> | ||
| 198 | +<script src="/real_control_v2/js/north/second_timer.js" merge="custom_js"></script> | ||
| 199 | +<!-- home js --> | ||
| 200 | +<script src="/real_control_v2/js/home/layout.js" merge="custom_js"></script> | ||
| 201 | +<script src="/real_control_v2/js/home/line_panel.js" merge="custom_js"></script> | ||
| 202 | +<script src="/real_control_v2/js/home/context_menu.js" merge="custom_js"></script> | ||
| 203 | +<!-- line schedule js --> | ||
| 204 | +<script src="/real_control_v2/js/line_schedule/legend.js" merge="custom_js"></script> | ||
| 205 | +<script src="/real_control_v2/js/line_schedule/layout.js" merge="custom_js"></script> | ||
| 206 | +<script src="/real_control_v2/js/line_schedule/sch_table.js" merge="custom_js"></script> | ||
| 207 | +<script src="/real_control_v2/js/line_schedule/context_menu.js" merge="custom_js"></script> | ||
| 208 | +<script src="/real_control_v2/js/line_schedule/dbclick.js" merge="custom_js"></script> | ||
| 209 | +<script src="/real_control_v2/js/line_schedule/search.js" merge="custom_js"></script> | ||
| 210 | +<script src="/real_control_v2/js/line_schedule/badge_tooltip.js" merge="custom_js"></script> | ||
| 211 | +<script src="/real_control_v2/js/line_schedule/mileage_count.js" merge="custom_js"></script> | ||
| 212 | + | ||
| 213 | +<!-- 字典相关 --> | ||
| 214 | +<script src="/assets/js/dictionary.js" merge="custom_js"></script> | ||
| 215 | +<!-- websocket --> | ||
| 216 | +<script src="/real_control_v2/assets/plugins/sockjs-client/sockjs.min.js"></script> | ||
| 217 | +<script src="/real_control_v2/js/websocket/sch_websocket.js" merge="custom_js"></script> | ||
| 218 | +<!-- tts --> | ||
| 219 | +<script src="/real_control_v2/js/utils/tts.js" merge="custom_js"></script> | ||
| 220 | + | ||
| 221 | +<!-- echart --> | ||
| 222 | +<script src="/real_control_v2/assets/echarts-3/echarts.js" merge="plugins"></script> | ||
| 223 | +<!-- Geolib --> | ||
| 224 | +<script src="/real_control_v2/geolib/geolib.js" merge="plugins"></script> | ||
| 225 | + | ||
| 226 | +<script src="/real_control_v2/js/signal_state/signal_state.js" merge="custom_js"></script> | ||
| 227 | +<script src="/real_control_v2/js/utils/dispatch_pattern.js" merge="custom_js"></script> | ||
| 228 | + | ||
| 229 | +<!-- 处理表单片段嵌入问题 --> | ||
| 230 | +<script src="/real_control_v2/js/forms/form_embed.js" merge="custom_js"></script> | ||
| 231 | +<!-- 模态框扩展 --> | ||
| 232 | +<script src="/real_control_v2/js/modal_extend.js" merge="custom_js"></script> | ||
| 233 | + | ||
| 234 | +<!-- #### 安全驾驶 start ### --> | ||
| 235 | +<div class="safe_driv_pop_wrap"></div> | ||
| 236 | +<script id="safe_driv_item-temp" type="text/html"> | ||
| 237 | + <div class="safe_driv_pop uk-animation-slide-bottom" data-nbbm="{{clzbh}}" data-type="{{yczltype}}" | ||
| 238 | + data-title="{{clzbh}} {{timeStr}} {{ycztText}}" data-url="{{url}}"> | ||
| 239 | + <div> | ||
| 240 | + <span class="title">异常 {{clzbh}}</span> | ||
| 241 | + <span class="text"> {{timeStr}} 出现违规驾驶({{ycztText}})</span> | ||
| 242 | + <span class="desc">--安全驾驶监管平台</span> | ||
| 243 | + </div> | ||
| 244 | + </div> | ||
| 245 | +</script> | ||
| 246 | + | ||
| 247 | +<script src="/real_control_v2/js/safe_driv/safeDriv.js" merge="custom_js"></script> | ||
| 248 | +<!-- #### 安全驾驶 end ### --> | ||
| 249 | + | ||
| 250 | +<!-- 打电话 --> | ||
| 251 | +<script src="/real_control_v2/js/safe_driv/call_phone.js"></script> | ||
| 252 | + | ||
| 253 | +<script id="voip_call_info_panel-temp" type="text/html"> | ||
| 254 | + <div class="voip_call_info_panel" style="{{style}}"> | ||
| 255 | + <p class="_title">VOIP</p> | ||
| 256 | + <form class="uk-form uk-form-horizontal"> | ||
| 257 | + | ||
| 258 | + <div class="uk-form-row"> | ||
| 259 | + <label class="uk-form-label">工号:</label> | ||
| 260 | + <div class="uk-form-controls"> | ||
| 261 | + <input type="text" name="agentID" value="1002" disabled> | ||
| 262 | + </div> | ||
| 263 | + </div> | ||
| 264 | + <div class="uk-form-row"> | ||
| 265 | + <label class="uk-form-label" ">分机号:</label> | ||
| 266 | + <div class="uk-form-controls"> | ||
| 267 | + <input type="text" name="dn" value=""> | ||
| 268 | + </div> | ||
| 269 | + </div> | ||
| 270 | + <div class="uk-form-row"> | ||
| 271 | + <label class="uk-form-label">自编号:</label> | ||
| 272 | + <div class="uk-form-controls"> | ||
| 273 | + <input type="text" value="{{nbbm}}" disabled> | ||
| 274 | + </div> | ||
| 275 | + </div> | ||
| 276 | + <div class="uk-form-row"> | ||
| 277 | + <label class="uk-form-label">SIM号:</label> | ||
| 278 | + <div class="uk-form-controls"> | ||
| 279 | + <input type="text" name="simNo" disabled> | ||
| 280 | + </div> | ||
| 281 | + </div> | ||
| 282 | + <hr> | ||
| 283 | + <h4 class="state_txt"> | ||
| 284 | + <button class="uk-button uk-button-large" type="button" disabled>获取SIM卡号...</button> | ||
| 285 | + </h4> | ||
| 286 | + </form> | ||
| 287 | + </div> | ||
| 288 | +</script> | ||
| 289 | +</body> | ||
| 290 | + | ||
| 291 | +</html> | ||
| 292 | +<script> | ||
| 293 | + $('body').on('click','.sidebar-toggler',function(){ | ||
| 294 | + if ($(".uk-width-1-6").css("display") == "none") { | ||
| 295 | + $('.uk-width-5-6').css("width", "83.33%"); | ||
| 296 | + $('.uk-width-1-6').show(); | ||
| 297 | + } else { | ||
| 298 | + $('.uk-width-5-6').css("width", "98.99%"); | ||
| 299 | + $('.uk-width-1-6').hide(); | ||
| 300 | + } | ||
| 301 | + }) | ||
| 302 | +</script> | ||
| 0 | \ No newline at end of file | 303 | \ No newline at end of file |