Commit 586eab26b215b7d9d2ffdc0bddfea336085ea565
1 parent
ed3c4970
线调更新
Showing
16 changed files
with
329 additions
and
91 deletions
src/main/resources/static/pages/permission/user/edit.html
| @@ -67,9 +67,13 @@ | @@ -67,9 +67,13 @@ | ||
| 67 | </div> | 67 | </div> |
| 68 | </div> | 68 | </div> |
| 69 | </div> | 69 | </div> |
| 70 | + <div> | ||
| 71 | + <!--<iframe src="authorize.html?origin=real_control_iframe" frameborder="0" style="height: 600px;width: 100%;"></iframe>--> | ||
| 72 | + </div> | ||
| 70 | <div class="form-actions"> | 73 | <div class="form-actions"> |
| 71 | <div class="row"> | 74 | <div class="row"> |
| 72 | <div class="col-md-offset-3 col-md-4"> | 75 | <div class="col-md-offset-3 col-md-4"> |
| 76 | + <!--<a href="main.html" class="btn green" id="nextStep" ><i class="fa fa-check"></i> 下一步</a>--> | ||
| 73 | <button type="submit" class="btn green" ><i class="fa fa-check"></i> 提交</button> | 77 | <button type="submit" class="btn green" ><i class="fa fa-check"></i> 提交</button> |
| 74 | <a type="button" class="btn default" href="list.html" data-pjax><i class="fa fa-times"></i> 取消</a> | 78 | <a type="button" class="btn default" href="list.html" data-pjax><i class="fa fa-times"></i> 取消</a> |
| 75 | </div> | 79 | </div> |
| @@ -79,6 +83,21 @@ | @@ -79,6 +83,21 @@ | ||
| 79 | <!-- END FORM--> | 83 | <!-- END FORM--> |
| 80 | </div> | 84 | </div> |
| 81 | </div> | 85 | </div> |
| 86 | + | ||
| 87 | +<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" style="display: none;left: 50%; | ||
| 88 | + top: 50%;transform: translate(-50%,-50%);min-width:50%;overflow: visible;bottom: inherit; right: inherit;"> | ||
| 89 | + <div class="modal-dialog"> | ||
| 90 | + <div class="modal-content"> | ||
| 91 | + <div class="modal-body" style="text-align: center;"></div> | ||
| 92 | + <div class="modal-footer" style="margin: 0 auto;"> | ||
| 93 | + <center> | ||
| 94 | + <button type="button" class="btn btn-primary" data-dismiss="modal" id="noNext" style="margin-right: 20%;padding:5px 35px;background-color: #337AB7;color: white;"> 完 成 </button> | ||
| 95 | + <button type="button" class="btn btn-primary" id="yesNext">继续配置授权</button> | ||
| 96 | + </center> | ||
| 97 | + </div> | ||
| 98 | + </div><!-- /.modal-content --> | ||
| 99 | + </div><!-- /.modal --> | ||
| 100 | +</div> | ||
| 82 | <script> | 101 | <script> |
| 83 | $(function(){ | 102 | $(function(){ |
| 84 | var id = $.url().param('no'); | 103 | var id = $.url().param('no'); |
| @@ -169,10 +188,24 @@ | @@ -169,10 +188,24 @@ | ||
| 169 | data: params, | 188 | data: params, |
| 170 | success: function(res){ | 189 | success: function(res){ |
| 171 | layer.msg('修改用户信息成功.'); | 190 | layer.msg('修改用户信息成功.'); |
| 172 | - loadPage('list.html'); | 191 | + $('#myModal').modal(); |
| 192 | + //loadPage('list.html'); | ||
| 173 | } | 193 | } |
| 174 | }); | 194 | }); |
| 175 | } | 195 | } |
| 176 | }); | 196 | }); |
| 197 | + | ||
| 198 | + $('#noNext').click(function () { | ||
| 199 | + $('#myModal').modal('hide'); | ||
| 200 | + $('.modal-backdrop').remove(); | ||
| 201 | + | ||
| 202 | + loadPage('list.html'); | ||
| 203 | + }) | ||
| 204 | + $('#yesNext').click(function () { | ||
| 205 | + var storage = window.localStorage; | ||
| 206 | + storage.setItem("editUser",$('#id').val()); | ||
| 207 | + $('#myModal').modal('hide'); | ||
| 208 | + window.location.href='main.html' | ||
| 209 | + }) | ||
| 177 | }); | 210 | }); |
| 178 | </script> | 211 | </script> |
| 179 | \ No newline at end of file | 212 | \ No newline at end of file |
src/main/resources/static/pages/permission/user/list.html
| @@ -60,6 +60,7 @@ | @@ -60,6 +60,7 @@ | ||
| 60 | </select> | 60 | </select> |
| 61 | </td> | 61 | </td> |
| 62 | <td></td> | 62 | <td></td> |
| 63 | + | ||
| 63 | <td> | 64 | <td> |
| 64 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom" > | 65 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom" > |
| 65 | <i class="fa fa-search"></i> 搜索</button> | 66 | <i class="fa fa-search"></i> 搜索</button> |
| @@ -110,6 +111,8 @@ | @@ -110,6 +111,8 @@ | ||
| 110 | <td> | 111 | <td> |
| 111 | {{obj.lastLoginDate}} | 112 | {{obj.lastLoginDate}} |
| 112 | </td> | 113 | </td> |
| 114 | + | ||
| 115 | + | ||
| 113 | <td> | 116 | <td> |
| 114 | <a class="btn btn-sm blue btn-outline" href="edit.html?no={{obj.id}}" data-pjax><i class="fa fa-edit"></i> 编辑</a> | 117 | <a class="btn btn-sm blue btn-outline" href="edit.html?no={{obj.id}}" data-pjax><i class="fa fa-edit"></i> 编辑</a> |
| 115 | <!--<button type="button" class="btn btn-sm line_allot_btn" data-id="{{obj.id}}">线调线路分配</button>--> | 118 | <!--<button type="button" class="btn btn-sm line_allot_btn" data-id="{{obj.id}}">线调线路分配</button>--> |
src/main/resources/static/real_control_v2/css/line_schedule.css
| @@ -265,6 +265,12 @@ span.fcsj-diff { | @@ -265,6 +265,12 @@ span.fcsj-diff { | ||
| 265 | color: #444; | 265 | color: #444; |
| 266 | } | 266 | } |
| 267 | 267 | ||
| 268 | +.tl-wfyd { | ||
| 269 | + background: rgb( 246,193,10); | ||
| 270 | + border-top: 1px solid #d9d9d9 !important; | ||
| 271 | + color: #444; | ||
| 272 | +} | ||
| 273 | + | ||
| 268 | .tl-xxfc{ | 274 | .tl-xxfc{ |
| 269 | background: rgb(0,255,255); | 275 | background: rgb(0,255,255); |
| 270 | color: #484747; | 276 | color: #484747; |
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/lp_change.html
| @@ -391,6 +391,7 @@ | @@ -391,6 +391,7 @@ | ||
| 391 | var type = $(this).data('type'); | 391 | var type = $(this).data('type'); |
| 392 | gb_common.$post('/realSchedule/lpChangeMulti', {leftIdx: leftIdx, rightIdx: rightIdx, type: type}, function (rs) { | 392 | gb_common.$post('/realSchedule/lpChangeMulti', {leftIdx: leftIdx, rightIdx: rightIdx, type: type}, function (rs) { |
| 393 | console.log('rs', rs); | 393 | console.log('rs', rs); |
| 394 | + debugger | ||
| 394 | notify_succ("操作成功!!"); | 395 | notify_succ("操作成功!!"); |
| 395 | if(rs.ts) | 396 | if(rs.ts) |
| 396 | gb_schedule_table.updateSchedule(rs.ts); | 397 | gb_schedule_table.updateSchedule(rs.ts); |
| @@ -402,6 +403,7 @@ | @@ -402,6 +403,7 @@ | ||
| 402 | 403 | ||
| 403 | 404 | ||
| 404 | function reLoadCurrPageData(){ | 405 | function reLoadCurrPageData(){ |
| 406 | + debugger | ||
| 405 | $('[name=lineSelect]', modal).each(function () { | 407 | $('[name=lineSelect]', modal).each(function () { |
| 406 | var array = gb_common.get_vals(gb_schedule_table.findScheduleByLine($(this).val())).sort(gb_schedule_table.schedule_sort); | 408 | var array = gb_common.get_vals(gb_schedule_table.findScheduleByLine($(this).val())).sort(gb_schedule_table.schedule_sort); |
| 407 | //按路牌分组 | 409 | //按路牌分组 |
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task_v2/add_custom.html
| @@ -21,6 +21,7 @@ | @@ -21,6 +21,7 @@ | ||
| 21 | </div> | 21 | </div> |
| 22 | 22 | ||
| 23 | <script> | 23 | <script> |
| 24 | + var schselect=''; | ||
| 24 | (function () { | 25 | (function () { |
| 25 | var wrap = '#add-sub-task-main-modal .add_custom_wrap', | 26 | var wrap = '#add-sub-task-main-modal .add_custom_wrap', |
| 26 | sch, fs=[]; | 27 | sch, fs=[]; |
| @@ -28,23 +29,23 @@ | @@ -28,23 +29,23 @@ | ||
| 28 | $(wrap).on('init', function (e, data) { | 29 | $(wrap).on('init', function (e, data) { |
| 29 | e.stopPropagation(); | 30 | e.stopPropagation(); |
| 30 | sch = data.sch; | 31 | sch = data.sch; |
| 32 | + schselect=sch; | ||
| 31 | $('.plus_icon_span', wrap).trigger('click'); | 33 | $('.plus_icon_span', wrap).trigger('click'); |
| 32 | }); | 34 | }); |
| 33 | - | ||
| 34 | //plsu icon | 35 | //plsu icon |
| 35 | $('.plus_icon_span', wrap).on('click', addTaskForm); | 36 | $('.plus_icon_span', wrap).on('click', addTaskForm); |
| 36 | 37 | ||
| 37 | var bcTypeMap = {'in': 2, 'out': 3, 'normal': 1}; | 38 | var bcTypeMap = {'in': 2, 'out': 3, 'normal': 1}; |
| 38 | function addTaskForm() { | 39 | function addTaskForm() { |
| 39 | - var htmlStr = template('sub-task-v2-form-temp', {sch: sch}) | 40 | + var htmlStr = template('sub-task-v2-form-temp', {sch: schselect}) |
| 40 | var f = $(htmlStr); | 41 | var f = $(htmlStr); |
| 41 | $('.forms', wrap).append(f); | 42 | $('.forms', wrap).append(f); |
| 42 | //字典转换 | 43 | //字典转换 |
| 43 | dictionaryUtils.transformDom($('.nt-dictionary', f)); | 44 | dictionaryUtils.transformDom($('.nt-dictionary', f)); |
| 44 | 45 | ||
| 45 | //班次类型切换 | 46 | //班次类型切换 |
| 46 | - if(bcTypeMap[sch.bcType]) | ||
| 47 | - $('[name=type2]', f).val(bcTypeMap[sch.bcType]); | 47 | + if(bcTypeMap[schselect.bcType]) |
| 48 | + $('[name=type2]', f).val(bcTypeMap[schselect.bcType]); | ||
| 48 | $('[name=type2]', f).trigger('change'); | 49 | $('[name=type2]', f).trigger('change'); |
| 49 | 50 | ||
| 50 | //滚动条到底 | 51 | //滚动条到底 |
| @@ -76,7 +77,7 @@ | @@ -76,7 +77,7 @@ | ||
| 76 | e.preventDefault(); | 77 | e.preventDefault(); |
| 77 | 78 | ||
| 78 | dataArray.push($.extend($(this).serializeJSON(), gb_common.getDisabledVal(this) | 79 | dataArray.push($.extend($(this).serializeJSON(), gb_common.getDisabledVal(this) |
| 79 | - , {/*remarks: $('#form-s-t',wrap).val(), */'schedule.id': sch.id})); | 80 | + , {/*remarks: $('#form-s-t',wrap).val(), */'schedule.id': schselect.id})); |
| 80 | $(this).data('valid', true); | 81 | $(this).data('valid', true); |
| 81 | 82 | ||
| 82 | if(allValidSuccess()){ | 83 | if(allValidSuccess()){ |
| @@ -87,11 +88,11 @@ | @@ -87,11 +88,11 @@ | ||
| 87 | //完成后更新前端数据 | 88 | //完成后更新前端数据 |
| 88 | gb_schedule_table.updateSchedule(rst); | 89 | gb_schedule_table.updateSchedule(rst); |
| 89 | UIkit.modal('#add-sub-task-main-modal').hide(); | 90 | UIkit.modal('#add-sub-task-main-modal').hide(); |
| 90 | - $('#schedule-lj_zrw-modal .main-schedule-table').trigger('refresh', {sch: sch}); | 91 | + $('#schedule-lj_zrw-modal .main-schedule-table').trigger('refresh', {sch: schselect}); |
| 91 | gb_data_basic.reload_stat_park_data(); | 92 | gb_data_basic.reload_stat_park_data(); |
| 92 | 93 | ||
| 93 | //更新路牌公里统计面板 | 94 | //更新路牌公里统计面板 |
| 94 | - gb_schedule_table.showLpMileageTipBySch(sch); | 95 | + gb_schedule_table.showLpMileageTipBySch(schselect); |
| 95 | return; | 96 | return; |
| 96 | } | 97 | } |
| 97 | var data = dataArray[i]; | 98 | var data = dataArray[i]; |
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task_v2/main.html
| 1 | <div class="uk-modal ct_move_modal" id="add-sub-task-main-modal"> | 1 | <div class="uk-modal ct_move_modal" id="add-sub-task-main-modal"> |
| 2 | <div class="uk-modal-dialog" style="width: 1100px;"> | 2 | <div class="uk-modal-dialog" style="width: 1100px;"> |
| 3 | - <a href="" class="uk-modal-close uk-close"></a> | 3 | + <a href="" class="uk-modal-close uk-close" style="position: relative;"></a> |
| 4 | + <a style="position: absolute; right: 40px;top: 8px;text-decoration-line: none;" id="min_a" >—</a> | ||
| 4 | <div class="uk-modal-header"> | 5 | <div class="uk-modal-header"> |
| 5 | <h2>添加子任务</h2></div> | 6 | <h2>添加子任务</h2></div> |
| 6 | 7 | ||
| @@ -106,7 +107,7 @@ | @@ -106,7 +107,7 @@ | ||
| 106 | </div> | 107 | </div> |
| 107 | </div> | 108 | </div> |
| 108 | 109 | ||
| 109 | - <div class="uk-grid"> | 110 | + <div class="uk-grid zirenwu"> |
| 110 | <div class="uk-width-2-3 domains"></div> | 111 | <div class="uk-width-2-3 domains"></div> |
| 111 | <div class="uk-width-1-3"> | 112 | <div class="uk-width-1-3"> |
| 112 | <div class="uk-form-row"> | 113 | <div class="uk-form-row"> |
| @@ -215,6 +216,7 @@ | @@ -215,6 +216,7 @@ | ||
| 215 | $(modal).on('init', function (e, data) { | 216 | $(modal).on('init', function (e, data) { |
| 216 | e.stopPropagation(); | 217 | e.stopPropagation(); |
| 217 | sch = data.sch; | 218 | sch = data.sch; |
| 219 | + schData=[].concat(sch) | ||
| 218 | 220 | ||
| 219 | //站到场数据 | 221 | //站到场数据 |
| 220 | st_park_data = gb_data_basic.get_stat_park_data()[sch.xlBm]; | 222 | st_park_data = gb_data_basic.get_stat_park_data()[sch.xlBm]; |
| @@ -231,6 +233,7 @@ | @@ -231,6 +233,7 @@ | ||
| 231 | 233 | ||
| 232 | var st_doms = gb_schedule_context_menu.get_st_doms(); | 234 | var st_doms = gb_schedule_context_menu.get_st_doms(); |
| 233 | //普通 | 235 | //普通 |
| 236 | + debugger | ||
| 234 | $('.normalCont', modal).html(st_doms.custom_dom); | 237 | $('.normalCont', modal).html(st_doms.custom_dom); |
| 235 | $('.add_custom_wrap', modal).trigger('init', data); | 238 | $('.add_custom_wrap', modal).trigger('init', data); |
| 236 | 239 | ||
| @@ -504,17 +507,18 @@ | @@ -504,17 +507,18 @@ | ||
| 504 | var nf = gb_common.next_elem('sub_task_form_v2', f), | 507 | var nf = gb_common.next_elem('sub_task_form_v2', f), |
| 505 | nInput = $f('reason', nf); | 508 | nInput = $f('reason', nf); |
| 506 | 509 | ||
| 507 | - if (nf.length > 0 && nInput.length > 0) { | ||
| 508 | - nInput.val(reason).trigger('change'); | ||
| 509 | - } | ||
| 510 | - else { | ||
| 511 | - var cont = f.parents('li.tab_cont'), | 510 | + // if (nf.length > 0 && nInput.length > 0) { |
| 511 | + // nInput.val(reason).trigger('change'); | ||
| 512 | + // } | ||
| 513 | + // else { | ||
| 514 | + //var cont = f.parents('li.tab_cont'), | ||
| 515 | + var cont = $(this).parents('.zirenwu'), | ||
| 512 | remInput = $('[name=remarks]', cont); | 516 | remInput = $('[name=remarks]', cont); |
| 513 | 517 | ||
| 514 | if(remInput.val()==reason + ',') | 518 | if(remInput.val()==reason + ',') |
| 515 | return; | 519 | return; |
| 516 | remInput.val(remInput.val() + reason + ','); | 520 | remInput.val(remInput.val() + reason + ','); |
| 517 | - } | 521 | + //} |
| 518 | } | 522 | } |
| 519 | 523 | ||
| 520 | function calcMileageByRoutes(routes, s, e) { | 524 | function calcMileageByRoutes(routes, s, e) { |
| @@ -672,6 +676,33 @@ | @@ -672,6 +676,33 @@ | ||
| 672 | 676 | ||
| 673 | return array; | 677 | return array; |
| 674 | } | 678 | } |
| 679 | + var schData={}; | ||
| 680 | + var addChildModel=''; | ||
| 681 | + $('#min_a').click(function () { | ||
| 682 | + $('#add-sub-task-main-modal').hide(); | ||
| 683 | + | ||
| 684 | + if (!$("#minChildDiv").length>0){ | ||
| 685 | + var minChildDiv='<div id="minChildDiv" style="width: 300px;height: 25px;z-index: 9999;position: fixed;background-color: #009dd8;bottom: 0;color: #fffbfd;border-radius: 5px;"><span style="margin-left:20px;">添加子任务</span> <a style="margin-left:160px; text-decoration:none;color: white;font-size: 24px;" id="maxChild">□</a><a style="margin-left:10px;text-decoration: none;color: white;" onclick="closeAddChild()">X</a></div>'; | ||
| 686 | + $('body').append(minChildDiv); | ||
| 687 | + } | ||
| 688 | + }); | ||
| 689 | + | ||
| 690 | + $('body').on('click','#maxChild',function () { | ||
| 691 | + $('#add-sub-task-main-modal').show(); | ||
| 692 | + $('#minChildDiv').remove(); | ||
| 693 | + }) | ||
| 694 | + | ||
| 695 | + | ||
| 675 | })(); | 696 | })(); |
| 697 | + | ||
| 698 | + function closeAddChild(){ | ||
| 699 | + $('#add-sub-task-main-modal').remove(); | ||
| 700 | + $('#minChildDiv').remove(); | ||
| 701 | + } | ||
| 702 | + | ||
| 676 | </script> | 703 | </script> |
| 677 | -</div> | ||
| 678 | \ No newline at end of file | 704 | \ No newline at end of file |
| 705 | +</div> | ||
| 706 | +<script> | ||
| 707 | + | ||
| 708 | + | ||
| 709 | +</script> | ||
| 679 | \ No newline at end of file | 710 | \ No newline at end of file |
src/main/resources/static/real_control_v2/fragments/line_schedule/sch_table.html
| @@ -24,6 +24,8 @@ | @@ -24,6 +24,8 @@ | ||
| 24 | </div> | 24 | </div> |
| 25 | </div> | 25 | </div> |
| 26 | <i class="uk-icon-eye uk-icon-hover ct_eye_icon"></i> | 26 | <i class="uk-icon-eye uk-icon-hover ct_eye_icon"></i> |
| 27 | + <i class="uk-icon-qrcode uk-icon-hover ct_calu_icon" data-toggle="tooltip" data-placement="bottom" title="计算应到实到时间对比"></i> | ||
| 28 | + | ||
| 27 | <!--<i class="uk-icon-share-alt uk-icon-hover tp_info_icon" ></i>--> | 29 | <!--<i class="uk-icon-share-alt uk-icon-hover tp_info_icon" ></i>--> |
| 28 | 30 | ||
| 29 | <span class="warn_multi_station" data-updown="{{dir}}" data-code="{{line.lineCode}}"></span> | 31 | <span class="warn_multi_station" data-updown="{{dir}}" data-code="{{line.lineCode}}"></span> |
| @@ -65,7 +67,7 @@ | @@ -65,7 +67,7 @@ | ||
| 65 | {{sch.clZbh}} | 67 | {{sch.clZbh}} |
| 66 | </dd> | 68 | </dd> |
| 67 | <dd>{{sch.qdzArrDatejh}}</dd> | 69 | <dd>{{sch.qdzArrDatejh}}</dd> |
| 68 | - <dd>{{sch.qdzArrDatesj}}</dd> | 70 | + <dd class="qdzArrDatesjDD"><span class="qdzArrDatesjSPAN">{{sch.qdzArrDatesj}}</span><span class="arrsj-diff">{{sch.arrsj_diff}}</span></dd> |
| 69 | <dd data-sort-val={{sch.fcsjT}}> | 71 | <dd data-sort-val={{sch.fcsjT}}> |
| 70 | {{sch.fcsj}} | 72 | {{sch.fcsj}} |
| 71 | {{if sch.bcType == "out"}} | 73 | {{if sch.bcType == "out"}} |
| @@ -87,6 +89,9 @@ | @@ -87,6 +89,9 @@ | ||
| 87 | {{if sch.cTasks.length > 0}} | 89 | {{if sch.cTasks.length > 0}} |
| 88 | <span class="uk-badge uk-badge-notification c_task {{if sch.c_t_mileage_status==-1}}c_task_mileage_error{{/if}}">{{sch.cTasks.length}}</span> | 90 | <span class="uk-badge uk-badge-notification c_task {{if sch.c_t_mileage_status==-1}}c_task_mileage_error{{/if}}">{{sch.cTasks.length}}</span> |
| 89 | {{/if}} | 91 | {{/if}} |
| 92 | + {{if sch.lpChange==1}} | ||
| 93 | + <span class="uk-badge uk-badge-success out">换</span> | ||
| 94 | + {{/if}} | ||
| 90 | </dd> | 95 | </dd> |
| 91 | <dd data-sort-val={{sch.dfsjT}} dbclick dbclick-type="dfsj" dbclick-val="{{sch.dfsj}}"> | 96 | <dd data-sort-val={{sch.dfsjT}} dbclick dbclick-type="dfsj" dbclick-val="{{sch.dfsj}}"> |
| 92 | {{sch.dfsj}} | 97 | {{sch.dfsj}} |
| @@ -101,12 +106,15 @@ | @@ -101,12 +106,15 @@ | ||
| 101 | tl-yzx | 106 | tl-yzx |
| 102 | {{else if sch.status==1}} | 107 | {{else if sch.status==1}} |
| 103 | tl-zzzx | 108 | tl-zzzx |
| 109 | + {{else if sch.status ==4}} | ||
| 110 | + tl-wfyd | ||
| 104 | {{else if sch.status == 0 && sch.late}} | 111 | {{else if sch.status == 0 && sch.late}} |
| 105 | tl-wd | 112 | tl-wd |
| 106 | {{/if}} fcsjActualCell"> | 113 | {{/if}} fcsjActualCell"> |
| 107 | {{sch.fcsjActual}}<span class="fcsj-diff">{{sch.fcsj_diff}}</span> | 114 | {{sch.fcsjActual}}<span class="fcsj-diff">{{sch.fcsj_diff}}</span> |
| 108 | </dd> | 115 | </dd> |
| 109 | <dd data-uk-observe> | 116 | <dd data-uk-observe> |
| 117 | + | ||
| 110 | <span title="{{sch.remarks}}" | 118 | <span title="{{sch.remarks}}" |
| 111 | data-uk-tooltip="{pos:'top-left'}">{{sch.remarks}}</span> | 119 | data-uk-tooltip="{pos:'top-left'}">{{sch.remarks}}</span> |
| 112 | </dd> | 120 | </dd> |
src/main/resources/static/real_control_v2/fragments/north/nav/line_config/line_config.html
| @@ -19,8 +19,8 @@ | @@ -19,8 +19,8 @@ | ||
| 19 | <h3 class="uk-accordion-title" data-id="{{line.lineCode}}">{{line.name}}</h3> | 19 | <h3 class="uk-accordion-title" data-id="{{line.lineCode}}">{{line.name}}</h3> |
| 20 | <div class="uk-accordion-content"> | 20 | <div class="uk-accordion-content"> |
| 21 | <ul class="uk-list uk-list-line" id="smooth_scroll_list"> | 21 | <ul class="uk-list uk-list-line" id="smooth_scroll_list"> |
| 22 | - <li><a data-href="#schedule_reload_time_panel" >班次更新时间</a></li> | ||
| 23 | - <li><a data-href="#schedule_auto_exec_panel" >班次自动执行</a></li> | 22 | + <!--<li><a data-href="#schedule_reload_time_panel" >班次更新时间</a></li>--> |
| 23 | + <!--<li><a data-href="#schedule_auto_exec_panel" >班次自动执行</a></li>--> | ||
| 24 | <li><a data-href="#out_time_type_panel" >出场时间类型</a></li> | 24 | <li><a data-href="#out_time_type_panel" >出场时间类型</a></li> |
| 25 | <li><a data-href="#in_park_source_panel" >原线路回场</a></li> | 25 | <li><a data-href="#in_park_source_panel" >原线路回场</a></li> |
| 26 | <li><a data-href="#buffer_inOut_diff_panel">到站缓冲区设置</a></li> | 26 | <li><a data-href="#buffer_inOut_diff_panel">到站缓冲区设置</a></li> |
src/main/resources/static/real_control_v2/fragments/north/nav/line_config/line_config_entity.html
| @@ -3,58 +3,58 @@ | @@ -3,58 +3,58 @@ | ||
| 3 | <form class="uk-form"></form> | 3 | <form class="uk-form"></form> |
| 4 | 4 | ||
| 5 | <script id="line_config_entity_form-temp" type="text/html"> | 5 | <script id="line_config_entity_form-temp" type="text/html"> |
| 6 | - <div id="schedule_reload_time_panel"> | ||
| 7 | - <h2 class="btn_title_line"> | ||
| 8 | - <a class="uk-link-reset">班次更新时间</a> | ||
| 9 | - </h2> | ||
| 10 | - <div> | ||
| 11 | - <div> | ||
| 12 | - <span class="line_name"></span>每天 | ||
| 13 | - <div class="uk-form-icon" style="margin: 0 5px;"> | ||
| 14 | - <i class="uk-icon-clock-o"></i> | ||
| 15 | - <input name="startOptInput" readonly type="text" class="z-depth-input" value="{{startOpt}}" | ||
| 16 | - style="width: 151px;" | ||
| 17 | - data-uk-timepicker> | ||
| 18 | - </div> | ||
| 19 | - 更新到当日排班 | ||
| 20 | - </div> | ||
| 21 | - <ul class="uk-list"> | ||
| 22 | - <li> | ||
| 23 | - <small><i class="uk-icon-question-circle"></i> 所有发车时间小于该时间的班次都默认跨过24点,手动调整的实发实达均应用此规则。</small> | ||
| 24 | - </li> | ||
| 25 | - </ul> | ||
| 26 | - <button class="uk-button uk-button-mini" id="clearRealScheduleBtn">删除实际排班</button> | ||
| 27 | - <button class="uk-button uk-button-mini" id="reLoadRealScheduleBtn">重新加载实际排班</button> | ||
| 28 | - <button class="uk-button uk-button-mini" disabled>加载历史GPS恢复到离站</button> | ||
| 29 | - </div> | ||
| 30 | - </div> | ||
| 31 | - | ||
| 32 | - <div id="schedule_auto_exec_panel"> | ||
| 33 | - <h2 class="btn_title_line"> | ||
| 34 | - <a class="uk-link-reset">班次自动执行</a> | ||
| 35 | - </h2> | ||
| 36 | - <div> | ||
| 37 | - <div> | ||
| 38 | - <label> | ||
| 39 | - <input type="checkbox" id="enableAutoExec" {{autoExec?"checked":""}}> 启用自动班次执行 | ||
| 40 | - </label> | ||
| 41 | - </div> | ||
| 42 | - <ul class="uk-list"> | ||
| 43 | - <li> | ||
| 44 | - <small style="color: red;font-size: 14px;">1、 你必须只应该对【无固定走向且无人监管的线路】启用此项。</small> | ||
| 45 | - </li> | ||
| 46 | - <li> | ||
| 47 | - <small>2、启用该选项后,系统将不再依赖相关定位信号来执行班次。</small> | ||
| 48 | - </li> | ||
| 49 | - <li> | ||
| 50 | - <small>3、系统将在合适的时候自动填入实发实达时间,以完善报表。</small> | ||
| 51 | - </li> | ||
| 52 | - <li> | ||
| 53 | - <small>4、系统不会下发班次调度指令。</small> | ||
| 54 | - </li> | ||
| 55 | - </ul> | ||
| 56 | - </div> | ||
| 57 | - </div> | 6 | + <!--<div id="schedule_reload_time_panel">--> |
| 7 | + <!--<h2 class="btn_title_line">--> | ||
| 8 | + <!--<a class="uk-link-reset">班次更新时间</a>--> | ||
| 9 | + <!--</h2>--> | ||
| 10 | + <!--<div>--> | ||
| 11 | + <!--<div>--> | ||
| 12 | + <!--<span class="line_name"></span>每天--> | ||
| 13 | + <!--<div class="uk-form-icon" style="margin: 0 5px;">--> | ||
| 14 | + <!--<i class="uk-icon-clock-o"></i>--> | ||
| 15 | + <!--<input name="startOptInput" readonly type="text" class="z-depth-input" value="{{startOpt}}"--> | ||
| 16 | + <!--style="width: 151px;"--> | ||
| 17 | + <!--data-uk-timepicker>--> | ||
| 18 | + <!--</div>--> | ||
| 19 | + <!--更新到当日排班--> | ||
| 20 | + <!--</div>--> | ||
| 21 | + <!--<ul class="uk-list">--> | ||
| 22 | + <!--<li>--> | ||
| 23 | + <!--<small><i class="uk-icon-question-circle"></i> 所有发车时间小于该时间的班次都默认跨过24点,手动调整的实发实达均应用此规则。</small>--> | ||
| 24 | + <!--</li>--> | ||
| 25 | + <!--</ul>--> | ||
| 26 | + <!--<button class="uk-button uk-button-mini" id="clearRealScheduleBtn">删除实际排班</button>--> | ||
| 27 | + <!--<button class="uk-button uk-button-mini" id="reLoadRealScheduleBtn">重新加载实际排班</button>--> | ||
| 28 | + <!--<button class="uk-button uk-button-mini" disabled>加载历史GPS恢复到离站</button>--> | ||
| 29 | + <!--</div>--> | ||
| 30 | + <!--</div>--> | ||
| 31 | + | ||
| 32 | + <!--<div id="schedule_auto_exec_panel">--> | ||
| 33 | + <!--<h2 class="btn_title_line">--> | ||
| 34 | + <!--<a class="uk-link-reset">班次自动执行</a>--> | ||
| 35 | + <!--</h2>--> | ||
| 36 | + <!--<div>--> | ||
| 37 | + <!--<div>--> | ||
| 38 | + <!--<label>--> | ||
| 39 | + <!--<input type="checkbox" id="enableAutoExec" {{autoExec?"checked":""}}> 启用自动班次执行--> | ||
| 40 | + <!--</label>--> | ||
| 41 | + <!--</div>--> | ||
| 42 | + <!--<ul class="uk-list">--> | ||
| 43 | + <!--<li>--> | ||
| 44 | + <!--<small style="color: red;font-size: 14px;">1、 你必须只应该对【无固定走向且无人监管的线路】启用此项。</small>--> | ||
| 45 | + <!--</li>--> | ||
| 46 | + <!--<li>--> | ||
| 47 | + <!--<small>2、启用该选项后,系统将不再依赖相关定位信号来执行班次。</small>--> | ||
| 48 | + <!--</li>--> | ||
| 49 | + <!--<li>--> | ||
| 50 | + <!--<small>3、系统将在合适的时候自动填入实发实达时间,以完善报表。</small>--> | ||
| 51 | + <!--</li>--> | ||
| 52 | + <!--<li>--> | ||
| 53 | + <!--<small>4、系统不会下发班次调度指令。</small>--> | ||
| 54 | + <!--</li>--> | ||
| 55 | + <!--</ul>--> | ||
| 56 | + <!--</div>--> | ||
| 57 | + <!--</div>--> | ||
| 58 | 58 | ||
| 59 | <div id="out_time_type_panel"> | 59 | <div id="out_time_type_panel"> |
| 60 | <h2 class="btn_title_line"> | 60 | <h2 class="btn_title_line"> |
src/main/resources/static/real_control_v2/js/data/json/north_toolbar.json
| @@ -174,7 +174,13 @@ | @@ -174,7 +174,13 @@ | ||
| 174 | "id": 4.3, | 174 | "id": 4.3, |
| 175 | "text": "信号标记", | 175 | "text": "信号标记", |
| 176 | "event": "signal_state" | 176 | "event": "signal_state" |
| 177 | + }, | ||
| 178 | + { | ||
| 179 | + "id": 4.4, | ||
| 180 | + "text": "翻班与自动执行", | ||
| 181 | + "event": "fbzdzx_config" | ||
| 177 | } | 182 | } |
| 183 | + | ||
| 178 | ] | 184 | ] |
| 179 | } | 185 | } |
| 180 | ] | 186 | ] |
| 181 | \ No newline at end of file | 187 | \ No newline at end of file |
src/main/resources/static/real_control_v2/js/line_schedule/context_menu.js
| @@ -278,6 +278,10 @@ var gb_schedule_context_menu = (function () { | @@ -278,6 +278,10 @@ var gb_schedule_context_menu = (function () { | ||
| 278 | }, modal_opts); | 278 | }, modal_opts); |
| 279 | }, | 279 | }, |
| 280 | add_sub_task: function (sch) { | 280 | add_sub_task: function (sch) { |
| 281 | + if ($('#add-sub-task-main-modal').length>0) { | ||
| 282 | + layer.msg('已存在正在添加的子任务.'); | ||
| 283 | + return; | ||
| 284 | + } | ||
| 281 | open_modal(folder + '/sub_task_v2/main.html', { | 285 | open_modal(folder + '/sub_task_v2/main.html', { |
| 282 | sch: sch | 286 | sch: sch |
| 283 | }, modal_opts); | 287 | }, modal_opts); |
src/main/resources/static/real_control_v2/js/line_schedule/legend.js
| @@ -39,27 +39,90 @@ var gb_sch_legend = (function () { | @@ -39,27 +39,90 @@ var gb_sch_legend = (function () { | ||
| 39 | 39 | ||
| 40 | //eye init | 40 | //eye init |
| 41 | var eyeState = storage.getItem('eye_state'); | 41 | var eyeState = storage.getItem('eye_state'); |
| 42 | - if(eyeState && eyeState==1) | 42 | + if (eyeState && eyeState == 1) |
| 43 | $(eye_dom).eq(0).trigger('click'); | 43 | $(eye_dom).eq(0).trigger('click'); |
| 44 | }; | 44 | }; |
| 45 | 45 | ||
| 46 | var eye_dom = '.schedule-wrap i.ct_eye_icon'; | 46 | var eye_dom = '.schedule-wrap i.ct_eye_icon'; |
| 47 | $(document).on('click', eye_dom, changeHandicappedStyle); | 47 | $(document).on('click', eye_dom, changeHandicappedStyle); |
| 48 | + | ||
| 48 | function changeHandicappedStyle() { | 49 | function changeHandicappedStyle() { |
| 49 | - if($(this).hasClass('active')){ | 50 | + if ($(this).hasClass('active')) { |
| 50 | $(eye_dom).removeClass('active'); | 51 | $(eye_dom).removeClass('active'); |
| 51 | $('#handicappedStyleLink', 'head').remove(); | 52 | $('#handicappedStyleLink', 'head').remove(); |
| 52 | storage.setItem('eye_state', 0); | 53 | storage.setItem('eye_state', 0); |
| 53 | } | 54 | } |
| 54 | - else{ | 55 | + else { |
| 55 | $(eye_dom).addClass('active'); | 56 | $(eye_dom).addClass('active'); |
| 56 | - $("<link>").attr({rel: "stylesheet", type: "text/css", href: "/real_control_v2/css/handicapped_style.css", | ||
| 57 | - id: 'handicappedStyleLink' | ||
| 58 | - }).appendTo("head"); | 57 | + $("<link>").attr({ |
| 58 | + rel: "stylesheet", type: "text/css", href: "/real_control_v2/css/handicapped_style.css", | ||
| 59 | + id: 'handicappedStyleLink' | ||
| 60 | + }).appendTo("head"); | ||
| 59 | storage.setItem('eye_state', 1); | 61 | storage.setItem('eye_state', 1); |
| 60 | } | 62 | } |
| 61 | } | 63 | } |
| 62 | 64 | ||
| 65 | + var calu_dom = '.schedule-wrap i.ct_calu_icon'; | ||
| 66 | + $(document).on('click', calu_dom, changeHandicau); | ||
| 67 | + var storage = window.localStorage; | ||
| 68 | + var ydsddb = storage.getItem('ydsddb'); | ||
| 69 | + | ||
| 70 | + function changeHandicau() { | ||
| 71 | + if (ydsddb) { | ||
| 72 | + ydsddb = false; | ||
| 73 | + storage.setItem('ydsddb', ''); | ||
| 74 | + } else { | ||
| 75 | + ydsddb = 'true'; | ||
| 76 | + storage.setItem('ydsddb', ydsddb); | ||
| 77 | + } | ||
| 78 | + showYdSdDb(); | ||
| 79 | + } | ||
| 80 | + | ||
| 81 | + function showYdSdDb() { | ||
| 82 | + if (ydsddb) { | ||
| 83 | + var sdsjs = $('.schedule-wrap').find('.qdzArrDatesjDD'); | ||
| 84 | + if (sdsjs && sdsjs.length > 0) { | ||
| 85 | + for (var i = 0; i < sdsjs.length; i++) { | ||
| 86 | + var qdzArrDatesjSPAN = $(sdsjs[i]).find('.qdzArrDatesjSPAN'); | ||
| 87 | + var ydsj = $(sdsjs[i]).prev().text(); | ||
| 88 | + if (qdzArrDatesjSPAN && qdzArrDatesjSPAN.length > 0) { | ||
| 89 | + var sdsjTexts = $(qdzArrDatesjSPAN).text(); | ||
| 90 | + if (ydsj && sdsjTexts && ydsj != sdsjTexts) { | ||
| 91 | + var ydsja = ydsj.split(':'); | ||
| 92 | + var sdsja = sdsjTexts.split(':'); | ||
| 93 | + var ydsdDiffTime = 0; | ||
| 94 | + if (parseInt(sdsja[0]) < 1 && parseInt(ydsja[0]) >= 23) { | ||
| 95 | + ydsdDiffTime = (24 + parseInt(sdsja[0]) - parseInt(ydsja[0])) * 60 + (parseInt(sdsja[1]) - parseInt(ydsja[1])); | ||
| 96 | + } else { | ||
| 97 | + ydsdDiffTime = (parseInt(sdsja[0]) - parseInt(ydsja[0])) * 60 + (parseInt(sdsja[1]) - parseInt(ydsja[1])); | ||
| 98 | + } | ||
| 99 | + ydsdDiffTime = ydsdDiffTime < 0 ? ydsdDiffTime : '+' + ydsdDiffTime; | ||
| 100 | + $(qdzArrDatesjSPAN).next().text(' (' + ydsdDiffTime + ')'); | ||
| 101 | + } | ||
| 102 | + } else { | ||
| 103 | + var sdsjTexts = $(sdsjs[i]).text(); | ||
| 104 | + if (ydsj && sdsjTexts && ydsj != sdsjTexts) { | ||
| 105 | + var ydsja = ydsj.split(':'); | ||
| 106 | + var sdsja = sdsjTexts.split(':'); | ||
| 107 | + var ydsdDiffTime = 0; | ||
| 108 | + if (parseInt(sdsja[0]) <= 1 && parseInt(ydsja[0]) >= 23) { | ||
| 109 | + ydsdDiffTime = (24 + parseInt(sdsja[0]) - parseInt(ydsja[0])) * 60 + (parseInt(sdsja[1]) - parseInt(ydsja[1])); | ||
| 110 | + } else { | ||
| 111 | + ydsdDiffTime = (parseInt(sdsja[0]) - parseInt(ydsja[0])) * 60 + (parseInt(sdsja[1]) - parseInt(ydsja[1])); | ||
| 112 | + } | ||
| 113 | + ydsdDiffTime = ydsdDiffTime < 0 ? ydsdDiffTime : '+' + ydsdDiffTime; | ||
| 114 | + $(sdsjs[i]).append('<span class=".arrsj-diff"> (' + ydsdDiffTime + ')</span>'); | ||
| 115 | + } | ||
| 116 | + } | ||
| 117 | + } | ||
| 118 | + } | ||
| 119 | + | ||
| 120 | + } | ||
| 121 | + else { | ||
| 122 | + $('.arrsj-diff').text(''); | ||
| 123 | + } | ||
| 124 | + } | ||
| 125 | + | ||
| 63 | //展开图例 | 126 | //展开图例 |
| 64 | var openLegend = function () { | 127 | var openLegend = function () { |
| 65 | /*$('.qtip.sch-tl-tip').qtip('destroy', true); | 128 | /*$('.qtip.sch-tl-tip').qtip('destroy', true); |
| @@ -81,8 +144,12 @@ var gb_sch_legend = (function () { | @@ -81,8 +144,12 @@ var gb_sch_legend = (function () { | ||
| 81 | //记录状态 | 144 | //记录状态 |
| 82 | storage.setItem(locaKey, 1);*/ | 145 | storage.setItem(locaKey, 1);*/ |
| 83 | }; | 146 | }; |
| 147 | + var showYdSdtime = function () { | ||
| 148 | + showYdSdDb(); | ||
| 149 | + } | ||
| 84 | 150 | ||
| 85 | return { | 151 | return { |
| 86 | - init: initLegend | 152 | + init: initLegend, |
| 153 | + showYdSdDb: showYdSdtime | ||
| 87 | }; | 154 | }; |
| 88 | })(); | 155 | })(); |
| 89 | \ No newline at end of file | 156 | \ No newline at end of file |
src/main/resources/static/real_control_v2/js/line_schedule/sch_table.js
| @@ -29,6 +29,7 @@ var gb_schedule_table = (function () { | @@ -29,6 +29,7 @@ var gb_schedule_table = (function () { | ||
| 29 | 29 | ||
| 30 | var show = function (cb) { | 30 | var show = function (cb) { |
| 31 | //从服务器获取班次数据 | 31 | //从服务器获取班次数据 |
| 32 | + debugger | ||
| 32 | $.get('/realSchedule/lines', { | 33 | $.get('/realSchedule/lines', { |
| 33 | lines: gb_data_basic.line_idx | 34 | lines: gb_data_basic.line_idx |
| 34 | }, function (rs) { | 35 | }, function (rs) { |
| @@ -42,6 +43,7 @@ var gb_schedule_table = (function () { | @@ -42,6 +43,7 @@ var gb_schedule_table = (function () { | ||
| 42 | if(this.status==-1) | 43 | if(this.status==-1) |
| 43 | clearActualTime(this); | 44 | clearActualTime(this); |
| 44 | calc_sch_real_shift(this); | 45 | calc_sch_real_shift(this); |
| 46 | + wfydcolor(this); | ||
| 45 | line2Schedule[lineCode][this.id] = this; | 47 | line2Schedule[lineCode][this.id] = this; |
| 46 | //子任务公里是否与计划平 | 48 | //子任务公里是否与计划平 |
| 47 | this.c_t_mileage_status = calcCTaskMileageStatus(this); | 49 | this.c_t_mileage_status = calcCTaskMileageStatus(this); |
| @@ -103,8 +105,11 @@ var gb_schedule_table = (function () { | @@ -103,8 +105,11 @@ var gb_schedule_table = (function () { | ||
| 103 | 105 | ||
| 104 | //监听gps车辆信息 | 106 | //监听gps车辆信息 |
| 105 | gb_data_gps.registerCallback(renderCarRemark); | 107 | gb_data_gps.registerCallback(renderCarRemark); |
| 108 | + gb_sch_legend.showYdSdDb(); | ||
| 109 | + gb_schedule_context_menu.ydsd_init() | ||
| 106 | cb && cb(); | 110 | cb && cb(); |
| 107 | }); | 111 | }); |
| 112 | + | ||
| 108 | }; | 113 | }; |
| 109 | 114 | ||
| 110 | var renderCarRemark = function () { | 115 | var renderCarRemark = function () { |
| @@ -168,7 +173,8 @@ var gb_schedule_table = (function () { | @@ -168,7 +173,8 @@ var gb_schedule_table = (function () { | ||
| 168 | var fs = 'YYYY-MM-DD HH:mm' | 173 | var fs = 'YYYY-MM-DD HH:mm' |
| 169 | ,m1 = moment(sch['fcsjActualTime']).format(fs) | 174 | ,m1 = moment(sch['fcsjActualTime']).format(fs) |
| 170 | ,m2 = moment(sch['dfsjT']).format(fs);//去掉秒 | 175 | ,m2 = moment(sch['dfsjT']).format(fs);//去掉秒 |
| 171 | - | 176 | + console.log(moment(m1, fs).format('X')) |
| 177 | + console.log(moment(m2, fs).format('X')) | ||
| 172 | var diff = moment(m1, fs).format('X') - moment(m2, fs).format('X') | 178 | var diff = moment(m1, fs).format('X') - moment(m2, fs).format('X') |
| 173 | ,fcsj_diff = parseInt(diff / 60, 10);; | 179 | ,fcsj_diff = parseInt(diff / 60, 10);; |
| 174 | 180 | ||
| @@ -180,6 +186,14 @@ var gb_schedule_table = (function () { | @@ -180,6 +186,14 @@ var gb_schedule_table = (function () { | ||
| 180 | sch.fcsj_diff = ''; | 186 | sch.fcsj_diff = ''; |
| 181 | } | 187 | } |
| 182 | }; | 188 | }; |
| 189 | + //无发有到时间 | ||
| 190 | + var wfydcolor=function (sch) { | ||
| 191 | + if (sch.qdzArrDatesj!=''&&sch.qdzArrDatesj!=null&&sch.fcsjActual==null) { | ||
| 192 | + sch.status=4; | ||
| 193 | + } | ||
| 194 | + } | ||
| 195 | + | ||
| 196 | + | ||
| 183 | 197 | ||
| 184 | function arrayIsNull(array) { | 198 | function arrayIsNull(array) { |
| 185 | return !array || array.length == 0; | 199 | return !array || array.length == 0; |
| @@ -262,6 +276,7 @@ var gb_schedule_table = (function () { | @@ -262,6 +276,7 @@ var gb_schedule_table = (function () { | ||
| 262 | * @param lineCode | 276 | * @param lineCode |
| 263 | */ | 277 | */ |
| 264 | var reLoadAndRefresh = function (lineCode) { | 278 | var reLoadAndRefresh = function (lineCode) { |
| 279 | + debugger | ||
| 265 | $.get('/realSchedule/lines', { | 280 | $.get('/realSchedule/lines', { |
| 266 | lines: lineCode + ',' | 281 | lines: lineCode + ',' |
| 267 | }, function (rs) { | 282 | }, function (rs) { |
| @@ -373,6 +388,10 @@ var gb_schedule_table = (function () { | @@ -373,6 +388,10 @@ var gb_schedule_table = (function () { | ||
| 373 | $(dds[8]).html('<span title="' + sch.remarks + '" data-uk-tooltip="{pos:\'top-left\'}">' + sch.remarks + '</span>'); | 388 | $(dds[8]).html('<span title="' + sch.remarks + '" data-uk-tooltip="{pos:\'top-left\'}">' + sch.remarks + '</span>'); |
| 374 | else | 389 | else |
| 375 | $(dds[8]).html(''); | 390 | $(dds[8]).html(''); |
| 391 | + if (sch.lpChange==1) { | ||
| 392 | + var d8html=$(dds[8]).html(); | ||
| 393 | + $(dds[8]).html(d8html+'<span class="uk-badge uk-badge-success out">换</span>'); | ||
| 394 | + } | ||
| 376 | 395 | ||
| 377 | //信号状态标记 | 396 | //信号状态标记 |
| 378 | gb_signal_state.marker_sch(sch); | 397 | gb_signal_state.marker_sch(sch); |
| @@ -863,7 +882,7 @@ var gb_schedule_table = (function () { | @@ -863,7 +882,7 @@ var gb_schedule_table = (function () { | ||
| 863 | var findSCodeErrorInfo = function (lineCode, upDown) { | 882 | var findSCodeErrorInfo = function (lineCode, upDown) { |
| 864 | return errorCodeData[lineCode+'_'+upDown]; | 883 | return errorCodeData[lineCode+'_'+upDown]; |
| 865 | }; | 884 | }; |
| 866 | - | 885 | + |
| 867 | return { | 886 | return { |
| 868 | show: show, | 887 | show: show, |
| 869 | findScheduleByLine: findScheduleByLine, | 888 | findScheduleByLine: findScheduleByLine, |
src/main/resources/static/real_control_v2/js/north/toolbar.js
| @@ -122,6 +122,15 @@ var gb_northToolbar = (function () { | @@ -122,6 +122,15 @@ var gb_northToolbar = (function () { | ||
| 122 | line_config: function () { | 122 | line_config: function () { |
| 123 | open_modal('/real_control_v2/fragments/north/nav/line_config/line_config.html', {}, modal_opts); | 123 | open_modal('/real_control_v2/fragments/north/nav/line_config/line_config.html', {}, modal_opts); |
| 124 | }, | 124 | }, |
| 125 | + // bcgxsj_config: function () { | ||
| 126 | + // open_modal('/real_control_v2/fragments/north/nav/line_config/bcgxsj_config.html', {}, modal_opts); | ||
| 127 | + // }, | ||
| 128 | + // bczdzx_config: function () { | ||
| 129 | + // open_modal('/real_control_v2/fragments/north/nav/line_config/bczdzx_config.html', {}, modal_opts); | ||
| 130 | + // }, | ||
| 131 | + fbzdzx_config: function () { | ||
| 132 | + open_modal('/real_control_v2/fragments/north/nav/line_config/fbzdzx_config.html', {}, modal_opts); | ||
| 133 | + }, | ||
| 125 | cache_data_manage: function () { | 134 | cache_data_manage: function () { |
| 126 | open_modal('/real_control_v2/fragments/north/nav/cache_data/list.html', {}, modal_opts); | 135 | open_modal('/real_control_v2/fragments/north/nav/cache_data/list.html', {}, modal_opts); |
| 127 | }, | 136 | }, |
src/main/resources/static/real_control_v2/mapmonitor/fragments/playback_v3/left.html
| @@ -388,7 +388,6 @@ | @@ -388,7 +388,6 @@ | ||
| 388 | if (gps['section_code']) | 388 | if (gps['section_code']) |
| 389 | array.push(gps); | 389 | array.push(gps); |
| 390 | } | 390 | } |
| 391 | - | ||
| 392 | var htmlStr = template('pbv3_trail_tbody-temp', {array: array}); | 391 | var htmlStr = template('pbv3_trail_tbody-temp', {array: array}); |
| 393 | $('.trail-info-table .ct_table_body', leftWrap).html(htmlStr); | 392 | $('.trail-info-table .ct_table_body', leftWrap).html(htmlStr); |
| 394 | } | 393 | } |
| @@ -474,7 +473,6 @@ | @@ -474,7 +473,6 @@ | ||
| 474 | array.sort(function (a, b) { | 473 | array.sort(function (a, b) { |
| 475 | return a.st - b.st; | 474 | return a.st - b.st; |
| 476 | }); | 475 | }); |
| 477 | - | ||
| 478 | var htmlStr = template('pbv3_abnormal_table_temp', {array: array}); | 476 | var htmlStr = template('pbv3_abnormal_table_temp', {array: array}); |
| 479 | $('.abnormal_table .ct_table_body', leftWrap).html(htmlStr); | 477 | $('.abnormal_table .ct_table_body', leftWrap).html(htmlStr); |
| 480 | } | 478 | } |
src/main/resources/static/real_control_v2/mapmonitor/fragments/playback_v3/right.html
| @@ -8,6 +8,8 @@ | @@ -8,6 +8,8 @@ | ||
| 8 | <label><input type="radio" name="playSpeed" value="5" checked disabled> x5</label> | 8 | <label><input type="radio" name="playSpeed" value="5" checked disabled> x5</label> |
| 9 | <label><input type="radio" name="playSpeed" value="10" disabled> x10</label> | 9 | <label><input type="radio" name="playSpeed" value="10" disabled> x10</label> |
| 10 | <label><input type="radio" name="playSpeed" value="20" disabled> x20</label> | 10 | <label><input type="radio" name="playSpeed" value="20" disabled> x20</label> |
| 11 | + <label><input type="radio" name="playSpeed" value="40" disabled> x40</label> | ||
| 12 | + <label><input type="radio" name="playSpeed" value="80" disabled> x80</label> | ||
| 11 | </form> | 13 | </form> |
| 12 | </div> | 14 | </div> |
| 13 | <div class="multi-items"> | 15 | <div class="multi-items"> |
| @@ -185,7 +187,7 @@ | @@ -185,7 +187,7 @@ | ||
| 185 | $('.top-btn-list .play', rightWrap).on('click', function () { | 187 | $('.top-btn-list .play', rightWrap).on('click', function () { |
| 186 | if(toolsDisabled()) | 188 | if(toolsDisabled()) |
| 187 | return; | 189 | return; |
| 188 | - | 190 | +debugger |
| 189 | if(!$(this).hasClass('pause')){ | 191 | if(!$(this).hasClass('pause')){ |
| 190 | //第一次点击播放,清除一下 | 192 | //第一次点击播放,清除一下 |
| 191 | if(play_before_flag){ | 193 | if(play_before_flag){ |
| @@ -272,6 +274,8 @@ | @@ -272,6 +274,8 @@ | ||
| 272 | */ | 274 | */ |
| 273 | var gpsMarker; | 275 | var gpsMarker; |
| 274 | var xlPolyline = {}; | 276 | var xlPolyline = {}; |
| 277 | + var circleFirstStop=0; | ||
| 278 | + var circlePrevStop=0; | ||
| 275 | var drawCarMarker = function (gps) { | 279 | var drawCarMarker = function (gps) { |
| 276 | if(!gpsMarker){ | 280 | if(!gpsMarker){ |
| 277 | gpsMarker = new BMap.Marker(new BMap.Point(gps.bd_lon, gps.bd_lat)); | 281 | gpsMarker = new BMap.Marker(new BMap.Point(gps.bd_lon, gps.bd_lat)); |
| @@ -287,8 +291,12 @@ | @@ -287,8 +291,12 @@ | ||
| 287 | var width = gb_map_imap.calcGpsMarkerWidth(gps.nbbm); | 291 | var width = gb_map_imap.calcGpsMarkerWidth(gps.nbbm); |
| 288 | gpsMarker.setIcon(new BMap.Icon(gb_map_imap.createCarIconRotation(gps, width), new BMap.Size(width, 75))); | 292 | gpsMarker.setIcon(new BMap.Icon(gb_map_imap.createCarIconRotation(gps, width), new BMap.Size(width, 75))); |
| 289 | } | 293 | } |
| 290 | - | ||
| 291 | - if(autoChange && (gps.lineId!=xlPolyline.lineId || gps.upDown!=xlPolyline.upDown)){ | 294 | + var circleLine=queryIsCircle(gps.lineId,gps.nbbm,gps.timestamp,gps.stopNo); |
| 295 | + if (circleLine) | ||
| 296 | + circleFirstStop=gps.stopNo; | ||
| 297 | + circleLine=circleLine&&circlePrevStop!=circleFirstStop?true:false; | ||
| 298 | + circlePrevStop=gps.stopNo; | ||
| 299 | + if(autoChange && (gps.lineId!=xlPolyline.lineId || gps.upDown!=xlPolyline.upDown||circleLine)){ | ||
| 292 | drawXlPolyline(gps.lineId, gps.upDown); | 300 | drawXlPolyline(gps.lineId, gps.upDown); |
| 293 | } | 301 | } |
| 294 | } | 302 | } |
| @@ -435,6 +443,11 @@ | @@ -435,6 +443,11 @@ | ||
| 435 | //清除站点名称 | 443 | //清除站点名称 |
| 436 | clearOverlayArray(xlPolyline.tMarkers); | 444 | clearOverlayArray(xlPolyline.tMarkers); |
| 437 | xlPolyline.tMarkers = []; | 445 | xlPolyline.tMarkers = []; |
| 446 | + //清除轨迹线 | ||
| 447 | + clearOverlayArray(trailPolylineArray); | ||
| 448 | + trailPolylineArray=[]; | ||
| 449 | + trailPolyline=null; | ||
| 450 | + trailArray=[]; | ||
| 438 | } | 451 | } |
| 439 | 452 | ||
| 440 | function clearOverlayArray(array) { | 453 | function clearOverlayArray(array) { |
| @@ -446,7 +459,7 @@ | @@ -446,7 +459,7 @@ | ||
| 446 | } | 459 | } |
| 447 | 460 | ||
| 448 | //更新轨迹线条 | 461 | //更新轨迹线条 |
| 449 | - var trailArray=[], trailPolyline; | 462 | + var trailArray=[], trailPolyline,trailPolylineArray=[]; |
| 450 | function updateTrailLine(gps, i) { | 463 | function updateTrailLine(gps, i) { |
| 451 | trailArray.push(gpsMarker.getPosition()); | 464 | trailArray.push(gpsMarker.getPosition()); |
| 452 | if(!trailPolyline){ | 465 | if(!trailPolyline){ |
| @@ -456,7 +469,7 @@ | @@ -456,7 +469,7 @@ | ||
| 456 | else{ | 469 | else{ |
| 457 | trailPolyline.setPath(trailArray); | 470 | trailPolyline.setPath(trailArray); |
| 458 | } | 471 | } |
| 459 | - | 472 | + trailPolylineArray.push(trailPolyline); |
| 460 | //最多记录4000个点位轨迹线条 | 473 | //最多记录4000个点位轨迹线条 |
| 461 | if(trailArray.length > 4000) | 474 | if(trailArray.length > 4000) |
| 462 | trailArray = trailArray.slice(trailArray.length - 4000); | 475 | trailArray = trailArray.slice(trailArray.length - 4000); |
| @@ -595,6 +608,7 @@ | @@ -595,6 +608,7 @@ | ||
| 595 | updateProgress(gps, ei); | 608 | updateProgress(gps, ei); |
| 596 | //更新gps marker | 609 | //更新gps marker |
| 597 | drawCarMarker(gps); | 610 | drawCarMarker(gps); |
| 611 | + | ||
| 598 | //更新轨迹线条 | 612 | //更新轨迹线条 |
| 599 | trailArray = []; | 613 | trailArray = []; |
| 600 | var i = 0; | 614 | var i = 0; |
| @@ -638,9 +652,9 @@ | @@ -638,9 +652,9 @@ | ||
| 638 | var i = 0; | 652 | var i = 0; |
| 639 | if(ei > 1000) | 653 | if(ei > 1000) |
| 640 | i = ei - 1000; | 654 | i = ei - 1000; |
| 641 | - for (; i < ei; i++) | ||
| 642 | - trailArray.push(new BMap.Point(gpsArray[i].bd_lon, gpsArray[i].bd_lat)); | ||
| 643 | - updateTrailLine(gpsArray[ei], ei); | 655 | + // for (; i < ei; i++) |
| 656 | + // trailArray.push(new BMap.Point(gpsArray[i].bd_lon, gpsArray[i].bd_lat)); | ||
| 657 | + // updateTrailLine(gpsArray[ei], ei); | ||
| 644 | 658 | ||
| 645 | //居中 | 659 | //居中 |
| 646 | map.panTo(gpsMarker.getPosition()); | 660 | map.panTo(gpsMarker.getPosition()); |
| @@ -766,5 +780,42 @@ | @@ -766,5 +780,42 @@ | ||
| 766 | var d = formData(); | 780 | var d = formData(); |
| 767 | window.open('/gps/history_v3/excel_arrival/' + d.nbbm + "?st="+d.st+"&et="+d.et); | 781 | window.open('/gps/history_v3/excel_arrival/' + d.nbbm + "?st="+d.st+"&et="+d.et); |
| 768 | }); | 782 | }); |
| 783 | + function queryIsCircle(line,nbbm,ts,qdzCode){ | ||
| 784 | + var lineInfo=0; | ||
| 785 | + $.ajax({ | ||
| 786 | + url: "/line/findById", //请求地址 | ||
| 787 | + type: "Get", | ||
| 788 | + async:false, | ||
| 789 | + //请求方式 | ||
| 790 | + data: { id : line}, //请求参数 | ||
| 791 | + success: function (result) { | ||
| 792 | + lineInfo = result.linePlayType; | ||
| 793 | + } | ||
| 794 | + }); | ||
| 795 | + if (lineInfo!=1) | ||
| 796 | + return false; | ||
| 797 | + var stops=0; | ||
| 798 | + if (lineInfo==1) { | ||
| 799 | + $.ajax({ | ||
| 800 | + url: "/realSchedule/isCircleQdz", //请求地址 | ||
| 801 | + type: "POST", | ||
| 802 | + async:false, | ||
| 803 | + //请求方式 | ||
| 804 | + data: { line : line,nbbm:nbbm,ts:ts,qdzCode:qdzCode}, //请求参数 | ||
| 805 | + | ||
| 806 | + success: function (result) { | ||
| 807 | + stops = result.isExist; | ||
| 808 | + } | ||
| 809 | + }); | ||
| 810 | + // $.ajaxSettings.async = false; | ||
| 811 | + // gb_common.$get('/gps/isCircleQdz',{line : line,nbbm:nbbm,ts:ts,qdzCode:qdzCode},function(result){ | ||
| 812 | + // stops = result.isCircleQdz; | ||
| 813 | + // }) | ||
| 814 | + // $.ajaxSettings.async = true; | ||
| 815 | + } | ||
| 816 | + if (stops>0) | ||
| 817 | + return true; | ||
| 818 | + return false; | ||
| 819 | + } | ||
| 769 | })(); | 820 | })(); |
| 770 | </script> | 821 | </script> |
| 771 | \ No newline at end of file | 822 | \ No newline at end of file |