Commit e43cec0e4538ea371ed51c35a89a666e307cedeb

Authored by 李强
1 parent c0c8ca98

bsthlq <2519941818@qq.com>

src/main/resources/static/pages/base/timesmodel/editlp.html 0 → 100644
  1 +<!-- 修改路牌名称 -->
  2 +<div class="modal fade" id="editlp_mobal" tabindex="-1" role="basic" aria-hidden="true">
  3 + <div class="modal-dialog">
  4 + <div class="modal-content">
  5 + <div class="modal-header">
  6 + <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
  7 + <h4 class="modal-title">修改路牌名称</h4>
  8 + </div>
  9 + <div class="modal-body">
  10 + <form class="form-horizontal" action="/" method="post" id="editlpForm" role="form">
  11 + <!-- alert-danger 组件START -->
  12 + <div class="alert alert-danger display-hide" id="editlpAlert">
  13 + <button class="close" data-close="alert"></button>
  14 + 您的输入有误,请检查下面的输入项
  15 + </div>
  16 + <div class="portlet-body">
  17 + <div class="table-container" style="margin-top: 10px">
  18 + <table class="table table-striped table-bordered table-hover table-checkable" id="datatable_bctz">
  19 + <thead>
  20 + <tr role="row" class="heading">
  21 + <th width="50%">当前路牌名称</th>
  22 + <th width="50%" style="text-align: center;max-width: 50px;min-width: 40px;padding-left: 0;padding-right: 0;">修改路牌名称</th>
  23 + </tr>
  24 + </thead>
  25 + <tbody></tbody>
  26 + </table>
  27 + </div>
  28 + </div>
  29 + </form>
  30 + </div>
  31 + <div class="modal-footer">
  32 + <button type="button" class="btn default" data-dismiss="modal">取消</button>
  33 + <button type="button" class="btn btn-primary" id="editlpnext">确定</button>
  34 + </div>
  35 + </div>
  36 + </div>
  37 +</div>
  38 +<script type="text/html" id="editlp_temp">
  39 +{{each list as obj i }}
  40 + <tr role="row" class="filter">
  41 + <td>
  42 + <input type="text" readonly class="form-control form-filter input-sm" name="lpname_{{i+1}}" value="{{obj.lpName}}">
  43 + </td>
  44 + <td>
  45 + <input type="text" class="form-control form-filter input-sm" name="{{i+1}}" value="{{obj.lpName}}" required>
  46 + </td>
  47 + </tr>
  48 +{{/each}}
  49 +{{if list.length == 0}}
  50 + <tr>
  51 + <td colspan=3><h6 class="muted">没有找到相关数据</h6></td>
  52 + </tr>
  53 + {{/if}}
  54 +</script>
  55 +<script type="text/javascript">
  56 +$('#editlp_mobal').on('editlpMobal.show', function(e,obj,bf){
  57 + var lpArray = obj.configuration.taskTypes;
  58 + setTimeout(function(){
  59 + // 加载延迟200毫秒显示mobal
  60 + $('#editlp_mobal').modal({show : true,backdrop: 'static', keyboard: false});
  61 + },200);
  62 + // 当模态框对用户可见时触发(将等待 CSS 过渡效果完成)。
  63 + $('#editlp_mobal').on('show.bs.modal', function () {
  64 + // 把数据填充到模版中
  65 + var tbodyHtml = template('editlp_temp',{list:lpArray});
  66 + // 把渲染好的模版html文本追加到表格中
  67 + $('#datatable_bctz tbody').html(tbodyHtml);
  68 + });
  69 + // 获取表单元素
  70 + var form = $('#editlpForm');
  71 + // 错误提示元素
  72 + var editlpAlert = $('#editlpAlert', form);
  73 + // 下一步点击事件
  74 + $('#editlpnext').on('click', function() {
  75 + form.submit();// 表单提交
  76 + });
  77 + // 表单验证
  78 + form.validate({
  79 + errorElement : 'span',
  80 + errorClass : 'help-block help-block-error',
  81 + focusInvalid : false,
  82 + rules : {
  83 + },
  84 + invalidHandler : function(event, validator) {
  85 + editlpAlert.show();
  86 + App.scrollTo(editlpAlert, -200);
  87 + },
  88 + highlight : function(element) {
  89 + $(element).closest('.form-group').addClass('has-error');
  90 + },
  91 + unhighlight : function(element) {
  92 + $(element).closest('.form-group').removeClass('has-error');
  93 + },
  94 + success : function(label) {
  95 + label.closest('.form-group').removeClass('has-error');
  96 + },
  97 + submitHandler : function(f) {
  98 + // 1、 获取表单内容,并序列化
  99 + var params = form.serializeJSON();
  100 + var data = obj.getDataArray();
  101 + // 2、 调整路牌对应的班次总数
  102 + updFormParams(params,data);
  103 + // 删除图形.
  104 + $('svg.svg-chart').remove();
  105 + // 重新创建图形.
  106 + var graph_ = d3.select('#ganttSvg').relationshipGraph(obj.configuration);
  107 + // 根据数据重新渲染图形.
  108 + obj.data(data);
  109 + // 记录早操.并保存历史班次数据
  110 + obj.addHistory();
  111 + // 隐藏错误提示
  112 + editlpAlert.hide();
  113 + // 隐藏 reladplus_mobal 弹出层
  114 + $('#editlp_mobal').modal('hide');
  115 + layer.msg('修改路牌名称成功!');
  116 + }
  117 + });
  118 + function updFormParams(p,data) {
  119 + for(var i= 0;i<lpArray.length;i++) {
  120 + if(p[i+1] != undefined) {
  121 + if(lpArray[i].lpName != p[i+1]) {
  122 + for(var d = 0 ; d< data.length;d++) {
  123 + if(data[d].lpName == lpArray[i].lpName) {
  124 + data[d].lpName = p[i+1];
  125 + }
  126 +
  127 + }
  128 + lpArray[i].lpName = p[i+1];
  129 + obj.configuration.lpNameA[i] = p[i+1];
  130 + }
  131 + }
  132 + }
  133 + }
  134 +});
  135 +</script>
