Commit 88927f88927233f657467689be1184aba8d2d4ba

Authored by ljq
1 parent c04ee95e

时刻表对比与智能调度微调

src/main/java/com/bsth/controller/zndd/LoggerZnddController.java
... ... @@ -65,4 +65,25 @@ public class LoggerZnddController extends BaseController<LoggerZndd, Integer> {
65 65 return loggerZnddService.nextSch(id);
66 66  
67 67 }
  68 +
  69 + /**
  70 + * schDeepSeep查询班次情况
  71 + * @param
  72 + * @return
  73 + */
  74 + @RequestMapping(value = "schDeepSeep", method = RequestMethod.GET)
  75 + public Map schDeepSeep(@RequestParam String message){
  76 + return loggerZnddService.schDeepSeep(message);
  77 + }
  78 +
  79 +
  80 + /**
  81 + * 时刻表 查询前一天的班次和时刻表作对比
  82 + * @param
  83 + * @return
  84 + */
  85 + @RequestMapping(value = "sch_qbc", method = RequestMethod.GET)
  86 + public List<ScheduleRealInfo> schQbc(@RequestParam String xl){
  87 + return loggerZnddService.schQbc(xl);
  88 + }
68 89 }
... ...
src/main/java/com/bsth/data/zndd/AutomaticSch.java
... ... @@ -219,7 +219,7 @@ public class AutomaticSch {
219 219 //rfid 判断
220 220 List<RfidInfo> list = RfidHttpLoader.load();
221 221 for (RfidInfo ri : list) {
222   - if (ri.getRecogTime() != null && ri.getRecogTime().getTime() > System.currentTimeMillis() - 300000) {
  222 + if (ri.getRecogTime() != null && ri.getRecogTime().getTime() > System.currentTimeMillis() - 300000 && ri.getInoutStation().getTimestamp() > System.currentTimeMillis() - 300000 ) {
223 223 //最新的rfid是出站状态
224 224 if (ri.getNbbm().equals(sr.getClZbh())){
225 225 sfsj = sdfHHmm.format(ri.getInoutStation().getTimestamp());
... ... @@ -450,7 +450,8 @@ public class AutomaticSch {
450 450 List<ScheduleRealInfo> schadd = new ArrayList<>();
451 451 //每辆车下的班次
452 452 for (ScheduleRealInfo sch : srList) {
453   - if (s.getClZbh().equals(sch.getClZbh())) {
  453 + //筛选掉烂班
  454 + if (s.getClZbh().equals(sch.getClZbh()) && sch.getStatus() != -1) {
454 455 schadd.add(sch);
455 456 }
456 457 }
... ...
src/main/java/com/bsth/data/zndd/ZnddTwoThread.java
... ... @@ -104,7 +104,7 @@ public class ZnddTwoThread extends Thread{
104 104 @Override
105 105 public void run() {
106 106 automaticSch.TowdescSch();
107   - logger.info("末二班车");
  107 + logger.info("末二班车执行完毕");
108 108 }
109 109 }.start();//启动线程
110 110  
... ...
src/main/java/com/bsth/service/zndd/LoggerZnddService.java
... ... @@ -25,4 +25,9 @@ public interface LoggerZnddService extends BaseService&lt;LoggerZndd, Integer&gt; {
25 25 Map<String, Object> schTZSF(String line,String date,String endDate,String changType,String type);
26 26  
27 27 ScheduleRealInfo nextSch(Long id);
  28 +
  29 + Map schDeepSeep(String message);
  30 +
  31 + List<ScheduleRealInfo> schQbc(String xl);
  32 +
28 33 }
... ...
src/main/java/com/bsth/service/zndd/impl/LoggerZnddServiceImpl.java
... ... @@ -3,6 +3,7 @@ package com.bsth.service.zndd.impl;
3 3 import com.alibaba.fastjson.JSON;
4 4 import com.bsth.common.ResponseCode;
5 5 import com.bsth.controller.realcontrol.dto.DfsjChange;
  6 +import com.bsth.data.BasicData;
6 7 import com.bsth.data.schedule.DayOfSchedule;
7 8 import com.bsth.data.schedule.ScheduleComparator;
8 9 import com.bsth.data.schedule.edit_logs.service.dto.SchEditInfoDto;
... ... @@ -18,6 +19,7 @@ import com.bsth.service.realcontrol.ScheduleRealInfoService;
18 19 import com.bsth.service.report.ReportService;
19 20 import com.bsth.service.sys.RealControAuthorityService;
20 21 import com.bsth.service.zndd.LoggerZnddService;
  22 +import com.bsth.util.DateUtils;
21 23 import com.bsth.util.ReportUtils;
22 24 import org.slf4j.Logger;
23 25 import org.slf4j.LoggerFactory;
... ... @@ -343,4 +345,70 @@ public class LoggerZnddServiceImpl extends BaseServiceImpl&lt;LoggerZndd, Integer&gt;
343 345 public ScheduleRealInfo nextSch(Long id){
344 346 return dayOfSchedule.next(dayOfSchedule.get(id));
345 347 }
  348 +
  349 +
  350 + public Map schDeepSeep(String message){
  351 +
  352 + Map m = new HashMap<>();
  353 + String xl = null; //线路编码
  354 + String xlName = null;
  355 + //获取所有线路
  356 + Map<String, String> lineMap = BasicData.lineCode2NameMap;
  357 + for (Map.Entry<String, String> t : lineMap.entrySet()){
  358 + if (message.contains(t.getValue())){
  359 + xl = t.getKey();
  360 + xlName = t.getValue();
  361 + }
  362 + }
  363 + if (xl != null){
  364 + //总班次、进场班次、出场班次、临加班次、正常班次、区间班次。0 未执行 1 正在执行 2 已执行 -1 已烂班
  365 + Integer inbcs = 0,outbcs = 0,ljbcs = 0,normalbcs = 0,regionbcs =0,wzxbcs = 0 ,zzxbcs = 0,yzxbcs = 0,lbbcs = 0;
  366 + List<ScheduleRealInfo> srList = dayOfSchedule.findByLineCode(xl);//当日所有班次
  367 + for(ScheduleRealInfo sc : srList) {
  368 + if (sc.getBcType().equals("in"))
  369 + inbcs = inbcs + 1;
  370 + if (sc.getBcType().equals("out"))
  371 + outbcs = outbcs + 1;
  372 + if (sc.isSflj())
  373 + ljbcs = ljbcs + 1;
  374 + if (sc.getBcType().equals("normal"))
  375 + normalbcs = normalbcs + 1;
  376 + if (sc.getBcType().equals("region"))
  377 + regionbcs = regionbcs + 1;
  378 + if (sc.getStatus() == 0)
  379 + wzxbcs = wzxbcs + 1;
  380 + if (sc.getStatus() == 1)
  381 + zzxbcs = zzxbcs + 1;
  382 + if (sc.getStatus() == 2)
  383 + yzxbcs = yzxbcs + 1;
  384 + if (sc.getStatus() == -1)
  385 + lbbcs = lbbcs + 1;
  386 + }
  387 + m.put("code","200");
  388 + m.put("inbcs",inbcs);
  389 + m.put("outbcs",outbcs);
  390 + m.put("ljbcs",ljbcs);
  391 + m.put("normalbcs",normalbcs);
  392 + m.put("regionbcs",regionbcs);
  393 + m.put("wzxbcs",wzxbcs);
  394 + m.put("zzxbcs",zzxbcs);
  395 + m.put("yzxbcs",yzxbcs);
  396 + m.put("lbbcs",lbbcs);
  397 + m.put("bcs",srList.size());
  398 + m.put("xlName",xlName);
  399 + }else {
  400 + m.put("code","100");
  401 + m.put("message","无法找到线路");
  402 + }
  403 +
  404 + return m;
  405 + }
  406 +
  407 +
  408 + public List<ScheduleRealInfo> schQbc(String xl){
  409 + //获取前一天的班次
  410 + List<ScheduleRealInfo> list = scheduleRealInfoRepository.scheduleByDateAndLineTjrb(xl, DateUtils.qyt_date());
  411 +
  412 + return list;
  413 + }
346 414 }
... ...
src/main/java/com/bsth/util/DateUtils.java
... ... @@ -152,4 +152,22 @@ public class DateUtils {
152 152 }
153 153 return num;
154 154 }
  155 + //前一天
  156 + public static String qyt_date(){
  157 + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
  158 +
  159 + String rq = "";
  160 + try {
  161 + Date dNow = new Date(); //当前时间
  162 + Date dBefore = new Date();
  163 + Calendar calendar = Calendar.getInstance(); //得到日历
  164 + calendar.setTime(dNow);//把当前时间赋给日历
  165 + calendar.add(Calendar.DAY_OF_MONTH, -1); //设置为前一天
  166 + dBefore = calendar.getTime(); //得到前一天的时间
  167 + rq=sdf.format(dBefore);
  168 + } catch (Exception e) {
  169 + e.printStackTrace();
  170 + }
  171 + return rq;
  172 + }
155 173 }
... ...
src/main/resources/static/pages/base/timesmodel/gantt.html
... ... @@ -49,6 +49,9 @@
49 49 </div>
50 50 <!-- actions 组件START -->
51 51 <div class="actions">
  52 + <div class="btn-group btn-group-devided countbtn" data-toggle="buttons">
  53 + <a class="btn btn-circle blue jhpbonsjpb" href="javascript:;" data-pjax><i class="fa fa-database"></i> 计划排班与实际班次</a>
  54 + </div>
52 55 <div class="btn-group btn-group-devided countbtn" data-toggle="buttons">
53 56 <a class="btn btn-circle blue countAdd" href="javascript:;" data-pjax><i class="fa fa-database"></i> 排班统计</a>
54 57 </div>
... ...
src/main/resources/static/pages/base/timesmodel/jhpbonsjpb.html 0 → 100644
  1 +<!-- 统计数据 -->
  2 +<div class="modal fade" id="jhpbonsjpb_mobal" tabindex="-1" role="basic" aria-hidden="true">
  3 + <div class="modal-dialog" style="width: 1400px;justify-content: center; /* 水平居中 */
  4 + align-items: center; height: 90%; overflow-y: auto;/* 垂直居中 */">
  5 + <div class="modal-content">
  6 + <div class="modal-header">
  7 + <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
  8 + <h4 class="modal-title">计划排班与实际班次统计数据 </h4>
  9 + </div>
  10 + <div class="modal-body">
  11 + <div class="portlet-body">
  12 + <div class="table-container" style="margin-top: 10px">
  13 + <table class="table table-striped table-bordered table-hover table-checkable" id="datatable_jhpbOnsjpd">
  14 + <thead>
  15 + <tr role="row" class="heading">
  16 + <th>序号</th>
  17 + <th>路牌</th>
  18 + <th>班次数(实际)</th>
  19 + <th>班次数</th>
  20 + <th>营运里程(km)(实际)</th>
  21 + <th>营运里程(km)</th>
  22 + <th>进场时间(分)(实际)</th>
  23 + <th>进场时间(分)</th>
  24 + <th>出场时间(分)(实际)</th>
  25 + <th>出场时间(分)</th>
  26 + <th>开始营运时间(实际)</th>
  27 + <th>开始营运时间</th>
  28 + <th>结束营运时间(实际)</th>
  29 + <th>结束营运时间</th>
  30 + </tr>
  31 + </thead>
  32 + <tbody></tbody>
  33 + </table>
  34 + </div>
  35 + </div>
  36 + </div>
  37 + <div class="modal-footer">
  38 + <button type="button" class="btn default" data-dismiss="modal">关闭</button>
  39 + </div>
  40 + </div>
  41 + </div>
  42 +</div>
  43 +<script type="text/html" id="jhpbOnsjpd_temp">
  44 + {{each list as obj i }}
  45 + <tr role="row" class="filter">
  46 + <td>{{i+1}}</td>
  47 + <td>{{obj.lp}}</td>
  48 + <td>{{obj.bcs_s}}</td>
  49 + <td>{{obj.bcs}}</td>
  50 + <td>{{obj.yylc_s}}</td>
  51 + <td>{{obj.yylc}}</td>
  52 + <td>{{obj.jclc_s}}</td>
  53 + <td>{{obj.jclc}}</td>
  54 + <td>{{obj.cllc_s}}</td>
  55 + <td>{{obj.cllc}}
  56 + <td>{{obj.ksyysj_s}}</td>
  57 + <td>{{obj.ksyysj}}
  58 + <td>{{obj.jsyysj_s}}</td>
  59 + <td>{{obj.jsyysj}}
  60 +
  61 +
  62 + </tr>
  63 + {{/each}}
  64 + {{if list.length == 0}}
  65 + <tr>
  66 + <td colspan=3><h6 class="muted">没有找到相关数据</h6></td>
  67 + </tr>
  68 + {{/if}}
  69 +</script>
  70 +<script type="text/javascript">
  71 + $('#jhpbonsjpb_mobal').on('jhpbOnsjpdMobal.show', function(e,countDate){
  72 + debugger
  73 + // 加载延迟200毫秒显示mobal
  74 + setTimeout(function(){$('#jhpbonsjpb_mobal').modal({show : true,backdrop: 'static', keyboard: false});},200);
  75 + // 当模态框对用户可见时触发(将等待 CSS 过渡效果完成)。
  76 + $('#jhpbonsjpb_mobal').on('show.bs.modal', function () {
  77 + debugger
  78 + // 把数据填充到模版中
  79 + var tbodyHtml = template('jhpbOnsjpd_temp',{list:countDate});
  80 + // 把渲染好的模版html文本追加到表格中
  81 + $('#datatable_jhpbOnsjpd tbody').html(tbodyHtml);
  82 + $('#star').raty({ readOnly: true,score: 4.5 });
  83 + });
  84 + });
  85 +</script>
0 86 \ No newline at end of file
... ...
src/main/resources/static/pages/base/timesmodel/js/echartsDrawGanTT.js
... ... @@ -91,7 +91,7 @@ var echartsDrawGTT = function () {
91 91 xlDir = -1;
92 92 data.push({
93 93 value: [
94   - bcObj.lpName,//纵坐标
  94 + bcObj.lpName ,//纵坐标
95 95 fcsj,//开始时间
96 96 ARRIVALTIME,//结束时间
97 97 bcObj.bcsj*60000,//横坐标长度(持续时间)
... ... @@ -108,9 +108,12 @@ var echartsDrawGTT = function () {
108 108 bcObj.zdz,
109 109 bcObj.STOPTIME,
110 110 bcObj.isfb ? 1:0,
111   - bcObj.qs
  111 + bcObj.qs,
112 112 //bcObj.isSwitchXl,
113 113 //bcObj.bz,
  114 + bcObj.isjh ? 0:1,
  115 + bcObj.fcsj,
  116 + bcObj.ARRIVALTIME,
114 117 ],
115 118 itemStyle: {
116 119 normal: {
... ... @@ -177,6 +180,7 @@ var echartsDrawGTT = function () {
177 180 },
178 181 backgroundColor: '#fff',
179 182 borderColor: 'rgba(0, 0, 20, 0.2)',
  183 +
180 184 formatter: function (params) {
181 185 //bd--早例保;out--出场;normal--正常;cf--吃饭;in--进场;lc--晚例保;major--放站;venting--直放;region--区间
182 186 var bcTypeStr;
... ... @@ -205,9 +209,10 @@ var echartsDrawGTT = function () {
205 209 +'<br>到站时间:' + getHoursAndMinutes(params.value[2])
206 210 +'<br>行驶时间:' + params.value[3]/60000 +'分钟'
207 211 +'<br>停休时间:' + params.value[15] +'分钟'
208   - +'<br>班次类型:' + bcTypeStr ;
  212 + +'<br>班次类型:' + bcTypeStr
  213 + +'<br>班次情况:' +(params.value[18] == 0 ? '调度': '计划');
209 214 return str;
210   - }
  215 + },
211 216 },
212 217 grid: {
213 218 top: '0px',
... ... @@ -297,8 +302,6 @@ var echartsDrawGTT = function () {
297 302 fontWeight: 65,
298 303 formatter: function (params) {
299 304  
300   - var p= chart.convertToPixel({xAxisIndex: 0, yAxisIndex:0},[params.data.value[1],params.data.value[2]]);
301   - var a = p[1]-p[0];
302 305 var type = params.data.value[6],
303 306 lastStr = '',// 班次历时
304 307 stayStr = '',// 停站时间
... ... @@ -580,7 +583,6 @@ var echartsDrawGTT = function () {
580 583 textBorderWidth: 0,
581 584 textBorderColor: '#000',
582 585 formatter: function (params) {
583   -
584 586 var p= chart.convertToPixel({xAxisIndex: 0, yAxisIndex:0},[params.data.value[1],params.data.value[2]]);
585 587 var a = p[1]-p[0];
586 588 var type = params.data.value[6],
... ...
src/main/resources/static/pages/base/timesmodel/js/gantt.js
... ... @@ -18,7 +18,6 @@
18 18 });
19 19 // 获取已存在的该时刻表明细数据.
20 20 var objD = window.localStorage.isDoDate;
21   - debugger;
22 21 // 获取表单参数配置数据.
23 22 var map = JSON.parse(window.localStorage.Gantt_AgursData);
24 23 $('.skmxTitle').text( '【' + map.skbmc + '】' + '时刻表明细模型');
... ... @@ -120,28 +119,32 @@
120 119 }else {
121 120 var jsonA = JSON.parse(objD);
122 121 // 使用已有的时刻表明细数据渲染视图.
123   - // data = {'json':jsonA.rsD,'bxrcgs':null};
124   - CSMap = {'gattA':null,'stopSpace': Math.round(map.zzsj/map.clzs),'maxCar':jsonA.rsLP};
125   - var cara = jsonA.rsLP;
126 122 var rsjar = jsonA.rsD;
127   - var resultJA = new Array();
128   - for(var m = 0 ; m < cara.length; m++) {
129   - // 获取路牌编号.
130   - var lpNo_ = cara[m].lpNo;
131   - // 定义路牌下的所有班次.
132   - var lpbc_ = new Array();
133   - // 遍历班次数.
134   - for(var x =0 ; x <rsjar.length; x++) {
135   - // 判断当期遍历的班次是否属于当前的路牌.
136   - if(rsjar[x].lpNo == lpNo_) {
137   - lpbc_.push(rsjar[x]);
  123 + var rsLP = jsonA.rsLP;
  124 + debugger
  125 + //查询出当日所有班次,并加入data,json里面一块输送给
  126 + $.get('/logZndd/sch_qbc', {xl : rsjar[0].xl},function (data) {
  127 + for (let t in data){
  128 + var sch = data[t];
  129 + if (sch.status == -1)
  130 + continue;
  131 + for (let lp in rsLP){
  132 + var lps = rsLP[lp];
  133 + //相同路牌加入到rsjar里,并特殊标注一个,提高一点y坐标
  134 + if(sch.lpName == lps.lpName){
  135 + rsjar.push(schonmap(sch,lps));
  136 +
  137 + }
138 138 }
139 139 }
140   - // 按照发车序号顺序排序.
141   - lpbc_.sort(function(a,b){return a.fcno-b.fcno});
142   - resultJA = resultJA.concat(BaseFun.addjclbbc01(lpbc_,dataMap,stopArray[0].lbsj,map));
143   - }
144   - data = {'json':rsjar,'bxrcgs':null};
  140 +
  141 + data = {'json':rsjar,'bxrcgs':null};
  142 + echartsDrawGTT.init(data.json,true,true);
  143 +
  144 +
  145 + });
  146 +
  147 + return;
145 148 }
146 149 echartsDrawGTT.init(data.json,true,true);
147 150 // console.log(data.json);
... ... @@ -208,6 +211,35 @@
208 211 layer.close(indexLoad);
209 212 },500);
210 213  
  214 +
  215 + function schonmap(sch,lp){
  216 + var maps = {};
  217 + maps.ARRIVALTIME = sch.zdsj;
  218 + maps.STOPTIME= 0;
  219 + maps.bcType = sch.bcType;
  220 + maps.bcs = sch.bcs;
  221 + maps.bcsj= sch.bcsj;
  222 + maps.fcno= sch.fcno;
  223 + maps.fcsj= sch.fcsj;
  224 + maps.isSwitchXl= 0;
  225 + maps.isfb =0;
  226 + maps.jhlc = sch.jhlc;
  227 + maps.lp = lp.lp;
  228 + maps.lpName = sch.lpName;
  229 + maps.lpNo = lp.lpNo;
  230 + maps.lpType = lp.lpType;
  231 + maps.parent= 1;
  232 + maps.qdz= sch.qdzCode;
  233 + maps.tcc = 98;
  234 + //maps.ttinfo: 7061
  235 + maps.xl = sch.xlBm;
  236 + maps.xlDir= sch.xlDir == 0 ? "relationshipGraph-up" : "relationshipGraph-down";
  237 + maps.zdz= sch.zdzCode;
  238 + maps.isjh = true;
  239 + maps.lpName = sch.lpName + "_实际排班";
  240 + return maps;
  241 + }
  242 +
211 243 /**
212 244 * @description : (TODO) 根据客流数据分析各个时间段内的配车数、获取发车间隙与车辆数的最大值.
213 245 *
... ...
src/main/resources/static/pages/base/timesmodel/js/systemTools.js
... ... @@ -440,6 +440,111 @@ $(&#39;.countAdd&#39;).on(&#39;click&#39;,function() {
440 440 });
441 441 });
442 442  
  443 +
  444 +/**计划排班与实际班次的统计数据
  445 + *
  446 + */
  447 +
  448 +$('.jhpbonsjpb').on('click',function() {
  449 +
  450 + var historyData = echartsDrawGTT.getHistoryData(),
  451 + list = historyData[0],
  452 + LpData = echartsDrawGTT.getLpData();
  453 + //每个路牌单独计算出统计
  454 + var LPGroupBy = [];
  455 + var ListLPDaata =[]; //所有路牌统计数据
  456 + for (var p in LpData){
  457 + var lp = LpData[p];
  458 + var m = {}; // 单个路牌统计数据
  459 + var bcs = 0 ; //班次数
  460 + var yylc = 0.0; //营运里程
  461 + var jclc = 0.0 ;//进场时间
  462 + var cllc = 0.0; //出场时间
  463 + var ksyyList = [];//开始营运时间
  464 + var jsyyList = [];//结束营运时间
  465 + for(var i = 0;i<list.length;i++) {
  466 + var bcObj = list[i].value;
  467 + //相同路牌
  468 + if (lp == bcObj[0]) {
  469 + bcs++;
  470 + yylc += bcObj[9];
  471 +
  472 + if (bcObj[6] == "in") {
  473 + jclc += bcObj[3] /60000;
  474 + } else if (bcObj[6] == "out") {
  475 + cllc += bcObj[3] /60000;
  476 + }
  477 + ksyyList.push(bcObj[19]);
  478 + jsyyList.push(bcObj[20]);
  479 + }
  480 + }
  481 + m.lp = lp;
  482 + m.bcs = bcs;
  483 + m.yylc = yylc;
  484 + m.jclc = jclc;
  485 + m.cllc = cllc;
  486 + m.ksyysj = ksyyList[0];
  487 + m.jsyysj = jsyyList[jsyyList.length - 1];
  488 + ListLPDaata.push(m);
  489 + var lpBole = true
  490 +
  491 + for(var lpg in LPGroupBy){
  492 + var lpn = LPGroupBy[lpg];
  493 + if (lpn == lp || lp.includes("_实际排班")){
  494 + lpBole = false;
  495 + }
  496 + }
  497 + if (lpBole)
  498 + LPGroupBy.push(lp);
  499 +
  500 + }
  501 + LPGroupBy.sort(function(a,b){
  502 + return a - b;
  503 + });
  504 + //组合成报表样式
  505 + BData = [];
  506 + debugger
  507 + //相同路牌进行数据合并 (_实际排班)
  508 + for (let lps in LPGroupBy){
  509 + var map = {};
  510 + var lp = LPGroupBy[lps];
  511 + map.lp = lp;
  512 + for (ld in ListLPDaata){
  513 + var data = ListLPDaata[ld];
  514 + //计划
  515 + if (lp == data.lp){
  516 + map.bcs = data.bcs;
  517 + map.yylc = data.yylc;
  518 + map.jclc = data.jclc;
  519 + map.cllc = data.cllc;
  520 + map.ksyysj = data.ksyysj;
  521 + map.jsyysj = data.jsyysj;
  522 + }
  523 +
  524 + //实际
  525 + if(lp+"_实际排班" == data.lp){
  526 + map.bcs_s = data.bcs;
  527 + map.yylc_s = data.yylc;
  528 + map.jclc_s = data.jclc;
  529 + map.cllc_s = data.cllc;
  530 + map.ksyysj_s = data.ksyysj;
  531 + map.jsyysj_s = data.jsyysj;
  532 + }
  533 + }
  534 + BData.push(map);
  535 + }
  536 +
  537 + debugger
  538 +
  539 + // 弹出层mobal页面
  540 + $.get('/pages/base/timesmodel/jhpbonsjpb.html', function(m){
  541 + $(pjaxContainer).append(m);
  542 + // 规定被选元素要触发的事件。可以使自定义事件(使用 bind() 函数来附加),或者任何标准事件。
  543 + $('#jhpbonsjpb_mobal').trigger('jhpbOnsjpdMobal.show',[BData]);
  544 + });
  545 +});
  546 +
  547 +
443 548 /**
444 549 * @description : (TODO) 重新生成事件.
445 550 *
... ...
src/main/resources/static/pages/permission/authorize_all/user_auth.html
... ... @@ -83,6 +83,8 @@
83 83 <li><label><input class="uk-checkbox" type="checkbox" data-event="signal_state"> 信号标记</label></li>
84 84 <li><label><input class="uk-checkbox" type="checkbox" data-event="kl_config"> 客流信息</label></li>
85 85 <li><label><input class="uk-checkbox" type="checkbox" data-event="zndd_status"> 智能调度开关</label></li>
  86 + <li><label><input class="uk-checkbox" type="checkbox" data-event="deepseek"> 调度助手(deepseek)</label></li>
  87 +
86 88 </ul>
87 89 </div>
88 90 <div>
... ...
src/main/resources/static/real_control_v2/js/zndd/data_zndd.js
... ... @@ -5,7 +5,7 @@ var gb_dataZndd = (function (){
5 5 var $pop =$('.multi_plat_msg_pop_zndd');
6 6  
7 7 var codes = {
8   - 'DJG': '大间隔',
  8 + 'DJG': '行车大间隔',
9 9 'FCJG': '发车间隔',
10 10 'WD': '误点',
11 11 'MZ': '满载率高',
... ... @@ -103,6 +103,12 @@ var gb_dataZndd = (function (){
103 103 });
104 104  
105 105  
  106 + $pop.on('click', '.multi_plat_config_s .msg-times', function () {
  107 + $(this).parent().parent().remove();
  108 + });
  109 +
  110 +
  111 +
106 112 var closetwo = true; //关闭弹出框的时候不弹出
107 113 $pop.on('click', '.multi_plat_msg_zndd .msg-times', function () {
108 114 $(this).parent().parent().remove();
... ... @@ -127,6 +133,18 @@ var gb_dataZndd = (function (){
127 133 }
128 134  
129 135  
  136 +
  137 +
  138 + /* //演示-----大客流
  139 + $(".ys_dkl").click(function (){
  140 + folder = '/real_control_v2/zndd/yanshi';
  141 + open_modal(folder + '/yanshi.html', {
  142 + }, {center: true, bgclose: false, modal: true});
  143 +
  144 + });
  145 +
  146 +*/
  147 +
130 148 //发车信息微调
131 149 $pop.on('click', '.fcxxwts', function () {
132 150 if (close) close = false
... ...
src/main/resources/static/real_control_v2/zndd/type/djg1.html
... ... @@ -476,7 +476,7 @@
476 476 <div class="uk-grid">
477 477 <div class="uk-width-4-2">
478 478 <div class="uk-form-row">
479   - <label class="uk-form-labels" >{{lineName}} -> 起点站开往终点站 出现大间隔</label>
  479 + <label class="uk-form-labels" >{{lineName}} -> 开往{{sch.zdzName}}方向 出现大间隔</label>
480 480 </div>
481 481 </div>
482 482 </div>
... ...
src/main/resources/static/real_control_v2/zndd/zndd_status.html
... ... @@ -69,7 +69,7 @@
69 69 <td>{{obj.name}}</td>
70 70 <td>
71 71 {{if obj.openStatus == 0}}
72   - <div class="uk-badge uk-badge-danger"> 开</div>
  72 + <div class="uk-badge uk-badge-success"> 开</div>
73 73 {{else}}
74 74 <div class="uk-badge uk-badge-danger"> 关</div>
75 75 {{/if}}
... ...