Commit 7f4eb44ab2c4ca538fe9ff9007ca46e389cfaffb

Authored by 潘钊
1 parent 3f5e029b

update

src/main/resources/static/real_control_v2/css/main.css
@@ -369,4 +369,32 @@ li.map-panel{ @@ -369,4 +369,32 @@ li.map-panel{
369 .ct-bottom-drawer-body{ 369 .ct-bottom-drawer-body{
370 width: 100%; 370 width: 100%;
371 height: 100%; 371 height: 100%;
  372 +}
  373 +
  374 +#station_route_spacing_chart_drawer .svg_wrap{
  375 + width: 80%;height: 100%;display: inline-block;font-size: 14px;overflow: hidden;
  376 + position: relative;
  377 +}
  378 +
  379 +#station_route_spacing_chart_drawer .drawer_right_map{
  380 + width: 20%;height: 100%;display: inline-block;
  381 +}
  382 +
  383 +#station_route_spacing_chart_drawer .svg_cont_body{
  384 + height:100%;
  385 + position: absolute;
  386 + top:0;
  387 + left: 0;
  388 +}
  389 +
  390 +#station_route_spacing_chart_drawer svg{
  391 + width: 100%;
  392 + height: 100%;
  393 +}
  394 +
  395 +#station_route_spacing_chart_drawer svg g._item rect{
  396 + stroke: rgb(62, 80, 179);
  397 + fill: rgb(62, 80, 179);
  398 + width: 30px;
  399 + height: 140px;