0 \ No newline at end of file 136 \ No newline at end of file
src/main/resources/static/pages/base/timesmodel/js/base-fun.js
@@ -403,11 +403,12 @@ var BaseFun = function() { @@ -403,11 +403,12 @@ var BaseFun = function() {
403 } 403 }
404 //debugger; 404 //debugger;
405 var jar3 = baseF.dqbcsAndgs(bxrcgs,jar,dataMap,cara.length); 405 var jar3 = baseF.dqbcsAndgs(bxrcgs,jar,dataMap,cara.length);
406 - //return {'json':jar3,'bxrcgs':bxrcgs}; 406 + // return {'json':jar3,'bxrcgs':bxrcgs};
407 /*var jar4 = baseF.tzsmbcsj01( 407 /*var jar4 = baseF.tzsmbcsj01(
408 baseF.setbcsAndfcno(baseF.tzsmbcsj01(baseF.setbcsAndfcno(baseF.tzsztest(cara,jar3,dataMap)),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj,dataMap)), 408 baseF.setbcsAndfcno(baseF.tzsmbcsj01(baseF.setbcsAndfcno(baseF.tzsztest(cara,jar3,dataMap)),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj,dataMap)),
409 dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj,dataMap);*/ 409 dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj,dataMap);*/
410 var rsjar = baseF.tzsztest(cara,jar3,dataMap); 410 var rsjar = baseF.tzsztest(cara,jar3,dataMap);
  411 + // return {'json':rsjar,'bxrcgs':bxrcgs};
411 return {'json':baseF.addjcclcbc01(cara,rsjar,dataMap,saa,map),'bxrcgs':bxrcgs}; 412 return {'json':baseF.addjcclcbc01(cara,rsjar,dataMap,saa,map),'bxrcgs':bxrcgs};
412 }, 413 },
413 414
@@ -433,7 +434,6 @@ var BaseFun = function() { @@ -433,7 +434,6 @@ var BaseFun = function() {
433 // lpbc_.sort(function(a,b){return a.fcno-b.fcno}); 434 // lpbc_.sort(function(a,b){return a.fcno-b.fcno});
434 var tt = baseF.addjclbbc01(lpbc_,dataMap,saa[0].lbsj,map); 435 var tt = baseF.addjclbbc01(lpbc_,dataMap,saa[0].lbsj,map);
435 bcs = baseF.updfcno01(tt,bcs); 436 bcs = baseF.updfcno01(tt,bcs);
436 - // debugger;  
437 resultJA = resultJA.concat(tt); 437 resultJA = resultJA.concat(tt);
438 } 438 }
439 return resultJA; 439 return resultJA;
@@ -779,7 +779,11 @@ var BaseFun = function() { @@ -779,7 +779,11 @@ var BaseFun = function() {
779 sgbcfcsj.setMinutes(sgbcfcsj.getMinutes() - ar[r].bcsj); 779 sgbcfcsj.setMinutes(sgbcfcsj.getMinutes() - ar[r].bcsj);
780 ar[r].fcsj = baseF.getTimeStr(sgbcfcsj);*/ 780 ar[r].fcsj = baseF.getTimeStr(sgbcfcsj);*/
781 }else if(dxmin >= v1 && dxmin < 180) { 781 }else if(dxmin >= v1 && dxmin < 180) {
782 - dxmin = v1; 782 + if(r==ar.length-2 || baseF.issmbcsjArr(ar[r+1].fcsj,dataMap.smbcsjArr)) {
  783 + dxmin = dxmin;
  784 + }else {
  785 + dxmin = v1;
  786 + }
783 } 787 }
784 if(ar[r].STOPTIME >0) { 788 if(ar[r].STOPTIME >0) {
785 dqbcddsj.setMinutes(dqbcddsj.getMinutes() + dxmin); 789 dqbcddsj.setMinutes(dqbcddsj.getMinutes() + dxmin);
@@ -802,6 +806,7 @@ var BaseFun = function() { @@ -802,6 +806,7 @@ var BaseFun = function() {
802 if(bcArr.length<=0) 806 if(bcArr.length<=0)
803 return; 807 return;
804 var dirA = dataMap.dira; 808 var dirA = dataMap.dira;
  809 + var clzs = parseInt(dataMap.map.clzs);
805 for(var d = 0 ; d < dirA.length; d++) { 810 for(var d = 0 ; d < dirA.length; d++) {
806 var fxdm = dirA[d],fxbc = new Array(); 811 var fxdm = dirA[d],fxbc = new Array();
807 var cctag = baseF.dirDmToIndex(fxdm); 812 var cctag = baseF.dirDmToIndex(fxdm);
@@ -827,6 +832,10 @@ var BaseFun = function() { @@ -827,6 +832,10 @@ var BaseFun = function() {
827 var _fcjx = parseInt(Math.ceil(zzsj/bcCount)); 832 var _fcjx = parseInt(Math.ceil(zzsj/bcCount));
828 var fcnosj = new Date(kssj); 833 var fcnosj = new Date(kssj);
829 for(var l = 0 ; l< len_ ; l++) { 834 for(var l = 0 ; l< len_ ; l++) {
  835 + // 每个路牌的末班车发车时间不准动.
  836 + if(baseF.iszhclzsbc(fxbc, sjdbcArr[l].fcno , clzs)) {
  837 + continue;
  838 + }
830 sjdbcArr[l].fcsj = baseF.getTimeStr(fcnosj); 839 sjdbcArr[l].fcsj = baseF.getTimeStr(fcnosj);
831 var _xxsj = baseF.getxssj(dataMap.zgfsjd, 840 var _xxsj = baseF.getxssj(dataMap.zgfsjd,
832 dataMap.wgfsjd,fcnosj,dataMap.pcxssjArr, 841 dataMap.wgfsjd,fcnosj,dataMap.pcxssjArr,
@@ -845,6 +854,16 @@ var BaseFun = function() { @@ -845,6 +854,16 @@ var BaseFun = function() {
845 } 854 }
846 }, 855 },
847 856
  857 + iszhclzsbc : function(dirA , fcno , clzs) {
  858 + var flag = false;
  859 + for(var a =1 ; a < clzs ; a++) {
  860 + if(fcno == dirA[dirA.length-a].fcno) {
  861 + flag = true;
  862 + }
  863 + }
  864 + return flag;
  865 + },
  866 +
848 /** 867 /**
849 * @description : (TODO) 添加进出场班次、早晚例保班次. 868 * @description : (TODO) 添加进出场班次、早晚例保班次.
850 * 869 *
@@ -1896,14 +1915,13 @@ var BaseFun = function() { @@ -1896,14 +1915,13 @@ var BaseFun = function() {
1896 getsxAndxxbc : function(json,dataMap) { 1915 getsxAndxxbc : function(json,dataMap) {
1897 var upArray = new Array(),downArray = new Array(),qt = new Array(); 1916 var upArray = new Array(),downArray = new Array(),qt = new Array();
1898 for(var j = 0 ; j< json.length ; j++) { 1917 for(var j = 0 ; j< json.length ; j++) {
1899 - //json[j].fcint = baseF.getDateTime(json[j].fcsj).getTime();  
1900 if(json[j].bcType== dataMap.bcTypeArr.normal || 1918 if(json[j].bcType== dataMap.bcTypeArr.normal ||
1901 json[j].bcType== dataMap.bcTypeArr.region || 1919 json[j].bcType== dataMap.bcTypeArr.region ||
1902 json[j].bcType== dataMap.bcTypeArr.major || 1920 json[j].bcType== dataMap.bcTypeArr.major ||
1903 json[j].bcType== dataMap.bcTypeArr.venting) { 1921 json[j].bcType== dataMap.bcTypeArr.venting) {
1904 - if(json[j].xlDir == 'relationshipGraph-up') 1922 + if(json[j].xlDir == dataMap.dira[0])
1905 upArray.push(json[j]); 1923 upArray.push(json[j]);
1906 - else if(json[j].xlDir == 'relationshipGraph-down') 1924 + else if(json[j].xlDir == dataMap.dira[1])
1907 downArray.push(json[j]); 1925 downArray.push(json[j]);
1908 }else if(json[j].bcType == dataMap.bcTypeArr.cf) { 1926 }else if(json[j].bcType == dataMap.bcTypeArr.cf) {
1909 qt.push(json[j]); 1927 qt.push(json[j]);
src/main/resources/static/pages/base/timesmodel/js/d3.relationshipgraph.js
@@ -1288,34 +1288,44 @@ var RelationshipGraph = function () { @@ -1288,34 +1288,44 @@ var RelationshipGraph = function () {
1288 } 1288 }
1289 } 1289 }
1290 }, { 1290 }, {
  1291 + /**
  1292 + * 均匀发车间隙
  1293 + *
  1294 + */
1291 key : 'updownread01', 1295 key : 'updownread01',
1292 value : function updownread01() { 1296 value : function updownread01() {
1293 - // 1、获取所有班次数.  
1294 var list = $_GlobalGraph.getDataArray(); 1297 var list = $_GlobalGraph.getDataArray();
1295 var dataMap = $_GlobalGraph.configuration.dataMap; 1298 var dataMap = $_GlobalGraph.configuration.dataMap;
1296 - var rsmap = BaseFun.getsxAndxxbc(list,dataMap);  
1297 var cara = $_GlobalGraph.configuration.taskTypes; 1299 var cara = $_GlobalGraph.configuration.taskTypes;
1298 - var jar01 = rsmap.qt.concat(rsmap.sxbc).concat(rsmap.xxbc);  
1299 - BaseFun.jhfcjx01(jar01,dataMap);  
1300 - var jar = BaseFun.tzsmbcsj01(  
1301 - BaseFun.setbcsAndfcno(BaseFun.tzsmbcsj01(BaseFun.setbcsAndfcno(BaseFun.tzsztest(cara,jar01,dataMap)),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,dataMap.lbsj,dataMap)),  
1302 - dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,dataMap.lbsj,dataMap);  
1303 - var resultJA = new Array();  
1304 - for(var m = 0 ; m < cara.length; m++) {  
1305 - // 获取路牌编号.  
1306 - var lpNo_ = cara[m].lpNo;  
1307 - // 定义路牌下的所有班次.  
1308 - var lpbc_ = new Array();  
1309 - // 遍历班次数.  
1310 - for(var x =0 ; x <jar.length; x++) {  
1311 - // 判断当期遍历的班次是否属于当前的路牌.  
1312 - if(jar[x].lpNo == lpNo_)  
1313 - lpbc_.push(jar[x]);  
1314 - }  
1315 - // 按照发车序号顺序排序.  
1316 - lpbc_.sort(function(a,b){return a.fcno-b.fcno});  
1317 - resultJA = resultJA.concat(BaseFun.addjclbbc01(lpbc_,dataMap,dataMap.lbsj,dataMap.map));  
1318 - } 1300 + var bxrcgs = $_GlobalGraph.configuration.bxrcgs;
  1301 + var resultJA = new Array();
  1302 + if(list.length !=0 && dataMap!=null && dataMap!='' && cara.length !=0) {
  1303 + var rsmap = BaseFun.getsxAndxxbc(list,dataMap);
  1304 + var jar01 = rsmap.qt.concat(rsmap.sxbc).concat(rsmap.xxbc);
  1305 + BaseFun.jhfcjx01(jar01,dataMap);
  1306 + var jar = BaseFun.tzsmbcsj01(
  1307 + BaseFun.setbcsAndfcno(BaseFun.tzsmbcsj01(BaseFun.setbcsAndfcno(BaseFun.tzsztest(cara,jar01,dataMap)),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,dataMap.lbsj,dataMap)),
  1308 + dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,dataMap.lbsj,dataMap);
  1309 + for(var r = 0 ; r < bxrcgs.length; r++) {
  1310 + var lpNo = bxrcgs[r].lpNo;
  1311 + var gsv = 0 , bczs = 0;
  1312 + for(var g = 0 ; g< jar.length; g++) {
  1313 + if(jar[g].lpNo == lpNo) {
  1314 + gsv = gsv + jar[g].bcsj + jar[g].STOPTIME;
  1315 + bczs++;
  1316 + }
  1317 + }
  1318 + bxrcgs[r].sjgsV = gsv;
  1319 + bxrcgs[r].bczs = bczs;
  1320 + }
  1321 + var jar3 = BaseFun.dqbcsAndgs(bxrcgs,jar,dataMap,cara.length);
  1322 + var rsjar = BaseFun.tzsztest(cara,jar3,dataMap);
  1323 + resultJA = BaseFun.addjcclcbc01(cara,rsjar,dataMap,$_GlobalGraph.configuration.stopAraay,dataMap.map);
  1324 + } else {
  1325 + resultJA = list;
  1326 + error.show('参数异常!','【 list:' + list + ' , dataMap:'
  1327 + + dataMap + ' , cara:' + cara + ' , bxrcgs:' + bxrcgs + '】');
  1328 + }
1319 // 删除图形. 1329 // 删除图形.
1320 $('svg.svg-chart').remove(); 1330 $('svg.svg-chart').remove();
1321 // 重新创建图形. 1331 // 重新创建图形.
src/main/resources/static/pages/base/timesmodel/js/gantt.js
@@ -528,8 +528,15 @@ @@ -528,8 +528,15 @@
528 }else { 528 }else {
529 data = graph.getDataArray(); 529 data = graph.getDataArray();
530 } 530 }
  531 + var rsjar = BaseFun.tzsztest(graph.configuration.taskTypes,data,graph.configuration.dataMap);
  532 + /*var resultJA = BaseFun.addjcclcbc01(graph.configuration.taskTypes,rsjar,
  533 + graph.configuration.dataMap,graph.configuration.stopAraay,data,
  534 + graph.configuration.dataMap.map);*/
531 // 获取图形数据.重新绘制. 535 // 获取图形数据.重新绘制.
532 - graph.data(data); 536 + graph.data(BaseFun.addjcclcbc01(graph.configuration.taskTypes,rsjar,
  537 + graph.configuration.dataMap,
  538 + graph.configuration.stopAraay,
  539 + graph.configuration.dataMap.map));
533 // 记录当前操作. 540 // 记录当前操作.
534 graph.addHistory(); 541 graph.addHistory();
535 stateSuccess('删除'); 542 stateSuccess('删除');
src/main/resources/static/pages/base/timesmodel/tepms/bctype_temp.html
@@ -538,10 +538,10 @@ @@ -538,10 +538,10 @@
538 </select> 538 </select>
539 </div> 539 </div>
540 <div class="margin-top-10"> 540 <div class="margin-top-10">
541 - <input type="number" class="form-control" placeholder="请输入分配人次数" id="state_tagsinput_rcsvalue"> 541 + <input type="number" class="form-control" placeholder="请输入分配人次数" id="state_tagsinput_rcsvalue" min="1">
542 </div> 542 </div>
543 <div class="margin-top-10"> 543 <div class="margin-top-10">
544 - <input type="number" class="form-control" placeholder="请输入分配车辆数" id="state_tagsinput_clsvalue"> 544 + <input type="number" class="form-control" placeholder="请输入分配车辆数" id="state_tagsinput_clsvalue" min="1">
545 </div> 545 </div>
546 <div class="margin-top-10"> 546 <div class="margin-top-10">
547 <a href="javascript:;" class="btn red" id="state_tagsinput_add">添加</a> 547 <a href="javascript:;" class="btn red" id="state_tagsinput_add">添加</a>