372 } 400 }
373 \ No newline at end of file 401 \ No newline at end of file
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/lj_zrw.html
@@ -322,8 +322,7 @@ @@ -322,8 +322,7 @@
322 name: "添加子任务", 322 name: "添加子任务",
323 items: { 323 items: {
324 'add_sub_task_in': { 324 'add_sub_task_in': {
325 - name: '回场',  
326 - disabled: true 325 + name: '回场'
327 }, 326 },
328 'add_sub_task_out': { 327 'add_sub_task_out': {
329 name: '出场', 328 name: '出场',
src/main/resources/static/real_control_v2/fragments/line_schedule/context_menu/sub_task/station_route_spacing_chart.html
1 <!-- 站点路由间距图 --> 1 <!-- 站点路由间距图 -->
2 <div id="station_route_spacing_chart_drawer" style="width: 100%;height: 100%;font-size: 0;"> 2 <div id="station_route_spacing_chart_drawer" style="width: 100%;height: 100%;font-size: 0;">
3 - <div style="width: 80%;height: 100%;display: inline-block;font-size: 14px;" class="svg_wrap"> 3 + <div class="svg_wrap"></div>
4 4
5 - </div>  
6 -  
7 - <div style="width: 20%;height: 100%;display: inline-block;"> 5 + <div class="drawer_right_map" >
8 6
9 </div> 7 </div>
10 8
@@ -12,10 +10,10 @@ @@ -12,10 +10,10 @@
12 10
13 (function () { 11 (function () {
14 var drawer = '#station_route_spacing_chart_drawer' 12 var drawer = '#station_route_spacing_chart_drawer'
15 - , sch, locData; 13 + , sch, locData, stationArr;
16 14
  15 + //var xScale;
17 $(drawer).on('drawer-init', function (e, data) { 16 $(drawer).on('drawer-init', function (e, data) {
18 - //console.log('data', data);  
19 sch = data.sch; 17 sch = data.sch;
20 locData = window.localStorage.getItem('control_route_distance_' + sch.xlBm); 18 locData = window.localStorage.getItem('control_route_distance_' + sch.xlBm);
21 19
@@ -26,19 +24,42 @@ @@ -26,19 +24,42 @@
26 }); 24 });
27 25
28 function drawCharts() { 26 function drawCharts() {
29 - //console.log('开始绘图', locData);  
30 - var stations;  
31 try { 27 try {
32 - stations = JSON.parse(locData).stations[sch.xlDir == 0 ? 'up' : 'down']; 28 + stationArr = JSON.parse(locData).stations[sch.xlDir == 0 ? 'up' : 'down'];
33 }catch (e){ 29 }catch (e){
34 alert('数据异常!!'); 30 alert('数据异常!!');
35 return; 31 return;
36 } 32 }
37 33
38 - console.log('stations..', stations);  
39 - //$('.svg_wrap', drawer). 34 + var width = 1500;
  35 + var svgCont = $('<div style="width: '+width+'px;" class="svg_cont_body"></div>');
  36 + var svg = d3.select(svgCont[0]).append('svg');
  37 +
  38 + //初始化 X 比例尺
  39 + var sum=0;
  40 + $.each(stationArr, function () {
  41 + sum += this.toDistance;
  42 + });
  43 +
  44 + console.log('stations', stationArr);
  45 + var items = svg.selectAll('g._item').data(stationArr)
  46 + .enter()
  47 + .append('g')
  48 + .classed({_item: true});
  49 +
  50 + //rect
  51 + items.append('rect').attr('x', xScale).attr('y', 40);
  52 + $('.svg_wrap', drawer).append(svgCont);
40 } 53 }
41 54
  55 + var xScale = function (d, i) {
  56 + var sum=0;
  57 + for(var j = 0; j <= i; j++){
  58 + sum+=stationArr[j].toDistance;
  59 + }
  60 + return sum / 5;
  61 + };
  62 +
42 //页面切换 63 //页面切换
43 function drawerLoadPage(url, id) { 64 function drawerLoadPage(url, id) {
44 $(drawer).parent('.ct-bottom-drawer-body').load(url, function () { 65 $(drawer).parent('.ct-bottom-drawer-body').load(url, function () {
src/main/resources/static/real_control_v2/js/line_schedule/sch_table.js
@@ -191,10 +191,20 @@ var gb_schedule_table = (function () { @@ -191,10 +191,20 @@ var gb_schedule_table = (function () {
191 if (!isArray(schArr)) 191 if (!isArray(schArr))
192 schArr = [schArr]; 192 schArr = [schArr];
193 193
  194 + var tMaps={};
194 $.each(schArr, function () { 195 $.each(schArr, function () {
195 line2Schedule[this.xlBm][this.id] = this; 196 line2Schedule[this.xlBm][this.id] = this;
196 updateDom(this); 197 updateDom(this);
  198 + //线路_车辆 过滤重复数据
  199 + tMaps[this.xlBm+'_'+this.clZbh]=1;
197 }); 200 });
  201 +
  202 + //重新标记末班
  203 + var ts=[];
  204 + for(var k in tMaps){
  205 + ts = k.split('_');
  206 + markerLastByNbbm(ts[0], ts[1]);
  207 + }
198 }; 208 };
199 209
200 //update dom 210 //update dom
@@ -389,6 +399,7 @@ var gb_schedule_table = (function () { @@ -389,6 +399,7 @@ var gb_schedule_table = (function () {
389 return a.clZbh == nbbm && a.status != -1; 399 return a.clZbh == nbbm && a.status != -1;
390 }).sort(schedule_sort); 400 }).sort(schedule_sort);
391 401
  402 + removeMarkers(lineCode, array);
392 markerLastSch(array); 403 markerLastSch(array);
393 }; 404 };
394 405
@@ -404,6 +415,20 @@ var gb_schedule_table = (function () { @@ -404,6 +415,20 @@ var gb_schedule_table = (function () {
404 $('dd.fcsjActualCell', dl).append(temps['last-sch-sunken-temp'](lastSch)); 415 $('dd.fcsjActualCell', dl).append(temps['last-sch-sunken-temp'](lastSch));
405 } 416 }
406 417
  418 + //清除线路下指定班次的 末班标记
  419 + var removeMarkers = function (lineCode, array) {
  420 + var idx=[];
  421 + $.each(array, function () {
  422 + idx.push(this.id);
  423 + });
  424 +
  425 + $('dl.dl-last-sch','li.line_schedule[data-id=' + lineCode + ']').each(function () {
  426 + if($(this).hasClass('dl-last-sch') && idx.indexOf($(this).data('id'))){
  427 + $(this).removeClass('dl-last-sch').find('.last-sch-sunken').remove();
  428 + }
  429 + });
  430 + }
  431 +
407 var schDestroyFilter = function (a) { 432 var schDestroyFilter = function (a) {
408 return a.status != -1; 433 return a.status != -1;
409 } 434 }