Commit c53462adae65746898ca9e9761508862f06df800

Authored by 潘钊
2 parents ffa1c1e9 1cd8d7fe

Merge branch 'minhang' into pudong

Showing 27 changed files with 2206 additions and 583 deletions
src/main/java/com/bsth/XDApplication.java
@@ -97,7 +97,7 @@ public class XDApplication implements CommandLineRunner { @@ -97,7 +97,7 @@ public class XDApplication implements CommandLineRunner {
97 //实际排班延迟入库线程 97 //实际排班延迟入库线程
98 //sexec.scheduleWithFixedDelay(schedulePstThread, 60, 15, TimeUnit.SECONDS); 98 //sexec.scheduleWithFixedDelay(schedulePstThread, 60, 15, TimeUnit.SECONDS);
99 //班次修正日志延迟入库 99 //班次修正日志延迟入库
100 - //sexec.scheduleWithFixedDelay(seiPstThread, 60, 60, TimeUnit.SECONDS); 100 + //sexec.scheduleWithFixedDelay(seiPstThread, 60, 30, TimeUnit.SECONDS);
101 101
102 //线程监听(防止重要的线程阻塞、异常结束。以及部分主备切换工作) 102 //线程监听(防止重要的线程阻塞、异常结束。以及部分主备切换工作)
103 //sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS); 103 //sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS);
@@ -115,7 +115,7 @@ public class XDApplication implements CommandLineRunner { @@ -115,7 +115,7 @@ public class XDApplication implements CommandLineRunner {
115 //班次更新线程 115 //班次更新线程
116 sexec.scheduleWithFixedDelay(scheduleRefreshThread, 15, 240, TimeUnit.SECONDS); 116 sexec.scheduleWithFixedDelay(scheduleRefreshThread, 15, 240, TimeUnit.SECONDS);
117 //班次延迟入库线程 117 //班次延迟入库线程
118 - sexec.scheduleWithFixedDelay(schedulePstThread, 60, 15, TimeUnit.SECONDS); 118 + sexec.scheduleWithFixedDelay(schedulePstThread, 60, 10, TimeUnit.SECONDS);
119 //班次修正日志延迟入库 119 //班次修正日志延迟入库
120 sexec.scheduleWithFixedDelay(seiPstThread, 60, 60, TimeUnit.SECONDS); 120 sexec.scheduleWithFixedDelay(seiPstThread, 60, 60, TimeUnit.SECONDS);
121 //检查班次误点 121 //检查班次误点
src/main/java/com/bsth/controller/realcontrol/SchEditInfoController.java 0 → 100644
  1 +package com.bsth.controller.realcontrol;
  2 +
  3 +import com.bsth.controller.BaseController;
  4 +import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;
  5 +import com.bsth.data.schedule.edit_logs.service.SchEditInfoService;
  6 +import org.springframework.beans.factory.annotation.Autowired;
  7 +import org.springframework.web.bind.annotation.RequestMapping;
  8 +import org.springframework.web.bind.annotation.RequestMethod;
  9 +import org.springframework.web.bind.annotation.RequestParam;
  10 +import org.springframework.web.bind.annotation.RestController;
  11 +
  12 +import java.util.Map;
  13 +
  14 +/**
  15 + * 班次修正记录
  16 + * Created by panzhao on 2017/5/22.
  17 + */
  18 +@RestController
  19 +@RequestMapping("schEditInfo")
  20 +public class SchEditInfoController extends BaseController<SchEditInfo, Long>{
  21 +
  22 + @Autowired
  23 + SchEditInfoService editInfoService;
  24 +
  25 + @RequestMapping(value = "/_list", method = RequestMethod.GET)
  26 + public Map<String, Object> _list(@RequestParam String rq, @RequestParam String lineCode,@RequestParam Map<String, String> map) {
  27 + return editInfoService._list(rq, lineCode, map);
  28 + }
  29 +}
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
@@ -433,10 +433,12 @@ public class ScheduleRealInfoController extends BaseController&lt;ScheduleRealInfo, @@ -433,10 +433,12 @@ public class ScheduleRealInfoController extends BaseController&lt;ScheduleRealInfo,
433 * @return 433 * @return
434 */ 434 */
435 @RequestMapping("dateArray") 435 @RequestMapping("dateArray")
436 - public List<String> dateArray(){ 436 + public List<String> dateArray(@RequestParam(defaultValue = "0") int c){
437 List<String> rs = new ArrayList<>(); 437 List<String> rs = new ArrayList<>();
438 438
439 - long t = new Date().getTime() - ONE_DAY - (1000 * 60 * 60 * 2); 439 + long t = new Date().getTime();
  440 + if(c != 1)
  441 + t -= ONE_DAY - (1000 * 60 * 60 * 2);
440 for(int i = 0; i < 10; i ++){ 442 for(int i = 0; i < 10; i ++){
441 rs.add(fmtyyyyMMdd.print(t)); 443 rs.add(fmtyyyyMMdd.print(t));
442 t -= ONE_DAY; 444 t -= ONE_DAY;
src/main/java/com/bsth/data/schedule/edit_logs/ScheduleModifyLogger.java
@@ -2,9 +2,11 @@ package com.bsth.data.schedule.edit_logs; @@ -2,9 +2,11 @@ package com.bsth.data.schedule.edit_logs;
2 2
3 import com.alibaba.fastjson.JSONArray; 3 import com.alibaba.fastjson.JSONArray;
4 import com.alibaba.fastjson.JSONObject; 4 import com.alibaba.fastjson.JSONObject;
  5 +import com.bsth.controller.realcontrol.dto.ChangePersonCar;
5 import com.bsth.data.schedule.edit_logs.entity.EditType; 6 import com.bsth.data.schedule.edit_logs.entity.EditType;
6 import com.bsth.data.schedule.edit_logs.entity.SchEditInfo; 7 import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;
7 import com.bsth.entity.realcontrol.ScheduleRealInfo; 8 import com.bsth.entity.realcontrol.ScheduleRealInfo;
  9 +import org.apache.commons.lang3.StringUtils;
8 import org.slf4j.Logger; 10 import org.slf4j.Logger;
9 import org.slf4j.LoggerFactory; 11 import org.slf4j.LoggerFactory;
10 12
@@ -28,15 +30,15 @@ public class ScheduleModifyLogger { @@ -28,15 +30,15 @@ public class ScheduleModifyLogger {
28 * 待发调整 30 * 待发调整
29 * opType 0: 双击调整、 1:待发调整、2:批量待发调整、3:间隔调整 31 * opType 0: 双击调整、 1:待发调整、2:批量待发调整、3:间隔调整
30 */ 32 */
31 - public static void dftz(ScheduleRealInfo sch, String opType, String oldDfsj, String nowDfsj, String remarks){ 33 + public static void dftz(ScheduleRealInfo sch, String opType, String oldDfsj, String nowDfsj, String remarks) {
32 try { 34 try {
33 - if(oldDfsj.equals(nowDfsj)) 35 + if (oldDfsj.equals(nowDfsj))
34 return; 36 return;
35 37
36 SchEditInfo sei = SchEditInfo.getInstance(sch); 38 SchEditInfo sei = SchEditInfo.getInstance(sch);
37 sei.setType(EditType.DFTZ); 39 sei.setType(EditType.DFTZ);
38 sei.setType2(opType); 40 sei.setType2(opType);
39 - sei.setRemarks(remarks==null?"":remarks); 41 + sei.setRemarks(remarks == null ? "" : remarks);
40 42
41 //detail 43 //detail
42 JSONObject jobj = new JSONObject(); 44 JSONObject jobj = new JSONObject();
@@ -46,7 +48,7 @@ public class ScheduleModifyLogger { @@ -46,7 +48,7 @@ public class ScheduleModifyLogger {
46 sei.setJsonArray(jobj.toJSONString()); 48 sei.setJsonArray(jobj.toJSONString());
47 49
48 put(sei); 50 put(sei);
49 - }catch (Exception e){ 51 + } catch (Exception e) {
50 log.error("", e); 52 log.error("", e);
51 } 53 }
52 } 54 }
@@ -54,10 +56,10 @@ public class ScheduleModifyLogger { @@ -54,10 +56,10 @@ public class ScheduleModifyLogger {
54 /** 56 /**
55 * 发车信息微调记录器 57 * 发车信息微调记录器
56 */ 58 */
57 - public static void fcxxwt(ScheduleRealInfo sch, String remarks, JSONArray jsonArray){ 59 + public static void fcxxwt(ScheduleRealInfo sch, String remarks, JSONArray jsonArray) {
58 60
59 try { 61 try {
60 - if(jsonArray == null || jsonArray.size() == 0) 62 + if (jsonArray == null || jsonArray.size() == 0)
61 return; 63 return;
62 64
63 SchEditInfo sei = SchEditInfo.getInstance(sch); 65 SchEditInfo sei = SchEditInfo.getInstance(sch);
@@ -66,28 +68,161 @@ public class ScheduleModifyLogger { @@ -66,28 +68,161 @@ public class ScheduleModifyLogger {
66 sei.setType(EditType.FCXXWT); 68 sei.setType(EditType.FCXXWT);
67 69
68 put(sei); 70 put(sei);
69 - }catch (Exception e){ 71 + } catch (Exception e) {
70 log.error("", e); 72 log.error("", e);
71 } 73 }
72 } 74 }
73 75
74 /** 76 /**
75 * 计划烂班 77 * 计划烂班
  78 + *
76 * @param remarks 79 * @param remarks
77 */ 80 */
78 - public static void jhlb(ScheduleRealInfo sch, String remarks){ 81 + public static void jhlb(ScheduleRealInfo sch, String remarks) {
79 try { 82 try {
80 SchEditInfo sei = SchEditInfo.getInstance(sch); 83 SchEditInfo sei = SchEditInfo.getInstance(sch);
81 sei.setRemarks(remarks); 84 sei.setRemarks(remarks);
82 sei.setType(EditType.JHLB); 85 sei.setType(EditType.JHLB);
83 86
84 put(sei); 87 put(sei);
85 - }catch (Exception e){ 88 + } catch (Exception e) {
86 log.error("", e); 89 log.error("", e);
87 } 90 }
88 } 91 }
89 92
90 - public static void put(SchEditInfo sei){ 93 + /**
  94 + * 实发调整
  95 + *
  96 + * @param sch
  97 + * @param nowSfsj
  98 + * @param remarks
  99 + */
  100 + public static void sftz(ScheduleRealInfo sch, String nowSfsj, String remarks) {
  101 + try {
  102 + SchEditInfo sei = SchEditInfo.getInstance(sch);
  103 + sei.setRemarks(remarks);
  104 + sei.setType(EditType.SFTZ);
  105 + //detail
  106 + JSONObject jobj = new JSONObject();
  107 + jobj.put("old", sch.getFcsjActual());
  108 + jobj.put("now", nowSfsj);
  109 +
  110 + sei.setJsonArray(jobj.toJSONString());
  111 + put(sei);
  112 + } catch (Exception e) {
  113 + log.error("", e);
  114 + }
  115 + }
  116 +
  117 + /**
  118 + * 撤销烂班
  119 + *
  120 + * @param sch
  121 + */
  122 + public static void cxlb(ScheduleRealInfo sch) {
  123 + try {
  124 + SchEditInfo sei = SchEditInfo.getInstance(sch);
  125 + sei.setType(EditType.CXLB);
  126 +
  127 + put(sei);
  128 + } catch (Exception e) {
  129 + log.error("", e);
  130 + }
  131 + }
  132 +
  133 + /**
  134 + * 撤销执行
  135 + *
  136 + * @param sch
  137 + */
  138 + public static void cxzx(ScheduleRealInfo sch) {
  139 + try {
  140 + SchEditInfo sei = SchEditInfo.getInstance(sch);
  141 + sei.setType(EditType.CXZX);
  142 +
  143 + //detail
  144 + JSONObject obj = new JSONObject();
  145 + if (StringUtils.isNotEmpty(sch.getFcsjActual()))
  146 + obj.put("old_sfsj", sch.getFcsjActual());
  147 +
  148 + if (StringUtils.isNotEmpty(sch.getZdsjActual()))
  149 + obj.put("old_sdsj", sch.getZdsjActual());
  150 +
  151 + sei.setJsonArray(obj.toJSONString());
  152 + put(sei);
  153 + } catch (Exception e) {
  154 + log.error("", e);
  155 + }
  156 + }
  157 +
  158 + /**
  159 + * 撤销实发
  160 + *
  161 + * @param sch
  162 + */
  163 + public static void cxsf(ScheduleRealInfo sch) {
  164 + try {
  165 + SchEditInfo sei = SchEditInfo.getInstance(sch);
  166 + sei.setType(EditType.CXSF);
  167 +
  168 + //detail
  169 + JSONObject obj = new JSONObject();
  170 + obj.put("old_sfsj", sch.getFcsjActual());
  171 +
  172 + sei.setJsonArray(obj.toJSONString());
  173 + put(sei);
  174 + } catch (Exception e) {
  175 + log.error("", e);
  176 + }
  177 + }
  178 +
  179 + /**
  180 + * 调整人车
  181 + *
  182 + * @param sch
  183 + * @param cpc
  184 + */
  185 + public static void tzrc(ScheduleRealInfo sch, ChangePersonCar cpc) {
  186 + try {
  187 + String newNbbm = cpc.getClZbh();
  188 + String newJsy = cpc.getJsy();
  189 + String oldJsy = sch.getjGh() + "/" + sch.getjName();
  190 +
  191 + if (newNbbm == null && newJsy == null)
  192 + return;
  193 + if (newNbbm != null && newJsy != null
  194 + && newNbbm.equals(sch.getClZbh()) && newJsy.equals(oldJsy))
  195 + return;
  196 +
  197 +
  198 + SchEditInfo sei = SchEditInfo.getInstance(sch);
  199 + sei.setType(EditType.TZRC);
  200 +
  201 + //detail
  202 + JSONObject jobj = new JSONObject();
  203 + if (StringUtils.isNotEmpty(newNbbm)) {
  204 + jobj.put("old_nbbm", sch.getClZbh());
  205 + jobj.put("now_nbbm", newNbbm);
  206 + }
  207 +
  208 + if (StringUtils.isNotEmpty(newJsy)) {
  209 + jobj.put("old_jsy", sch.getjGh() + "/" + sch.getjName());
  210 + jobj.put("now_jsy", newJsy);
  211 + }
  212 +
  213 + if (StringUtils.isNotEmpty(cpc.getSpy()) && cpc.getSpy().length() > 3) {
  214 + jobj.put("old_spy", sch.getsGh() + "/" + sch.getsName());
  215 + jobj.put("now_spy", cpc.getSpy());
  216 + }
  217 +
  218 + sei.setJsonArray(jobj.toJSONString());
  219 + put(sei);
  220 + } catch (Exception e) {
  221 + log.error("", e);
  222 + }
  223 + }
  224 +
  225 + public static void put(SchEditInfo sei) {
91 list.add(sei); 226 list.add(sei);
92 } 227 }
93 -}  
94 \ No newline at end of file 228 \ No newline at end of file
  229 +}
src/main/java/com/bsth/data/schedule/edit_logs/SeiPstThread.java
@@ -7,7 +7,9 @@ import org.slf4j.LoggerFactory; @@ -7,7 +7,9 @@ import org.slf4j.LoggerFactory;
7 import org.springframework.beans.factory.annotation.Autowired; 7 import org.springframework.beans.factory.annotation.Autowired;
8 import org.springframework.stereotype.Component; 8 import org.springframework.stereotype.Component;
9 9
  10 +import java.util.ArrayList;
10 import java.util.LinkedList; 11 import java.util.LinkedList;
  12 +import java.util.List;
11 13
12 /** 14 /**
13 * 班次修正日志入库 15 * 班次修正日志入库
@@ -24,6 +26,7 @@ public class SeiPstThread extends Thread{ @@ -24,6 +26,7 @@ public class SeiPstThread extends Thread{
24 @Override 26 @Override
25 public void run() { 27 public void run() {
26 try{ 28 try{
  29 + List<SchEditInfo> pstList = new ArrayList<>();
27 LinkedList<SchEditInfo> list = ScheduleModifyLogger.list; 30 LinkedList<SchEditInfo> list = ScheduleModifyLogger.list;
28 SchEditInfo sei; 31 SchEditInfo sei;
29 for(int i = 0; i < 1000; i ++){ 32 for(int i = 0; i < 1000; i ++){
@@ -31,11 +34,14 @@ public class SeiPstThread extends Thread{ @@ -31,11 +34,14 @@ public class SeiPstThread extends Thread{
31 if(sei == null) 34 if(sei == null)
32 break; 35 break;
33 else{ 36 else{
34 - repository.save(sei); 37 + //repository.save(sei);
  38 + pstList.add(sei);
35 } 39 }
36 } 40 }
  41 +
  42 + repository.save(pstList);
37 }catch (Exception e){ 43 }catch (Exception e){
38 log.error("", e); 44 log.error("", e);
39 } 45 }
40 } 46 }
41 -} 47 -}
  48 +}
42 \ No newline at end of file 49 \ No newline at end of file
src/main/java/com/bsth/data/schedule/edit_logs/entity/EditType.java
@@ -5,5 +5,5 @@ package com.bsth.data.schedule.edit_logs.entity; @@ -5,5 +5,5 @@ package com.bsth.data.schedule.edit_logs.entity;
5 */ 5 */
6 public enum EditType { 6 public enum EditType {
7 7
8 - DFTZ,SFTZ,FCXXWT,TZRC,LPDD,ZRW,JHLB  
9 -} 8 + DFTZ,SFTZ,FCXXWT,TZRC,LPDD,ZRW,JHLB,CXLB, CXSF, CXZX
  9 +}
10 \ No newline at end of file 10 \ No newline at end of file
src/main/java/com/bsth/data/schedule/edit_logs/entity/SchEditInfo.java
@@ -28,6 +28,9 @@ public class SchEditInfo { @@ -28,6 +28,9 @@ public class SchEditInfo {
28 */ 28 */
29 private String timeStr; 29 private String timeStr;
30 30
  31 + /** 时间戳 */
  32 + private long ts;
  33 +
31 private String lineCode; 34 private String lineCode;
32 35
33 private String gsbm; 36 private String gsbm;
@@ -134,13 +137,13 @@ public class SchEditInfo { @@ -134,13 +137,13 @@ public class SchEditInfo {
134 137
135 @Transient 138 @Transient
136 private static DateTimeFormatter fmtHHmm = DateTimeFormat.forPattern("HH:mm"); 139 private static DateTimeFormatter fmtHHmm = DateTimeFormat.forPattern("HH:mm");
137 - @Transient  
138 - private static DateTimeFormatter fmtyyyyMMdd = DateTimeFormat.forPattern("yyyy-MM-dd"); 140 + /* @Transient
  141 + private static DateTimeFormatter fmtyyyyMMdd = DateTimeFormat.forPattern("yyyy-MM-dd");*/
139 public static SchEditInfo getInstance(ScheduleRealInfo sch){ 142 public static SchEditInfo getInstance(ScheduleRealInfo sch){
140 SchEditInfo sei = new SchEditInfo(); 143 SchEditInfo sei = new SchEditInfo();
141 long t = System.currentTimeMillis(); 144 long t = System.currentTimeMillis();
142 145
143 - sei.setRq(fmtyyyyMMdd.print(t)); 146 + sei.setTs(t);
144 sei.setTimeStr(fmtHHmm.print(t)); 147 sei.setTimeStr(fmtHHmm.print(t));
145 148
146 SysUser user = SecurityUtils.getCurrentUser(); 149 SysUser user = SecurityUtils.getCurrentUser();
@@ -148,6 +151,7 @@ public class SchEditInfo { @@ -148,6 +151,7 @@ public class SchEditInfo {
148 sei.setUser(user.getUserName()); 151 sei.setUser(user.getUserName());
149 152
150 if(sch != null){ 153 if(sch != null){
  154 + sei.setRq(sch.getScheduleDateStr());
151 sei.setSchId(sch.getId()); 155 sei.setSchId(sch.getId());
152 sei.setLineCode(sch.getXlBm()); 156 sei.setLineCode(sch.getXlBm());
153 sei.setGsbm(sch.getGsBm()); 157 sei.setGsbm(sch.getGsBm());
@@ -179,4 +183,12 @@ public class SchEditInfo { @@ -179,4 +183,12 @@ public class SchEditInfo {
179 public void setFgsbm(String fgsbm) { 183 public void setFgsbm(String fgsbm) {
180 this.fgsbm = fgsbm; 184 this.fgsbm = fgsbm;
181 } 185 }
182 -} 186 +
  187 + public long getTs() {
  188 + return ts;
  189 + }
  190 +
  191 + public void setTs(long ts) {
  192 + this.ts = ts;
  193 + }
  194 +}
183 \ No newline at end of file 195 \ No newline at end of file
src/main/java/com/bsth/data/schedule/edit_logs/loggers/FcxxwtLogger.java
1 -package com.bsth.data.schedule.edit_logs.loggers;  
2 -  
3 -import com.alibaba.fastjson.JSONArray;  
4 -import com.alibaba.fastjson.JSONObject;  
5 -import com.bsth.data.schedule.edit_logs.ScheduleModifyLogger;  
6 -import com.bsth.entity.realcontrol.ScheduleRealInfo;  
7 -import org.slf4j.Logger;  
8 -import org.slf4j.LoggerFactory;  
9 -  
10 -/**  
11 - * 发车信息微调记录  
12 - * Created by panzhao on 2017/5/19.  
13 - */  
14 -public class FcxxwtLogger {  
15 -  
16 - static Logger log = LoggerFactory.getLogger(FcxxwtLogger.class);  
17 -  
18 - private JSONArray jsonArray = new JSONArray();  
19 - private String remarks;  
20 - private ScheduleRealInfo sch;  
21 -  
22 - public void log(String title, Object old, Object now){  
23 - try {  
24 -  
25 - JSONObject jsonObject = new JSONObject();  
26 - jsonObject.put("title", title);  
27 - jsonObject.put("old", old);  
28 - jsonObject.put("now", now);  
29 -  
30 - jsonArray.add(jsonObject);  
31 - }catch (Exception e){  
32 - log.error("", e);  
33 - }  
34 - }  
35 -  
36 - public void log(String text){  
37 - try {  
38 - JSONObject jsonObject = new JSONObject();  
39 - jsonObject.put("title", text);  
40 -  
41 - jsonArray.add(jsonObject);  
42 - }catch (Exception e){  
43 - log.error("", e);  
44 - }  
45 - }  
46 -  
47 - public static FcxxwtLogger start(ScheduleRealInfo sch, String remarks){  
48 - FcxxwtLogger fLog = new FcxxwtLogger();  
49 - fLog.setSch(sch);  
50 - fLog.setRemarks(remarks);  
51 - return fLog;  
52 - }  
53 -  
54 - public void end(){  
55 - ScheduleModifyLogger.fcxxwt(sch, this.remarks, jsonArray);  
56 - }  
57 -  
58 - public String getRemarks() {  
59 - return remarks;  
60 - }  
61 -  
62 - public void setRemarks(String remarks) {  
63 - this.remarks = remarks;  
64 - }  
65 -  
66 - public ScheduleRealInfo getSch() {  
67 - return sch;  
68 - }  
69 -  
70 - public void setSch(ScheduleRealInfo sch) {  
71 - this.sch = sch;  
72 - }  
73 -} 1 +package com.bsth.data.schedule.edit_logs.loggers;
  2 +
  3 +import com.alibaba.fastjson.JSONArray;
  4 +import com.alibaba.fastjson.JSONObject;
  5 +import com.bsth.data.schedule.edit_logs.ScheduleModifyLogger;
  6 +import com.bsth.entity.realcontrol.ScheduleRealInfo;
  7 +import org.slf4j.Logger;
  8 +import org.slf4j.LoggerFactory;
  9 +
  10 +/**
  11 + * 发车信息微调记录
  12 + * Created by panzhao on 2017/5/19.
  13 + */
  14 +public class FcxxwtLogger {
  15 +
  16 + static Logger log = LoggerFactory.getLogger(FcxxwtLogger.class);
  17 +
  18 + private JSONArray jsonArray = new JSONArray();
  19 + private String remarks;
  20 + private ScheduleRealInfo sch;
  21 +
  22 + public void log(String title, Object old, Object now){
  23 + try {
  24 +
  25 + JSONObject jsonObject = new JSONObject();
  26 + jsonObject.put("title", title);
  27 + jsonObject.put("old", old);
  28 + jsonObject.put("now", now);
  29 +
  30 + jsonArray.add(jsonObject);
  31 + }catch (Exception e){
  32 + log.error("", e);
  33 + }
  34 + }
  35 +
  36 + public void log(String text){
  37 + try {
  38 + JSONObject jsonObject = new JSONObject();
  39 + jsonObject.put("title", text);
  40 +
  41 + jsonArray.add(jsonObject);
  42 + }catch (Exception e){
  43 + log.error("", e);
  44 + }
  45 + }
  46 +
  47 + public static FcxxwtLogger start(ScheduleRealInfo sch, String remarks){
  48 + FcxxwtLogger fLog = new FcxxwtLogger();
  49 + fLog.setSch(sch);
  50 + fLog.setRemarks(remarks);
  51 + return fLog;
  52 + }
  53 +
  54 + public void end(){
  55 + ScheduleModifyLogger.fcxxwt(sch, this.remarks, jsonArray);
  56 + }
  57 +
  58 + public String getRemarks() {
  59 + return remarks;
  60 + }
  61 +
  62 + public void setRemarks(String remarks) {
  63 + this.remarks = remarks;
  64 + }
  65 +
  66 + public ScheduleRealInfo getSch() {
  67 + return sch;
  68 + }
  69 +
  70 + public void setSch(ScheduleRealInfo sch) {
  71 + this.sch = sch;
  72 + }
  73 +}
src/main/java/com/bsth/data/schedule/edit_logs/repository/EditInfoRepository.java
1 -package com.bsth.data.schedule.edit_logs.repository;  
2 -  
3 -import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;  
4 -import com.bsth.repository.BaseRepository;  
5 -import org.springframework.stereotype.Repository;  
6 -  
7 -/**  
8 - * Created by panzhao on 2017/5/19.  
9 - */  
10 -@Repository  
11 -public interface EditInfoRepository extends BaseRepository<SchEditInfo, Long>{  
12 -} 1 +package com.bsth.data.schedule.edit_logs.repository;
  2 +
  3 +import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;
  4 +import com.bsth.repository.BaseRepository;
  5 +import org.springframework.stereotype.Repository;
  6 +
  7 +/**
  8 + * Created by panzhao on 2017/5/19.
  9 + */
  10 +@Repository
  11 +public interface EditInfoRepository extends BaseRepository<SchEditInfo, Long>{
  12 +}
src/main/java/com/bsth/data/schedule/edit_logs/service/SchEditInfoService.java 0 → 100644
  1 +package com.bsth.data.schedule.edit_logs.service;
  2 +
  3 +import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;
  4 +import com.bsth.service.BaseService;
  5 +
  6 +import java.util.Map;
  7 +
  8 +/**
  9 + * Created by panzhao on 2017/5/22.
  10 + */
  11 +public interface SchEditInfoService extends BaseService<SchEditInfo, Long> {
  12 +
  13 + Map<String, Object> _list(String rq, String lineCode, Map<String, String> map);
  14 +}
src/main/java/com/bsth/data/schedule/edit_logs/service/SchEditInfoServiceImpl.java 0 → 100644
  1 +package com.bsth.data.schedule.edit_logs.service;
  2 +
  3 +import com.bsth.common.ResponseCode;
  4 +import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;
  5 +import com.bsth.data.schedule.edit_logs.service.dto.SchEditInfoDto;
  6 +import com.bsth.service.impl.BaseServiceImpl;
  7 +import com.bsth.util.BatchSaveUtils;
  8 +import org.apache.commons.lang3.StringUtils;
  9 +import org.slf4j.Logger;
  10 +import org.slf4j.LoggerFactory;
  11 +import org.springframework.beans.factory.annotation.Autowired;
  12 +import org.springframework.jdbc.core.BeanPropertyRowMapper;
  13 +import org.springframework.jdbc.core.JdbcTemplate;
  14 +import org.springframework.stereotype.Service;
  15 +
  16 +import java.util.HashMap;
  17 +import java.util.List;
  18 +import java.util.Map;
  19 +import java.util.Set;
  20 +
  21 +/**
  22 + * Created by panzhao on 2017/5/22.
  23 + */
  24 +@Service
  25 +public class SchEditInfoServiceImpl extends BaseServiceImpl<SchEditInfo, Long> implements SchEditInfoService{
  26 +
  27 + Logger log = LoggerFactory.getLogger(this.getClass());
  28 +
  29 + @Autowired
  30 + JdbcTemplate jdbcTemplate;
  31 +
  32 + public Map<String, Object> _list(String rq, String lineCode, Map<String, String> map) {
  33 +
  34 + Map<String, Object> rs = new HashMap();
  35 + try {
  36 + //拼接除rq、lineCode 外的其他where 条件
  37 + map.remove("rq");
  38 + map.remove("lineCode");
  39 + String cont = "", v;
  40 + Set<String> ks = map.keySet();
  41 + for(String k : ks){
  42 + v =map.get(k);
  43 + if(StringUtils.isNotEmpty(v))
  44 + cont += " and t2." + BatchSaveUtils.propertyToField(k) + "='" + v + "'";
  45 + }
  46 + String sql = "select t1.*, t2.fcsj,t2.lp_name,t2.cl_zbh,t2.j_gh,t2.j_name,t2.xl_dir,t2.real_exec_date from (select * from logger_sch_modify where rq=? and line_code=? ) t1 INNER JOIN bsth_c_s_sp_info_real t2 on t1.sch_id=t2.id where 1=1 " + cont;
  47 +
  48 + List<SchEditInfoDto> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper(SchEditInfoDto.class), rq, lineCode);
  49 +
  50 + rs.put("status", ResponseCode.SUCCESS);
  51 + rs.put("list", list);
  52 + }catch (Exception e){
  53 + log.error("", e);
  54 + rs.put("status", ResponseCode.ERROR);
  55 + rs.put("msg", e.getMessage());
  56 + }
  57 + return rs;
  58 + }
  59 +}
src/main/java/com/bsth/data/schedule/edit_logs/service/dto/SchEditInfoDto.java 0 → 100644
  1 +package com.bsth.data.schedule.edit_logs.service.dto;
  2 +
  3 +/**
  4 + * Created by panzhao on 2017/5/22.
  5 + */
  6 +public class SchEditInfoDto {
  7 +
  8 + private long id;
  9 + /*** 日期 yyyy-MM-dd*/
  10 + private String rq;
  11 +
  12 + /*** 时间 HH:mm*/
  13 + private String timeStr;
  14 +
  15 + private String lineCode;
  16 +
  17 + private String gsbm;
  18 +
  19 + private String fgsbm;
  20 +
  21 + /*** 班次ID*/
  22 + private long schId;
  23 +
  24 + /*** 类型*/
  25 + private String type;
  26 +
  27 + private String type2;
  28 + /*** 操作人 @system 系统/用户名*/
  29 + private String user;
  30 +
  31 + /*** 操作明细*/
  32 + private String jsonArray;
  33 +
  34 + private String remarks;
  35 +
  36 + /** 路牌 */
  37 + private String lpName;
  38 +
  39 + /** 驾驶员工号 */
  40 + private String jGh;
  41 +
  42 + /** 驾驶员姓名 */
  43 + private String jName;
  44 +
  45 + /** 车辆自编号 */
  46 + private String clZbh;
  47 +
  48 + /** 计发时间 */
  49 + private String fcsj;
  50 +
  51 + /** 上下行 */
  52 + private int xlDir;
  53 +
  54 + /** 实际执行日期 */
  55 + private String realExecDate;
  56 +
  57 + public long getId() {
  58 + return id;
  59 + }
  60 +
  61 + public void setId(long id) {
  62 + this.id = id;
  63 + }
  64 +
  65 + public String getRq() {
  66 + return rq;
  67 + }
  68 +
  69 + public void setRq(String rq) {
  70 + this.rq = rq;
  71 + }
  72 +
  73 + public String getTimeStr() {
  74 + return timeStr;
  75 + }
  76 +
  77 + public void setTimeStr(String timeStr) {
  78 + this.timeStr = timeStr;
  79 + }
  80 +
  81 + public String getLineCode() {
  82 + return lineCode;
  83 + }
  84 +
  85 + public void setLineCode(String lineCode) {
  86 + this.lineCode = lineCode;
  87 + }
  88 +
  89 + public String getGsbm() {
  90 + return gsbm;
  91 + }
  92 +
  93 + public void setGsbm(String gsbm) {
  94 + this.gsbm = gsbm;
  95 + }
  96 +
  97 + public String getFgsbm() {
  98 + return fgsbm;
  99 + }
  100 +
  101 + public void setFgsbm(String fgsbm) {
  102 + this.fgsbm = fgsbm;
  103 + }
  104 +
  105 + public long getSchId() {
  106 + return schId;
  107 + }
  108 +
  109 + public void setSchId(long schId) {
  110 + this.schId = schId;
  111 + }
  112 +
  113 + public String getType2() {
  114 + return type2;
  115 + }
  116 +
  117 + public void setType2(String type2) {
  118 + this.type2 = type2;
  119 + }
  120 +
  121 + public String getUser() {
  122 + return user;
  123 + }
  124 +
  125 + public void setUser(String user) {
  126 + this.user = user;
  127 + }
  128 +
  129 + public String getJsonArray() {
  130 + return jsonArray;
  131 + }
  132 +
  133 + public void setJsonArray(String jsonArray) {
  134 + this.jsonArray = jsonArray;
  135 + }
  136 +
  137 + public String getRemarks() {
  138 + return remarks;
  139 + }
  140 +
  141 + public void setRemarks(String remarks) {
  142 + this.remarks = remarks;
  143 + }
  144 +
  145 + public String getLpName() {
  146 + return lpName;
  147 + }
  148 +
  149 + public void setLpName(String lpName) {
  150 + this.lpName = lpName;
  151 + }
  152 +
  153 + public String getjGh() {
  154 + return jGh;
  155 + }
  156 +
  157 + public void setjGh(String jGh) {
  158 + this.jGh = jGh;
  159 + }
  160 +
  161 + public String getjName() {
  162 + return jName;
  163 + }
  164 +
  165 + public void setjName(String jName) {
  166 + this.jName = jName;
  167 + }
  168 +
  169 +
  170 + public String getRealExecDate() {
  171 + return realExecDate;
  172 + }
  173 +
  174 + public void setRealExecDate(String realExecDate) {
  175 + this.realExecDate = realExecDate;
  176 + }
  177 +
  178 + public String getType() {
  179 + return type;
  180 + }
  181 +
  182 + public void setType(String type) {
  183 + this.type = type;
  184 + }
  185 +
  186 + public String getClZbh() {
  187 + return clZbh;
  188 + }
  189 +
  190 + public void setClZbh(String clZbh) {
  191 + this.clZbh = clZbh;
  192 + }
  193 +
  194 + public String getFcsj() {
  195 + return fcsj;
  196 + }
  197 +
  198 + public void setFcsj(String fcsj) {
  199 + this.fcsj = fcsj;
  200 + }
  201 +
  202 + public int getXlDir() {
  203 + return xlDir;
  204 + }
  205 +
  206 + public void setXlDir(int xlDir) {
  207 + this.xlDir = xlDir;
  208 + }
  209 +}
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
@@ -147,6 +147,10 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI @@ -147,6 +147,10 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
147 List<ScheduleRealInfo> scheduleByDateAndLineQp(String line,String date); 147 List<ScheduleRealInfo> scheduleByDateAndLineQp(String line,String date);
148 148
149 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) 149 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH)
  150 + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 order by s.xlDir,s.realExecDate,s.dfsj, (s.lpName+1)")
  151 + List<ScheduleRealInfo> scheduleByDateAndLineQp2(String line,String date);
  152 +
  153 + @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH)
150 @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 and s.bcType not in ('in','out') order by s.xlBm,s.adjustExps,s.fcsj") 154 @Query(value="select DISTINCT s from ScheduleRealInfo s where s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 and s.bcType not in ('in','out') order by s.xlBm,s.adjustExps,s.fcsj")
151 List<ScheduleRealInfo> scheduleByDateAndLine2(String line,String date); 155 List<ScheduleRealInfo> scheduleByDateAndLine2(String line,String date);
152 156
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
@@ -10,11 +10,10 @@ import com.bsth.controller.realcontrol.dto.DfsjChange; @@ -10,11 +10,10 @@ import com.bsth.controller.realcontrol.dto.DfsjChange;
10 import com.bsth.controller.realcontrol.dto.LpData; 10 import com.bsth.controller.realcontrol.dto.LpData;
11 import com.bsth.data.BasicData; 11 import com.bsth.data.BasicData;
12 import com.bsth.data.LineConfigData; 12 import com.bsth.data.LineConfigData;
13 -import com.bsth.data.msg_queue.DirectivePushQueue;  
14 import com.bsth.data.schedule.DayOfSchedule; 13 import com.bsth.data.schedule.DayOfSchedule;
15 import com.bsth.data.schedule.SchAttrCalculator; 14 import com.bsth.data.schedule.SchAttrCalculator;
16 -import com.bsth.data.schedule.edit_logs.FormLogger;  
17 import com.bsth.data.schedule.ScheduleComparator; 15 import com.bsth.data.schedule.ScheduleComparator;
  16 +import com.bsth.data.schedule.edit_logs.FormLogger;
18 import com.bsth.data.schedule.edit_logs.ScheduleModifyLogger; 17 import com.bsth.data.schedule.edit_logs.ScheduleModifyLogger;
19 import com.bsth.data.schedule.edit_logs.loggers.FcxxwtLogger; 18 import com.bsth.data.schedule.edit_logs.loggers.FcxxwtLogger;
20 import com.bsth.data.schedule.late_adjust.LateAdjustHandle; 19 import com.bsth.data.schedule.late_adjust.LateAdjustHandle;
@@ -1050,6 +1049,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1050,6 +1049,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1050 sch.setRealExecDate(sch.getScheduleDateStr()); 1049 sch.setRealExecDate(sch.getScheduleDateStr());
1051 } 1050 }
1052 1051
  1052 + //日志记录
  1053 + ScheduleModifyLogger.sftz(sch, fcsjActual, remarks);
  1054 +
1053 sch.setFcsjActualAll(fcsjActual); 1055 sch.setFcsjActualAll(fcsjActual);
1054 sch.addRemarks(remarks); 1056 sch.addRemarks(remarks);
1055 sch.calcStatus(); 1057 sch.calcStatus();
@@ -1085,6 +1087,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1085,6 +1087,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1085 rs.put("status", ResponseCode.ERROR); 1087 rs.put("status", ResponseCode.ERROR);
1086 rs.put("msg", "未烂班,无法撤销!"); 1088 rs.put("msg", "未烂班,无法撤销!");
1087 } else { 1089 } else {
  1090 + //日志记录
  1091 + ScheduleModifyLogger.cxlb(sch);
  1092 +
1088 sch.setStatus(0); 1093 sch.setStatus(0);
1089 sch.setRemarks("");//清空备注 1094 sch.setRemarks("");//清空备注
1090 sch.setJhlc(sch.getJhlcOrig()); 1095 sch.setJhlc(sch.getJhlcOrig());
@@ -1124,6 +1129,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1124,6 +1129,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1124 break; 1129 break;
1125 } 1130 }
1126 }*/ 1131 }*/
  1132 + //日志记录
  1133 + ScheduleModifyLogger.cxsf(sch);
1127 1134
1128 sch.clearFcsjActual(); 1135 sch.clearFcsjActual();
1129 rs.put("status", ResponseCode.SUCCESS); 1136 rs.put("status", ResponseCode.SUCCESS);
@@ -1312,14 +1319,14 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1312,14 +1319,14 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1312 ts.add(next); 1319 ts.add(next);
1313 } 1320 }
1314 1321
1315 - try{ 1322 +/* try{
1316 //车辆下一个要执行的班次 1323 //车辆下一个要执行的班次
1317 ScheduleRealInfo carNext = dayOfSchedule.next(sch); 1324 ScheduleRealInfo carNext = dayOfSchedule.next(sch);
1318 if(carNext != null && !carNext.getXlBm().equals(sch.getXlBm())){ 1325 if(carNext != null && !carNext.getXlBm().equals(sch.getXlBm())){
1319 DirectivePushQueue.put64(carNext.getClZbh(), carNext.getXlBm(), "套跑@系统"); 1326 DirectivePushQueue.put64(carNext.getClZbh(), carNext.getXlBm(), "套跑@系统");
1320 fLog.log("下发线路切换指令", sch.getXlName(), carNext.getXlName()); 1327 fLog.log("下发线路切换指令", sch.getXlName(), carNext.getXlName());
1321 } 1328 }
1322 - }catch (Exception e){logger.error("", e);} 1329 + }catch (Exception e){logger.error("", e);}*/
1323 1330
1324 //重新计算车辆执行班次 1331 //重新计算车辆执行班次
1325 dayOfSchedule.reCalcExecPlan(sch.getClZbh()); 1332 dayOfSchedule.reCalcExecPlan(sch.getClZbh());
@@ -2926,7 +2933,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2926,7 +2933,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2926 list.add(t); 2933 list.add(t);
2927 } 2934 }
2928 2935
2929 - List<ScheduleRealInfo> listInfo2 = scheduleRealInfoRepository.scheduleByDateAndLine(line, date); 2936 + List<ScheduleRealInfo> listInfo2 = scheduleRealInfoRepository.scheduleByDateAndLineQp2(line, date);
2930 List<ScheduleRealInfo> xList = new ArrayList<ScheduleRealInfo>(); 2937 List<ScheduleRealInfo> xList = new ArrayList<ScheduleRealInfo>();
2931 List<ScheduleRealInfo> yList = new ArrayList<ScheduleRealInfo>(); 2938 List<ScheduleRealInfo> yList = new ArrayList<ScheduleRealInfo>();
2932 List<ScheduleRealInfo> zList = new ArrayList<ScheduleRealInfo>(); 2939 List<ScheduleRealInfo> zList = new ArrayList<ScheduleRealInfo>();
@@ -3149,9 +3156,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -3149,9 +3156,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
3149 Double jccgl=culateMieageService.culateJccgl(listS); 3156 Double jccgl=culateMieageService.culateJccgl(listS);
3150 Double zyygl=Arith.add(sjgl, ljgl); 3157 Double zyygl=Arith.add(sjgl, ljgl);
3151 Double zksgl=Arith.add(ksgl, jccgl); 3158 Double zksgl=Arith.add(ksgl, jccgl);
3152 - yesterdayDataList.get(x).put("totalKilometers", Arith.add(zyygl, zksgl)); 3159 + Double zlc=Arith.add(zyygl, zksgl);
  3160 + yesterdayDataList.get(x).put("totalKilometers", zlc);
3153 3161
3154 } 3162 }
  3163 + for (int i = 0; i < yesterdayDataList.size(); i++) {
  3164 + Map<String, Object> map=yesterdayDataList.get(i);
  3165 + Double zlc=map.get("totalKilometers")==null?0.0:Double.parseDouble(map.get("totalKilometers").toString());
  3166 + if(zlc<=0){
  3167 + yesterdayDataList.remove(map);
  3168 + }
  3169 + }
3155 //增加顺序号 3170 //增加顺序号
3156 for (int i = 0; i < yesterdayDataList.size(); i++) { 3171 for (int i = 0; i < yesterdayDataList.size(); i++) {
3157 if (i == 0) { 3172 if (i == 0) {
@@ -3202,6 +3217,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -3202,6 +3217,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
3202 3217
3203 //为换人换车情况表写入数据 3218 //为换人换车情况表写入数据
3204 schModifyLog.saveChangetochange(sch, cpc); 3219 schModifyLog.saveChangetochange(sch, cpc);
  3220 + //日志记录
  3221 + ScheduleModifyLogger.tzrc(sch, cpc);
3205 3222
3206 if (StringUtils.isNotEmpty(cpc.getJsy())) { 3223 if (StringUtils.isNotEmpty(cpc.getJsy())) {
3207 //换驾驶员 3224 //换驾驶员
@@ -4565,6 +4582,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -4565,6 +4582,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
4565 rs.put("status", ResponseCode.ERROR); 4582 rs.put("status", ResponseCode.ERROR);
4566 rs.put("msg", "班次未执行,无法撤销!"); 4583 rs.put("msg", "班次未执行,无法撤销!");
4567 } else { 4584 } else {
  4585 + //日志记录
  4586 + ScheduleModifyLogger.cxzx(sch);
4568 4587
4569 sch.clearFcsjActual(); 4588 sch.clearFcsjActual();
4570 sch.clearZdsjActual(); 4589 sch.clearZdsjActual();
src/main/resources/static/pages/base/timesmodel/add.html
@@ -4,9 +4,9 @@ @@ -4,9 +4,9 @@
4 } 4 }
5 .tagsDiv { 5 .tagsDiv {
6 border: 1px solid #c2cad8; 6 border: 1px solid #c2cad8;
7 - margin-left: 50px; 7 + margin-left: 15px;
8 padding: 4px 15px 4px 15px; 8 padding: 4px 15px 4px 15px;
9 - width: 69%; 9 + width: 50%;
10 } 10 }
11 </style> 11 </style>
12 <!-- 片段标题 START --> 12 <!-- 片段标题 START -->
@@ -58,7 +58,7 @@ @@ -58,7 +58,7 @@
58 <a href="#tab2" data-toggle="tab" class="step"> 58 <a href="#tab2" data-toggle="tab" class="step">
59 <span class="number"> 2 </span> 59 <span class="number"> 2 </span>
60 <span class="desc"> 60 <span class="desc">
61 - <i class="fa fa-check"></i> 获取参数方式 </span> 61 + <i class="fa fa-check"></i> 选择参数方案 </span>
62 </a> 62 </a>
63 </li> 63 </li>
64 <li> 64 <li>
@@ -121,28 +121,28 @@ @@ -121,28 +121,28 @@
121 </div> 121 </div>
122 <!-- 获取参数 --> 122 <!-- 获取参数 -->
123 <div class="tab-pane" id="tab2"> 123 <div class="tab-pane" id="tab2">
124 - <h3 class="block"> 获取参数方式 </h3> 124 + <h3 class="block"> 参数方案 </h3>
125 <!-- 获取参数 --> 125 <!-- 获取参数 -->
126 <div class="form-group"> 126 <div class="form-group">
127 - <label class="col-md-3 control-label"> <span class="required"> * </span> 获取参数方式:</label> 127 + <label class="col-md-3 control-label"> <span class="required"> * </span> 选择参数方案:</label>
128 <div class="col-md-9"> 128 <div class="col-md-9">
129 <div class="icheck-list"> 129 <div class="icheck-list">
130 <label > 130 <label >
131 - <input type="radio" class="icheck" name="baseRes" value=1 > 手动输入 131 + <input type="radio" class="icheck" name="baseRes" value=1 checked> 班型/人次/车辆
132 </label> 132 </label>
133 <label> 133 <label>
134 - <input type="radio" class="icheck" name="baseRes" value=0 checked> 客流大数据分析 134 + <input type="radio" class="icheck" name="baseRes" value=0> 客流大数据分析
135 </label> 135 </label>
136 </div> 136 </div>
137 </div> 137 </div>
138 </div> 138 </div>
139 <!-- 客容总量 --> 139 <!-- 客容总量 -->
140 - <div class="form-group" id="krlGroup"> 140 + <!-- <div class="form-group" id="krlGroup">
141 <label class="col-md-3 control-label"><span class="required"> * </span>客容总量&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 141 <label class="col-md-3 control-label"><span class="required"> * </span>客容总量&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>
142 <div class="col-md-9"> 142 <div class="col-md-9">
143 <input type="text" class="form-control input-medium" name="krl" id="krlInput" placeholder="客容总量"> 143 <input type="text" class="form-control input-medium" name="krl" id="krlInput" placeholder="客容总量">
144 </div> 144 </div>
145 - </div> 145 + </div> -->
146 </div> 146 </div>
147 <!-- 参数详情 --> 147 <!-- 参数详情 -->
148 <div class="tab-pane" id="tab3"> 148 <div class="tab-pane" id="tab3">
src/main/resources/static/pages/base/timesmodel/js/add-form-wizard.js
@@ -328,10 +328,10 @@ var SKBFormWizard = function() { @@ -328,10 +328,10 @@ var SKBFormWizard = function() {
328 map.lb = 15;// 定义例保时间. 328 map.lb = 15;// 定义例保时间.
329 map.workeLunch = 20;// 定义午餐时间. 329 map.workeLunch = 20;// 定义午餐时间.
330 map.workeDinner = 20;// 定义晚餐时间. 330 map.workeDinner = 20;// 定义晚餐时间.
331 - map.mixstopTime = 8;// 定义最小停站间隙  
332 - map.maxstopTime = 20;// 定义最大停站间隙.  
333 - map.upStopTime = 10;// 定义上行停站时间.  
334 - map.downStopTime = 10;// 定义下行停站时间. 331 + //map.mixstopTime = 8;// 定义最小停站间隙
  332 + //map.maxstopTime = 20;// 定义最大停站间隙.
  333 + //map.upStopTime = 10;// 定义上行停站时间.
  334 + //map.downStopTime = 10;// 定义下行停站时间.
335 if(n==0) { 335 if(n==0) {
336 // 定义一个周转时间. 336 // 定义一个周转时间.
337 var zzsj = parseInt(map.upTravelTime) + 10*2 + parseInt(map.downTravelTime); 337 var zzsj = parseInt(map.upTravelTime) + 10*2 + parseInt(map.downTravelTime);
@@ -456,7 +456,7 @@ var SKBFormWizard = function() { @@ -456,7 +456,7 @@ var SKBFormWizard = function() {
456 rules : { 456 rules : {
457 'skbName' : {required : true,},// 时刻表名称,必填项. 457 'skbName' : {required : true,},// 时刻表名称,必填项.
458 'lineName' : {required : true,},// 线路名称,必填项. 458 'lineName' : {required : true,},// 线路名称,必填项.
459 - 'krl' : {isBaseRes : true,number : true,digits : true,},// 客容量,当选择为客流方式时必填项、整数 459 + // 'krl' : {isBaseRes : true,number : true,digits : true,},// 客容量,当选择为客流方式时必填项、整数
460 'startStationFirstTime' : {required : true}, // 起始站首班时间,必填项. 460 'startStationFirstTime' : {required : true}, // 起始站首班时间,必填项.
461 'startStationEndTime' : {required : true}, // 起始站末班时间 ,必填项. 461 'startStationEndTime' : {required : true}, // 起始站末班时间 ,必填项.
462 'endStationFirstTime' : {required : true}, // 终点站首班时间 ,必填项. 462 'endStationFirstTime' : {required : true}, // 终点站首班时间 ,必填项.
@@ -502,6 +502,7 @@ var SKBFormWizard = function() { @@ -502,6 +502,7 @@ var SKBFormWizard = function() {
502 'clzs':{required : true,number : true,digits : true, isBcType : true},// 车辆总数,必填项、必须为整数. 502 'clzs':{required : true,number : true,digits : true, isBcType : true},// 车辆总数,必填项、必须为整数.
503 'bxrc' : {required : true},// 班型人次,必填项 503 'bxrc' : {required : true},// 班型人次,必填项
504 'linePlayType' : {required : true},// 线路规划类型,必填项 504 'linePlayType' : {required : true},// 线路规划类型,必填项
  505 + 'zdzcrl' : {number : true,digits : true},
505 }, 506 },
506 507
507 /** 508 /**
@@ -557,7 +558,7 @@ var SKBFormWizard = function() { @@ -557,7 +558,7 @@ var SKBFormWizard = function() {
557 var argus = form.serializeJSON(); 558 var argus = form.serializeJSON();
558 console.log(argus); 559 console.log(argus);
559 // 获取站点路由. 560 // 获取站点路由.
560 - $get('/stationroute/all',{'line.id_eq':argus.lineName.split('_')[0]},function(result) { 561 + $get('/stationroute/all',{'line.id_eq':argus.lineName.split('_')[0],'destroy_eq':0},function(result) {
561 // 判断. 562 // 判断.
562 if(result) { 563 if(result) {
563 // 定义上行起点站,上行终点站,下行起点站,下行终点站. 564 // 定义上行起点站,上行终点站,下行起点站,下行终点站.
@@ -652,7 +653,7 @@ var SKBFormWizard = function() { @@ -652,7 +653,7 @@ var SKBFormWizard = function() {
652 },function(){return '高峰时段配车数必须高于其它时段配车数!';}); 653 },function(){return '高峰时段配车数必须高于其它时段配车数!';});
653 654
654 // 验证客流数据分析时客容量为必填项. 655 // 验证客流数据分析时客容量为必填项.
655 - $.validator.addMethod("isBaseRes", function(value,element) { 656 + /*$.validator.addMethod("isBaseRes", function(value,element) {
656 // 定义返回值. 657 // 定义返回值.
657 var tag = true; 658 var tag = true;
658 // 定义选择获取参数方式值 659 // 定义选择获取参数方式值
@@ -662,7 +663,7 @@ var SKBFormWizard = function() { @@ -662,7 +663,7 @@ var SKBFormWizard = function() {
662 tag = false; 663 tag = false;
663 return tag; 664 return tag;
664 }, '客流大数据分析,客流总量为必填项!'); 665 }, '客流大数据分析,客流总量为必填项!');
665 - 666 + */
666 // 验证配车总数与班型人次搭配 667 // 验证配车总数与班型人次搭配
667 $.validator.addMethod('isBcType', function(value,element) { 668 $.validator.addMethod('isBcType', function(value,element) {
668 // 定义返回值. 669 // 定义返回值.
@@ -673,6 +674,14 @@ var SKBFormWizard = function() { @@ -673,6 +674,14 @@ var SKBFormWizard = function() {
673 // 判断. 674 // 判断.
674 if(bxrc=='' || bxrc==null || clzs=='' || clzs==0) 675 if(bxrc=='' || bxrc==null || clzs=='' || clzs==0)
675 return false; 676 return false;
  677 + var bxrcAr = bxrc.split(','),pczs = 0;
  678 + for(var s = 0 ; s< bxrcAr.length;s++) {
  679 + // 切割单个班型人次.
  680 + pczs = pczs + parseInt(bxrcAr[s].split('/')[2]);
  681 + }
  682 + if(pczs!=clzs)
  683 + tag = false;
  684 + /**
676 // 定义首末班次开始结束时间集合. 685 // 定义首末班次开始结束时间集合.
677 var map = {'line':{'startStationFirstTime':$('#qdzsbsjInput').val(), 686 var map = {'line':{'startStationFirstTime':$('#qdzsbsjInput').val(),
678 'startStationEndTime':$('#qdzmbsjInput').val(), 687 'startStationEndTime':$('#qdzmbsjInput').val(),
@@ -706,19 +715,20 @@ var SKBFormWizard = function() { @@ -706,19 +715,20 @@ var SKBFormWizard = function() {
706 // 判断 715 // 判断
707 if(parseFloat(countGs.toFixed(2))>maxGs || (bxrcAr.length==1 && countRc > parseInt(clzs)) ) 716 if(parseFloat(countGs.toFixed(2))>maxGs || (bxrcAr.length==1 && countRc > parseInt(clzs)) )
708 tag = false; 717 tag = false;
  718 + */
709 return tag; 719 return tag;
710 - },function(){return '配车总数与班型人次搭配不合理!'; }); 720 + },function(){return '配车总数与【班型/人次/车辆】搭配不合理!'; });
711 721
712 /** 722 /**
713 * @description : (TODO) 监听获取参数方式值改变事件. 723 * @description : (TODO) 监听获取参数方式值改变事件.
714 * 724 *
715 * */ 725 * */
716 - $('input:radio[name="baseRes"]').on('change',function(v) { 726 + /*$('input:radio[name="baseRes"]').on('change',function(v) {
717 if($(this).val()=='1') 727 if($(this).val()=='1')
718 $('#krlGroup').hide(); 728 $('#krlGroup').hide();
719 else if($(this).val()=='0') 729 else if($(this).val()=='0')
720 $('#krlGroup').show(); 730 $('#krlGroup').show();
721 - }); 731 + });*/
722 732
723 // 确认提交信息 733 // 确认提交信息
724 var displayConfirm = function() { 734 var displayConfirm = function() {
@@ -794,14 +804,17 @@ var SKBFormWizard = function() { @@ -794,14 +804,17 @@ var SKBFormWizard = function() {
794 if (form.valid() == false) { 804 if (form.valid() == false) {
795 return false; 805 return false;
796 } 806 }
797 - if(index==1) { 807 + /*if(index==1) {
798 // 初始化客容量值. 808 // 初始化客容量值.
799 if($('#krlInput').val() == '') 809 if($('#krlInput').val() == '')
800 $('#krlInput').val(50); 810 $('#krlInput').val(50);
801 - }else if(index == 2) { 811 + }else */if(index == 2) {
802 var baseRes = $('#submit_argus_form input[name="baseRes"]:checked').val(),// 获取参数方式值. 812 var baseRes = $('#submit_argus_form input[name="baseRes"]:checked').val(),// 获取参数方式值.
803 lineId = $('#lineSelect').val().split('_')[0],// 线路ID. 813 lineId = $('#lineSelect').val().split('_')[0],// 线路ID.
804 - krl = $('#krlInput').val();// 客容量 814 + krl = 50;
  815 + // krl = $('#krlInput').val();// 客容量
  816 + // 弹出正在加载层
  817 + var i = layer.load(2);
805 getLineInfo(lineId,function(r) { 818 getLineInfo(lineId,function(r) {
806 getHtmlTemp(baseRes,r.content[0],lineId,krl,function(htlMap) { 819 getHtmlTemp(baseRes,r.content[0],lineId,krl,function(htlMap) {
807 $('#tab3').html(htlMap.forminput); 820 $('#tab3').html(htlMap.forminput);
@@ -831,6 +844,8 @@ var SKBFormWizard = function() { @@ -831,6 +844,8 @@ var SKBFormWizard = function() {
831 options += '</optgroup>'; 844 options += '</optgroup>';
832 $('#carParkSelect').html(options).select2(); 845 $('#carParkSelect').html(options).select2();
833 $('#carParkSelect').select2("val",r.content[0].carPark); 846 $('#carParkSelect').select2("val",r.content[0].carPark);
  847 + // 关闭弹出加载层
  848 + layer.close(i);
834 }); 849 });
835 }); 850 });
836 }); 851 });
src/main/resources/static/pages/base/timesmodel/js/base-fun.js
@@ -324,6 +324,220 @@ var BaseFun = function() { @@ -324,6 +324,220 @@ var BaseFun = function() {
324 'bxrcgs':null}; 324 'bxrcgs':null};
325 }, 325 },
326 326
  327 + BXPplaceClassesTime01 : function(saa,cara,map,seMap,dataMap,lpNoA) {
  328 + var allJsonD = baseF.plgfbc(saa,cara,map,seMap,dataMap);
  329 + var jsonArray = baseF.tzsmbcsj01(baseF.setbcsAndfcno(allJsonD),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj),lpNoA,dataMap;
  330 + var list = baseF.splitBxRc(map.bxrc);
  331 + baseF.fprclp01(list,cara);
  332 + console.log(list);
  333 + var bxrclist = list.data;
  334 + var rs = new Array(),bxrcgs= new Array();
  335 + // 遍历已分配好路牌的班型人次数组.
  336 + for(var x = 0 ; x < bxrclist.length; x++) {
  337 + // 定义当前班型人次下的路牌数组.
  338 + var cla = bxrclist[x].sslp;
  339 + var dsdnmb = bxrclist[x].rs/bxrclist[x].fpcls;
  340 + // 定义当前班型人次下的工时.
  341 + var hoursV = bxrclist[x].hoursV*dsdnmb;
  342 + // 遍历路牌
  343 + for(var s = 0 ; s < cla.length; s++) {
  344 + //cla[s].lpName = bxrclist[x].type;
  345 + // 获取路牌编号.
  346 + var lpNo = cla[s].lpNo;
  347 + // 定义路牌下的所有班次.
  348 + var lpbc = new Array();
  349 + bxrcgs.push({'lpNo':lpNo,'hoursV':hoursV,'type':bxrclist[x].type});
  350 + // 遍历班次数.
  351 + for(var i =0 ; i <jsonArray.length; i++) {
  352 + // 判断当期遍历的班次是否属于当前的路牌.
  353 + if(jsonArray[i].lpNo == lpNo)
  354 + lpbc.push(jsonArray[i]);
  355 + }
  356 + // 按照发车序号顺序排序.
  357 + lpbc.sort(function(a,b){return b.fcno-a.fcno});
  358 + // 调整班次数.也就是说调整工时.
  359 + baseF.tzlpgs01(lpbc,hoursV,map,dataMap,lpNo,saa);
  360 + rs = rs.concat(lpbc);
  361 + }
  362 + }
  363 + var jar = baseF.tzsmbcsj01(baseF.setbcsAndfcno(rs),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj),lpNoA,dataMap;
  364 + //var jar = baseF.tzsmbcsj(baseF.setbcsAndfcno(rs),dataMap.smbcsjArr,dataMap.ccsjArr,dataMap.cclcArr,dataMap.qdzArr,saa[0].lbsj),lpNoA,dataMap;
  365 + var resultJA = new Array();
  366 + for(var m = 0 ; m < cara.length; m++) {
  367 + // 获取路牌编号.
  368 + var lpNo_ = cara[m].lpNo;
  369 + // 定义路牌下的所有班次.
  370 + var lpbc_ = new Array();
  371 + // 遍历班次数.
  372 + for(var j =0 ; j <jar.length; j++) {
  373 + // 判断当期遍历的班次是否属于当前的路牌.
  374 + if(jar[j].lpNo == lpNo_)
  375 + lpbc_.push(jar[j]);
  376 + }
  377 + // 按照发车序号顺序排序.
  378 + lpbc_.sort(function(a,b){return a.fcno-b.fcno});
  379 + resultJA = resultJA.concat(baseF.addjclbbc01(lpbc_,dataMap,saa[0].lbsj,map));
  380 + // resultJA = resultJA.concat(lpbc_);
  381 + }
  382 + return {'json':resultJA,'bxrcgs':null};
  383 + },
  384 +
  385 + /**
  386 + * @description : (TODO) 添加进出场班次、早晚例保班次.
  387 + *
  388 + * @param [bc--路牌下的所有班次;dataMap--参数信息;lbsj--例保时间]
  389 + *
  390 + */
  391 + addjclbbc01 : function(bc,dataMap,lbsj,gatps) {
  392 + if(bc.length>0)
  393 + bc[bc.length-1].STOPTIME = 0;
  394 + var result = new Array();
  395 + var fcno = 0,dxfno = 0,stas = false;
  396 + for(var b = 0 ; b < bc.length;b++) {
  397 + var fxdm = baseF.dirDmToIndex(bc[b].xlDir);
  398 + var car = {'lp':bc[b].lp, 'lpNo':bc[b].lpNo, 'lpName':bc[b].lpName, 'lpType':bc[b].lpType};
  399 + if(b==0) {
  400 + var dqbcfcsj = baseF.getDateTime(bc[b].fcsj);
  401 + result.push(baseF.getbcObj(
  402 + dqbcfcsj,dataMap.ccsjArr[fxdm],car,dataMap.bcTypeArr.bd,
  403 + dataMap.dira[fxdm],1,0,gatps,0,null,null,null,0,lbsj));// 早行例保班次
  404 + result.push(baseF.getbcObj(
  405 + dqbcfcsj,dataMap.ccsjArr[fxdm],car,dataMap.bcTypeArr.out,
  406 + dataMap.dira[fxdm],2,dataMap.cclcArr[fxdm],gatps,0,dataMap.qdzArr[fxdm],null,null,0,0));// 出场班次
  407 + fcno ++;
  408 + }else if(b==bc.length-1){
  409 + var fcno_ = dxfno + 2;
  410 + var qdbcddsj = baseF.getDateTime(bc[b].ARRIVALTIME);
  411 + result.push(baseF.getbcObj(
  412 + qdbcddsj,dataMap.jcsjArr[fxdm],car,dataMap.bcTypeArr.in_,
  413 + dataMap.dira[fxdm],fcno_++,dataMap.jclcArr[fxdm],gatps,0,dataMap.qdzArr[fxdm],null,null,0,0));// 进场班次
  414 + result.push(baseF.getbcObj(
  415 + qdbcddsj,dataMap.jcsjArr[fxdm],car,dataMap.bcTypeArr.lc,
  416 + dataMap.dira[fxdm],fcno_++,0,gatps,0,null,null,null,0,lbsj));// 晚班例保班次
  417 + }
  418 + dxfno = bc[b].fcno + fcno;
  419 + bc[b].fcno = dxfno;
  420 + if(stas) {
  421 + fcno ++;
  422 + stas = false;
  423 + }
  424 + result.push(bc[b]);
  425 + }
  426 + return result;
  427 + },
  428 +
  429 + /**
  430 + * @description : (TODO) 调整某路牌下的工时.
  431 + *
  432 + * @param [arr--当前路牌下的班次数组;gs--当前路牌的总工时;dataMap--参数信息;lpNo--路牌编码;saa--参数信息]
  433 + *
  434 + * */
  435 + tzlpgs01 : function(arr,gs,map,dataMap,lpNo,saa) {
  436 + // 定义当前路牌的进场时间、早晚例保时间.
  437 + var jczwsj = saa[0].lbsj*2 + dataMap.ccsjArr[baseF.dirDmToIndex(arr[0].xlDir)] +
  438 + dataMap.jcsjArr[baseF.dirDmToIndex(arr[arr.length-1].xlDir)];
  439 + // 定义开始、结束时间.
  440 + //var st = null , ed = null;
  441 + // 根据路牌编码依次轮流取高峰之间和晚高峰之后的时间段.
  442 + /*if(lpNo%2!=0) {
  443 + st = dataMap.gfzjsjd[0].st;
  444 + ed = dataMap.gfzjsjd[0].ed;
  445 + }else {
  446 + st = dataMap.wgfzhsjd[0].st;
  447 + ed = dataMap.wgfzhsjd[0].ed;
  448 + }*/
  449 + // 定义路牌总工时.第一次切高峰之间和晚高峰之后的班次.
  450 + var lpdqzgs = parseFloat(((baseF.getlpzgs(arr) + jczwsj)/60).toFixed(2));
  451 + while(lpdqzgs>gs) {
  452 + for(var t = 0 ; t<arr.length;t++) {
  453 + // 得到当前路牌下的发车时间.
  454 + var dqbcfcsj = baseF.getDateTime(arr[t].fcsj);
  455 + // 判断时间范围.
  456 + if(!baseF.isgfsjd01(dqbcfcsj,dataMap)) {
  457 + arr.splice(t,1);
  458 + break;
  459 + }
  460 + }
  461 + lpdqzgs = parseFloat(((baseF.getlpzgs(arr) + jczwsj)/60).toFixed(2));
  462 + }
  463 + // 判断总工时是否大于班型对应的工时.
  464 + /*if(lpdqzgs>gs) {
  465 + // 定义相差值.
  466 + var dx = parseFloat((lpdqzgs - gs).toFixed(2));
  467 + // 定义圈数.
  468 + var qs = Math.round(dx*60/70);
  469 + for(var t = 0 ; t<arr.length;t++) {
  470 + // 得到当前路牌下的发车时间.
  471 + var dqbcfcsj = baseF.getDateTime(arr[t].fcsj);
  472 + // 判断时间范围.
  473 + if(dqbcfcsj>st && dqbcfcsj<ed) {
  474 + arr[t-1].STOPTIME = 0;
  475 + // 切割.
  476 + arr.splice(t,qs*2);
  477 + break;
  478 + }
  479 + }
  480 + }*/
  481 + },
  482 +
  483 + /**
  484 + * @description (TODO) 把班型人次合理的分配到不同的路牌上.
  485 + *
  486 + * @param [bxgs--班型人次数组长度;list--班型人次数组集合;clzs--路牌数组]
  487 + *
  488 + * @return 返回一个把路牌合理的分配到班型人次下组成的数据集合.
  489 + * */
  490 + fprclp01 : function(list,clzs) {
  491 + var bxgs = list.data.length;
  492 + // 定义总车数.
  493 + var dxcount = clzs.length;
  494 + /*for(var t = 1 ; t<bxgs ; t++) {
  495 + dxcount = dxcount + list.data[t].rs;
  496 + }*/
  497 + // 最多车次与总车次的比例.
  498 + var blnum = Math.round(dxcount/list.data[0].fpcls);
  499 + var rs = new Array();
  500 + // 遍历
  501 + for(var r = 0 ; r<bxgs ;r++) {
  502 + // 得到没有分配出去的路牌.
  503 + var dxa = baseF.chaji_array(clzs,rs);
  504 + // 定义当前车次数.
  505 + var rsnum = list.data[r].fpcls;
  506 + // 定义记录当前分割路牌的次数下标.分配到班型车次下的路牌数组.
  507 + var index = 0,sslp = new Array();
  508 + // 当前车次所有占比例.
  509 + var tempint = parseInt(rsnum/blnum);
  510 + // 判断如果比例小1 则为当前车次数.
  511 + blnum = tempint <=1 ? rsnum : blnum;
  512 + // 判断当前班型车次数组下标值.如果为倒数第二个或者之前
  513 + if(r<bxgs-1) {
  514 + // 遍历
  515 + for(var c = 0 ; c<tempint;c++) {
  516 + // 创建新的没有分配出去的路牌数组.
  517 + var temp = dxa.concat();
  518 + // 创建切割路牌数组.
  519 + var tagA = new Array();
  520 + // 判断切割的下标值是否小于等于路牌数组的倒数第二个或者之前.
  521 + if(index<=dxa.length-blnum) {
  522 + tagA = temp.splice(index,blnum);
  523 + }else {
  524 + tagA = temp.splice(dxa.length-blnum,blnum);
  525 + }
  526 + // 组合切割路牌数组.赋值给已分配出去的路牌.
  527 + rs = rs.concat(tagA);
  528 + // 赋值给分配到班型车次下的路牌数组.
  529 + sslp = sslp.concat(tagA);
  530 + // 记录切割下标.
  531 + index = index + 1 + blnum;
  532 + }
  533 + // 分配到班型车次下的路牌数组.
  534 + list.data[r].sslp = sslp;
  535 + }else {
  536 + list.data[r].sslp = dxa;
  537 + }
  538 + }
  539 + },
  540 +
327 /** 541 /**
328 * @description : (TODO) 根据班型人次与车辆总数排列班次时刻数据. 542 * @description : (TODO) 根据班型人次与车辆总数排列班次时刻数据.
329 * 543 *
@@ -758,7 +972,7 @@ var BaseFun = function() { @@ -758,7 +972,7 @@ var BaseFun = function() {
758 for(var c = 0 ; c<len ; c++) { 972 for(var c = 0 ; c<len ; c++) {
759 // 铺出所有的班次 973 // 铺出所有的班次
760 var _mmstartTime = baseF.getDateTime(map.earlyStartTime);// 获取早高峰开始时间点,并转为时间对象. 974 var _mmstartTime = baseF.getDateTime(map.earlyStartTime);// 获取早高峰开始时间点,并转为时间对象.
761 - var tempTime = new Date(_mmstartTime.setMinutes(_mmstartTime.getMinutes()-(len - cara[c].lpNo)*saa[0].fcjx)); 975 + var tempTime = new Date(_mmstartTime.setMinutes(_mmstartTime.getMinutes()-(len - cara[c].lpNo)*saa[0].fcjx.gffcjx));
762 var kssj = dataMap.zgfsjd[0].st; 976 var kssj = dataMap.zgfsjd[0].st;
763 var cctag = map.linePlayType=='1' ? 0 : baseF.getdefaultDir(dataMap.smbcsjArr);// 获取出场类型 [0--上行出场;1--下行出场] 977 var cctag = map.linePlayType=='1' ? 0 : baseF.getdefaultDir(dataMap.smbcsjArr);// 获取出场类型 [0--上行出场;1--下行出场]
764 var sjAndDir = baseF.getBeganTime(tempTime,kssj,null, saa,dataMap.zgfsjd,dataMap.wgfsjd,dataMap.pcxssjArr,dataMap.gfxxsjArr,cctag, dataMap.ztjxA);// 计算当前路牌第一个首班时间点. 978 var sjAndDir = baseF.getBeganTime(tempTime,kssj,null, saa,dataMap.zgfsjd,dataMap.wgfsjd,dataMap.pcxssjArr,dataMap.gfxxsjArr,cctag, dataMap.ztjxA);// 计算当前路牌第一个首班时间点.
@@ -781,9 +995,10 @@ var BaseFun = function() { @@ -781,9 +995,10 @@ var BaseFun = function() {
781 kssj,dataMap.zwcArr[1],cara[c],dataMap.bcTypeArr.cf, 995 kssj,dataMap.zwcArr[1],cara[c],dataMap.bcTypeArr.cf,
782 dataMap.dira[cctag],xhNo++,0,map,0,null,null,null,0,0));// 晚餐班次 996 dataMap.dira[cctag],xhNo++,0,map,0,null,null,null,0,0));// 晚餐班次
783 } 997 }
784 - var tzsj = dataMap.ztjxA[cctag]; 998 + var tzsj = baseF.isgfsjd01(kssj,dataMap) ? dataMap.gftzsj[cctag] : dataMap.dgtzsj[cctag];
  999 + // var tzsj = dataMap.ztjxA[cctag];
785 var _xxsj = baseF.getxssj(dataMap.zgfsjd,dataMap.wgfsjd,kssj,dataMap.pcxssjArr,dataMap.gfxxsjArr,cctag);// 获取行驶时间 1000 var _xxsj = baseF.getxssj(dataMap.zgfsjd,dataMap.wgfsjd,kssj,dataMap.pcxssjArr,dataMap.gfxxsjArr,cctag);// 获取行驶时间
786 - var tzsj = baseF.isLastbc(kssj,endTime,tzsj,_xxsj) ? 0 : tzsj; 1001 + tzsj = baseF.isLastbc(kssj,endTime,tzsj,_xxsj) ? 0 : tzsj;
787 rs.push(baseF.getbcObj( 1002 rs.push(baseF.getbcObj(
788 kssj,_xxsj,cara[c],dataMap.bcTypeArr.normal, 1003 kssj,_xxsj,cara[c],dataMap.bcTypeArr.normal,
789 dataMap.dira[cctag],xhNo++,dataMap.pcxslcArr[cctag],map,0, 1004 dataMap.dira[cctag],xhNo++,dataMap.pcxslcArr[cctag],map,0,
@@ -794,6 +1009,15 @@ var BaseFun = function() { @@ -794,6 +1009,15 @@ var BaseFun = function() {
794 return rs; 1009 return rs;
795 }, 1010 },
796 1011
  1012 + isgfsjd01 : function(kssj,dataMap) {
  1013 +
  1014 + var tag = false;
  1015 + if((dataMap.zgfsjd[0].st <=kssj && kssj<= dataMap.zgfsjd[0].ed ) || ( dataMap.wgfsjd[0].st <= kssj && kssj <= dataMap.wgfsjd[0].ed))
  1016 + tag = true;
  1017 + return tag;
  1018 + },
  1019 +
  1020 +
797 /** 1021 /**
798 * @description : (TODO) 该方法可去除. 1022 * @description : (TODO) 该方法可去除.
799 * 1023 *
@@ -836,6 +1060,7 @@ var BaseFun = function() { @@ -836,6 +1060,7 @@ var BaseFun = function() {
836 for(var s = 0 ; s< bxrcAr.length;s++) { 1060 for(var s = 0 ; s< bxrcAr.length;s++) {
837 var s1a = bxrcAr[s].split('/'); 1061 var s1a = bxrcAr[s].split('/');
838 var rs = parseInt(s1a[1]); 1062 var rs = parseInt(s1a[1]);
  1063 + var fpcls = parseInt(s1a[2]);
839 var gsgdIndex = 0,hoursV = 0.0,minueV='' ; 1064 var gsgdIndex = 0,hoursV = 0.0,minueV='' ;
840 for(var g = 0 ; g < gsgd.length; g++) { 1065 for(var g = 0 ; g < gsgd.length; g++) {
841 if(gsgd[g].type == s1a[0]) { 1066 if(gsgd[g].type == s1a[0]) {
@@ -846,6 +1071,7 @@ var BaseFun = function() { @@ -846,6 +1071,7 @@ var BaseFun = function() {
846 } 1071 }
847 list.push({'type':s1a[0], 1072 list.push({'type':s1a[0],
848 'rs':rs, 1073 'rs':rs,
  1074 + 'fpcls':fpcls,
849 'hoursV':hoursV, 1075 'hoursV':hoursV,
850 'minueV':minueV}); 1076 'minueV':minueV});
851 rsa.push(rs); 1077 rsa.push(rs);
@@ -945,12 +1171,49 @@ var BaseFun = function() { @@ -945,12 +1171,49 @@ var BaseFun = function() {
945 baseF.tzqtbc(_obj.xxbc,_obj.qt,sj,cl,zd,lbsj); 1171 baseF.tzqtbc(_obj.xxbc,_obj.qt,sj,cl,zd,lbsj);
946 return _obj.sxbc.concat(_obj.xxbc).concat(_obj.qt); 1172 return _obj.sxbc.concat(_obj.xxbc).concat(_obj.qt);
947 }, 1173 },
948 - tcbc : function(ar,kssj,jssj) { 1174 + /**
  1175 + * @discription : (TODO) 调整首末班车时间点
  1176 + *
  1177 + * @params : [list--时刻表明细数组;smbcsj--首末班车时间]
  1178 + *
  1179 + * @return : 返回一个数组对象。这里返回的是时刻表明细数据
  1180 + **/
  1181 + tzsmbcsj01 : function(list,smbcsj,sj,cl,zd,lbsj) {
  1182 + var _obj = baseF.getsxAndxxbc(list);
  1183 + baseF.tcbc(_obj.sxbc,smbcsj[0].kssj,smbcsj[0].jssj ,_obj.xxbc);// 剔除上行不在时间范围内的班次
  1184 + baseF.tcbc(_obj.xxbc,smbcsj[1].kssj,smbcsj[1].jssj,_obj.sxbc);// 剔除下行不在时间范围内的班次
  1185 + baseF.dzsmsj(_obj.sxbc,smbcsj[0].kssj,smbcsj[0].jssj,_obj.xxbc);// 调整上行首末班车时间
  1186 + baseF.dzsmsj(_obj.xxbc,smbcsj[1].kssj,smbcsj[1].jssj,_obj.sxbc);// 调整下行首末班车时间
  1187 + return _obj.sxbc.concat(_obj.xxbc).concat(_obj.qt);
  1188 + },
  1189 + tcbc : function(ar,kssj,jssj,ppar) {
949 for(var s = 0 ; s<ar.length;s++) { 1190 for(var s = 0 ; s<ar.length;s++) {
950 if(baseF.isDelete(baseF.getDateTime(kssj), 1191 if(baseF.isDelete(baseF.getDateTime(kssj),
951 baseF.getDateTime(jssj), 1192 baseF.getDateTime(jssj),
952 baseF.getDateTime(ar[s].fcsj))) { 1193 baseF.getDateTime(ar[s].fcsj))) {
  1194 + var tempa = ar.concat(ppar),sslpA = new Array();
  1195 + for(var r = 0 ; r<tempa.length;r++) {
  1196 + if(tempa[r].lpNo == ar[s].lpNo)
  1197 + sslpA.push(tempa[r]);
  1198 + }
  1199 + sslpA.sort(function(a,b){return a.fcno-b.fcno});
  1200 + var lastBc = null;
  1201 + for(var p = 0 ; p<sslpA.length;p++) {
  1202 + if(sslpA[p].fcno == ar[s].fcno && sslpA[p].xlDir ==ar[s].xlDir && sslpA[p].fcsj == ar[s].fcsj ) {
  1203 + lastBc = sslpA[p-1];
  1204 + break;
  1205 + }
  1206 + }
  1207 + if(lastBc !=null) {
  1208 + for(var t = 0 ;t < ppar.length;t++) {
  1209 + if(ppar[t].fcno == lastBc.fcno && ppar[t].xlDir == lastBc.xlDir && ppar[t].fcsj == lastBc.fcsj ) {
  1210 + ppar.splice(t, 1);
  1211 + break;
  1212 + }
  1213 + }
  1214 + }
953 ar.splice(s, 1); 1215 ar.splice(s, 1);
  1216 + s--;
954 } 1217 }
955 } 1218 }
956 }, 1219 },
src/main/resources/static/pages/base/timesmodel/js/gantt.js
@@ -32,13 +32,15 @@ @@ -32,13 +32,15 @@
32 }); 32 });
33 $('.tipso-animation').tipso('show'); 33 $('.tipso-animation').tipso('show');
34 setTimeout(function(){$('.tipso-animation').tipso('hide');},4000); 34 setTimeout(function(){$('.tipso-animation').tipso('hide');},4000);
  35 + console.log(map);
  36 + //debugger;
35 // 1、定义开始与结束时间点字符串. 37 // 1、定义开始与结束时间点字符串.
36 var seMap = getStartAndEndDate(map); 38 var seMap = getStartAndEndDate(map);
37 // 2、获取开始与结束时间对象. 39 // 2、获取开始与结束时间对象.
38 /*var seDate = getksjssj(null,seMap.s.split('-')[0]);*/ 40 /*var seDate = getksjssj(null,seMap.s.split('-')[0]);*/
39 var seDate = getksjssj(null,seMap.s); 41 var seDate = getksjssj(null,seMap.s);
40 // 3、定义周转时间. 42 // 3、定义周转时间.
41 - map.zzsj = parseInt(getzzsj(map)); 43 + map.zzsj = getzzsj(map);
42 // 5、方向代码. 44 // 5、方向代码.
43 var dirA = getsxxDM(); 45 var dirA = getsxxDM();
44 // 6、班次类型. 46 // 6、班次类型.
@@ -53,7 +55,7 @@ @@ -53,7 +55,7 @@
53 CSMap = getMaxCarAndStopSpace1(map); 55 CSMap = getMaxCarAndStopSpace1(map);
54 } 56 }
55 // 发车间隙 57 // 发车间隙
56 - map.stopSpace = CSMap.stopSpace; 58 + map.fcjx = CSMap.fcjx;
57 // 定义时间参数. 59 // 定义时间参数.
58 var stopAraay = getsj(map); 60 var stopAraay = getsj(map);
59 if(isNull(objD)) { 61 if(isNull(objD)) {
@@ -62,7 +64,8 @@ @@ -62,7 +64,8 @@
62 data = BaseFun.KLplaceClassesTime(CSMap.gattA,stopAraay,CSMap.maxCar,map,seMap,dataMap); 64 data = BaseFun.KLplaceClassesTime(CSMap.gattA,stopAraay,CSMap.maxCar,map,seMap,dataMap);
63 }else if(map.baseRes== '1') { 65 }else if(map.baseRes== '1') {
64 // 采用班型人次数据获取渲染时刻表明细图形的配置参数数据. 66 // 采用班型人次数据获取渲染时刻表明细图形的配置参数数据.
65 - data = BaseFun.BXPplaceClassesTime(stopAraay,CSMap.maxCar,map,seMap,dataMap,getylp(CSMap.maxCar).lpNoA); 67 + // data = BaseFun.BXPplaceClassesTime(stopAraay,CSMap.maxCar,map,seMap,dataMap,getylp(CSMap.maxCar).lpNoA);
  68 + data = BaseFun.BXPplaceClassesTime01(stopAraay,CSMap.maxCar,map,seMap,dataMap,getylp(CSMap.maxCar).lpNoA);
66 } 69 }
67 70
68 }else { 71 }else {
@@ -107,7 +110,7 @@ @@ -107,7 +110,7 @@
107 * @returns 返回一个分装发车间隙、车辆数的最大值集合. 110 * @returns 返回一个分装发车间隙、车辆数的最大值集合.
108 * */ 111 * */
109 function getMaxCarAndStopSpace1(map) { 112 function getMaxCarAndStopSpace1(map) {
110 - return {'gattA':null,'stopSpace': Math.round(map.zzsj/map.clzs),'maxCar':BaseFun.getYAxisCarArray(parseInt(map.clzs))}; 113 + return {'gattA':null,'fcjx': {'gffcjx': Math.round(map.zzsj.gfzzsj/map.clzs) , 'dgfcjx': Math.round(map.zzsj.dgzzsj/map.clzs)},'maxCar':BaseFun.getYAxisCarArray(parseInt(map.clzs))};
111 } 114 }
112 115
113 /** 116 /**
@@ -143,9 +146,11 @@ @@ -143,9 +146,11 @@
143 'dira' : dira,// 方向集合 [下标0代表上;下标1代表下] 146 'dira' : dira,// 方向集合 [下标0代表上;下标1代表下]
144 'bcTypeArr' : bcTypeArr,// 班次类型 147 'bcTypeArr' : bcTypeArr,// 班次类型
145 'lbsj' : gatps.lb=='' ? 0:parseInt(gatps.lb),// 例保时间. 148 'lbsj' : gatps.lb=='' ? 0:parseInt(gatps.lb),// 例保时间.
146 - 'minztjx' : parseInt(gatps.mixstopTime), // 最小停站时间.  
147 - 'ztjxA' : BaseFun.formatPairing(gatps.upStopTime,gatps.downStopTime), // 停站时间.  
148 - 'maxztjx' : parseInt(gatps.maxstopTime), // 最大停站时间. 149 + // 'minztjx' : parseInt(gatps.mixstopTime), // 最小停站时间.
  150 + // 'ztjxA' : BaseFun.formatPairing(gatps.upStopTime,gatps.downStopTime), // 停站时间.
  151 + // 'maxztjx' : parseInt(gatps.maxstopTime), // 最大停站时间.
  152 + 'gftzsj': BaseFun.formatPairing(gatps.gfupStopTime,gatps.gfdownStopTime),// 高峰停站时间.
  153 + 'dgtzsj' : BaseFun.formatPairing(gatps.dgupStopTime,gatps.dgdownStopTime),// 低谷停站时间.
149 'map' : gatps, 154 'map' : gatps,
150 'zzsj':gatps.zzsj,// 周转时间. 155 'zzsj':gatps.zzsj,// 周转时间.
151 }; 156 };
@@ -160,7 +165,14 @@ @@ -160,7 +165,14 @@
160 * */ 165 * */
161 function getzzsj(map) { 166 function getzzsj(map) {
162 // 一圈所用时间 (上行+下行+停歇时间) 167 // 一圈所用时间 (上行+下行+停歇时间)
163 - return parseInt(map.upTravelTime) + parseInt(map.upStopTime) + parseInt(map.downStopTime) + parseInt(map.downTravelTime); 168 + return {
  169 + 'gfzzsj': parseInt(map.earlyUpTime =='' ? map.upTravelTime : map.earlyUpTime) +
  170 + parseInt(map.gfupStopTime) + parseInt(map.gfdownStopTime) +
  171 + parseInt(map.earlyDownTime =='' ? map.downTravelTime : map.earlyDownTime ), // 高峰周转时间
  172 + 'dgzzsj': parseInt(map.troughUpTime==''? map.upTravelTime : map.troughUpTime) +
  173 + parseInt(map.dgupStopTime) + parseInt(map.dgdownStopTime) +
  174 + parseInt(map.troughDownTime==''? map.downTravelTime: map.troughDownTime),// 低谷周转时间
  175 + };
164 } 176 }
165 177
166 /** 178 /**
@@ -171,8 +183,8 @@ @@ -171,8 +183,8 @@
171 * @return 返回开始与结束时间字符串集合. 183 * @return 返回开始与结束时间字符串集合.
172 * */ 184 * */
173 function getStartAndEndDate(map) { 185 function getStartAndEndDate(map) {
174 - return {'s': map.linePlayType=='1'? map.startStationFirstTime : getMinDate(map.startStationFirstTime,map.endStationFirstTime),  
175 - 'e': map.linePlayType=='1'? map.startStationEndTime : getMaxDate(map.startStationEndTime,map.endStationEndTime)} 186 + return {'s': map.linePlayType == '1' ? map.startStationFirstTime : getMinDate(map.startStationFirstTime,map.endStationFirstTime),
  187 + 'e': map.linePlayType == '1' ? map.startStationEndTime : getMaxDate(map.startStationEndTime,map.endStationEndTime)}
176 } 188 }
177 189
178 /** 190 /**
@@ -259,7 +271,6 @@ @@ -259,7 +271,6 @@
259 year = newDate.getFullYear(); 271 year = newDate.getFullYear();
260 var jssj = BaseFun.getEndDate(year + '-' + month + '-' + dt + ' ' + '00:00'); 272 var jssj = BaseFun.getEndDate(year + '-' + month + '-' + dt + ' ' + '00:00');
261 return {'kssj' : kssj, 'jssj' : jssj}; 273 return {'kssj' : kssj, 'jssj' : jssj};
262 -  
263 } 274 }
264 275
265 /** 276 /**
@@ -272,9 +283,11 @@ @@ -272,9 +283,11 @@
272 function getsj(map) { 283 function getsj(map) {
273 var sxsj = parseInt(map.upTravelTime);// 上行时间. 284 var sxsj = parseInt(map.upTravelTime);// 上行时间.
274 var xxsj = parseInt(map.downTravelTime);// 下行时间. 285 var xxsj = parseInt(map.downTravelTime);// 下行时间.
275 - return [{'sxtzjx':parseInt(map.upStopTime), // 上行停站间隙.  
276 - 'xxtzjx':parseInt(map.downStopTime), // 下行停站间隙.  
277 - 'fcjx':parseInt(map.stopSpace),// 发车间隙. 286 + return [{'gfsxtzjx':parseInt(map.gfupStopTime), // 高峰上行停站间隙.
  287 + 'gfxxtzjx':parseInt(map.gfdownStopTime), // 高峰下行停站间隙.
  288 + 'dgsxtzjx':parseInt(map.dgupStopTime), // 低谷上行停站间隙.
  289 + 'dgxxtzjx':parseInt(map.dgdownStopTime),// 低谷下行停站间隙.
  290 + 'fcjx':map.fcjx,// 发车间隙.
278 'sxsj':sxsj,// 上行时间. 291 'sxsj':sxsj,// 上行时间.
279 'xxsj':xxsj,// 下行时间. 292 'xxsj':xxsj,// 下行时间.
280 'zzsj':map.zzsj,// 周转时间. 293 'zzsj':map.zzsj,// 周转时间.
src/main/resources/static/pages/base/timesmodel/js/tagsinput.js
@@ -28,7 +28,7 @@ var ComponentsBootstrapTagsinput = function() { @@ -28,7 +28,7 @@ var ComponentsBootstrapTagsinput = function() {
28 28
29 $('#state_tagsinput').on('beforeItemAdd', function(event) { 29 $('#state_tagsinput').on('beforeItemAdd', function(event) {
30 var bctypeValue = $('#state_tagsinput_bctype').val(); 30 var bctypeValue = $('#state_tagsinput_bctype').val();
31 - var rcnum = $('#state_tagsinput_value').val(); 31 + var rcnum = $('#state_tagsinput_rcsvalue').val();
32 var bxrcAr = $('#state_tagsinput').val().split(','); 32 var bxrcAr = $('#state_tagsinput').val().split(',');
33 for(var s = 0 ; s< bxrcAr.length;s++) { 33 for(var s = 0 ; s< bxrcAr.length;s++) {
34 var s1a = bxrcAr[s].split('/'); 34 var s1a = bxrcAr[s].split('/');
@@ -40,28 +40,38 @@ var ComponentsBootstrapTagsinput = function() { @@ -40,28 +40,38 @@ var ComponentsBootstrapTagsinput = function() {
40 40
41 $('#state_tagsinput_add').on('click', function(){ 41 $('#state_tagsinput_add').on('click', function(){
42 var bctypeValue = $('#state_tagsinput_bctype').val(); 42 var bctypeValue = $('#state_tagsinput_bctype').val();
43 - var rcnum = $('#state_tagsinput_value').val();  
44 - if(isNull(bctypeValue,rcnum)) { 43 + var rcnum = $('#state_tagsinput_rcsvalue').val();
  44 + var clnum = $('#state_tagsinput_clsvalue').val();
  45 + if(isNull(bctypeValue,rcnum,clnum)) {
  46 + if(!Number.isInteger(parseInt(rcnum)/parseInt(clnum))) {
  47 + layer.msg('当前算法只支持【单/双挡】!请您重新输入!');
  48 + $('#state_tagsinput_bctype').val(null);
  49 + $('#state_tagsinput_rcsvalue').val(null);
  50 + $('#state_tagsinput_clsvalue').val(null);
  51 + return false;
  52 + }
45 var bxrcAr = $('#state_tagsinput').val().split(','); 53 var bxrcAr = $('#state_tagsinput').val().split(',');
46 for(var s = 0 ; s< bxrcAr.length;s++) { 54 for(var s = 0 ; s< bxrcAr.length;s++) {
47 var s1a = bxrcAr[s].split('/'); 55 var s1a = bxrcAr[s].split('/');
48 if(s1a[0]==bctypeValue) { 56 if(s1a[0]==bctypeValue) {
49 rcnum = parseInt(rcnum) + parseInt(s1a[1]); 57 rcnum = parseInt(rcnum) + parseInt(s1a[1]);
  58 + clnum = parseInt(clnum) + parseInt(s1a[2]);
50 } 59 }
51 } 60 }
52 elt.tagsinput('add', { 61 elt.tagsinput('add', {
53 - "value": bctypeValue + '/' + rcnum,  
54 - "text": bctypeValue + '/' + rcnum, 62 + "value": bctypeValue + '/' + rcnum + '/' + clnum,
  63 + "text": bctypeValue + '/' + rcnum + '/' + clnum,
55 "continent": bctypeValue, 64 "continent": bctypeValue,
56 }); 65 });
57 $('#state_tagsinput_bctype').val(null); 66 $('#state_tagsinput_bctype').val(null);
58 - $('#state_tagsinput_value').val(null); 67 + $('#state_tagsinput_rcsvalue').val(null);
  68 + $('#state_tagsinput_clsvalue').val(null);
59 } 69 }
60 }); 70 });
61 71
62 - var isNull = function(v1,v2) { 72 + var isNull = function(v1,v2,v3) {
63 var tag = true; 73 var tag = true;
64 - if(v1==''|| v2=='') 74 + if(v1==''|| v2=='' || v3=='')
65 tag = false; 75 tag = false;
66 return tag; 76 return tag;
67 } 77 }
src/main/resources/static/pages/base/timesmodel/tepms/bctype_temp.html
1 <script type="text/html" id = "bctype_temp"> 1 <script type="text/html" id = "bctype_temp">
  2 +
2 <!-- 表单分组组件 form-group START --> 3 <!-- 表单分组组件 form-group START -->
3 <div class="form-group"> 4 <div class="form-group">
4 - <!-- 线路规划类型 (* 必填项) START -->  
5 - <div class="col-md-4">  
6 - <label class="control-label col-md-5">  
7 - <span class="required"> * </span> 线路规划类型&nbsp;&nbsp;&nbsp;:  
8 - </label>  
9 - <div class="col-md-5">  
10 - <select name="linePlayType" class="form-control" id="linePlayTypeSelect">  
11 - <option value="">-- 请选择线路类型 --</option>  
12 - <option value="0">双向</option>  
13 - <option value="1">环线</option>  
14 - </select>  
15 - </div>  
16 - </div>  
17 - <!-- 线路规划类型 (* 必填项) END -->  
18 -  
19 <!-- 起始站首班时间 (* 必填项) START --> 5 <!-- 起始站首班时间 (* 必填项) START -->
20 - <div class="col-md-4"> 6 + <div class="col-md-6">
21 <label class="control-label col-md-5"> 7 <label class="control-label col-md-5">
22 - <span class="required"> * </span> 起始站首班时间: 8 + <span class="required"> * </span> 起始站首班时间 :
23 </label> 9 </label>
24 <div class="col-md-5"> 10 <div class="col-md-5">
25 <input type="text" class="form-control" name="startStationFirstTime" value="{{map.line.startStationFirstTime}}" id="qdzsbsjInput" 11 <input type="text" class="form-control" name="startStationFirstTime" value="{{map.line.startStationFirstTime}}" id="qdzsbsjInput"
@@ -29,9 +15,9 @@ @@ -29,9 +15,9 @@
29 <!-- 起始站首班时间 (* 必填项) END --> 15 <!-- 起始站首班时间 (* 必填项) END -->
30 16
31 <!-- 起始站末班时间 (* 必填项) START --> 17 <!-- 起始站末班时间 (* 必填项) START -->
32 - <div class="col-md-4"> 18 + <div class="col-md-6">
33 <label class="control-label col-md-5"> 19 <label class="control-label col-md-5">
34 - <span class="required"> * </span> 起始站末班时间: 20 + <span class="required"> * </span> 起始站末班时间 :
35 </label> 21 </label>
36 <div class="col-md-5"> 22 <div class="col-md-5">
37 <input type="text" class="form-control" name="startStationEndTime" value="{{map.line.startStationEndTime}}" id="qdzmbsjInput" 23 <input type="text" class="form-control" name="startStationEndTime" value="{{map.line.startStationEndTime}}" id="qdzmbsjInput"
@@ -45,9 +31,9 @@ @@ -45,9 +31,9 @@
45 <!-- 表单分组组件 form-group START --> 31 <!-- 表单分组组件 form-group START -->
46 <div class="form-group"> 32 <div class="form-group">
47 <!-- 终点站首班时间 (* 必填项) START --> 33 <!-- 终点站首班时间 (* 必填项) START -->
48 - <div class="col-md-4"> 34 + <div class="col-md-6">
49 <label class="control-label col-md-5"> 35 <label class="control-label col-md-5">
50 - <span class="required"> * </span> 终点站首班时间: 36 + <span class="required"> * </span> 终点站首班时间 :
51 </label> 37 </label>
52 <div class="col-md-5"> 38 <div class="col-md-5">
53 <input type="text" class="form-control" name="endStationFirstTime" value="{{map.line.endStationFirstTime}}" id="zdzsbsjInput" 39 <input type="text" class="form-control" name="endStationFirstTime" value="{{map.line.endStationFirstTime}}" id="zdzsbsjInput"
@@ -57,9 +43,9 @@ @@ -57,9 +43,9 @@
57 <!-- 终点站首班时间 (* 必填项) END --> 43 <!-- 终点站首班时间 (* 必填项) END -->
58 44
59 <!-- 终点站末班时间 (* 必填项) START --> 45 <!-- 终点站末班时间 (* 必填项) START -->
60 - <div class="col-md-4"> 46 + <div class="col-md-6">
61 <label class="control-label col-md-5"> 47 <label class="control-label col-md-5">
62 - <span class="required"> * </span> 终点站末班时间: 48 + <span class="required"> * </span> 终点站末班时间 :
63 </label> 49 </label>
64 <div class="col-md-5"> 50 <div class="col-md-5">
65 <input type="text" class="form-control" name="endStationEndTime" value="{{map.line.endStationEndTime}}" id="zdzmbsjInput" 51 <input type="text" class="form-control" name="endStationEndTime" value="{{map.line.endStationEndTime}}" id="zdzmbsjInput"
@@ -67,10 +53,15 @@ @@ -67,10 +53,15 @@
67 </div> 53 </div>
68 </div> 54 </div>
69 <!-- 终点站末班时间 (* 必填项) END --> 55 <!-- 终点站末班时间 (* 必填项) END -->
  56 +</div>
  57 +<!-- 表单分组组件 form-group END -->
  58 +
  59 +<!-- 表单分组组件 form-group START -->
  60 +<div class="form-group">
70 <!-- 早高峰开始时间 (* 必填项) START --> 61 <!-- 早高峰开始时间 (* 必填项) START -->
71 - <div class="col-md-4"> 62 + <div class="col-md-6">
72 <label class="control-label col-md-5"> 63 <label class="control-label col-md-5">
73 - <span class="required"> * </span> 早高峰开始时间: 64 + <span class="required"> * </span> 早高峰开始时间 :
74 </label> 65 </label>
75 <div class="col-md-5"> 66 <div class="col-md-5">
76 <input type="text" class="form-control" name="earlyStartTime" value="{{map.earlyStartTime}}" id="zgfkssjInput" 67 <input type="text" class="form-control" name="earlyStartTime" value="{{map.earlyStartTime}}" id="zgfkssjInput"
@@ -78,15 +69,11 @@ @@ -78,15 +69,11 @@
78 </div> 69 </div>
79 </div> 70 </div>
80 <!-- 早高峰开始时间 (* 必填项) END --> 71 <!-- 早高峰开始时间 (* 必填项) END -->
81 -</div>  
82 -<!-- 表单分组组件 form-group END -->  
83 72
84 -<!-- 表单分组组件 form-group START -->  
85 -<div class="form-group">  
86 <!-- 早高峰结束时间 (* 必填项) START --> 73 <!-- 早高峰结束时间 (* 必填项) START -->
87 - <div class="col-md-4"> 74 + <div class="col-md-6">
88 <label class="control-label col-md-5"> 75 <label class="control-label col-md-5">
89 - <span class="required"> * </span> 早高峰结束时间: 76 + <span class="required"> * </span> 早高峰结束时间 :
90 </label> 77 </label>
91 <div class="col-md-5"> 78 <div class="col-md-5">
92 <input type="text" class="form-control" name="earlyEndTime" value="{{map.earlyEndTime}}" id="zgfjssjInput" 79 <input type="text" class="form-control" name="earlyEndTime" value="{{map.earlyEndTime}}" id="zgfjssjInput"
@@ -94,11 +81,15 @@ @@ -94,11 +81,15 @@
94 </div> 81 </div>
95 </div> 82 </div>
96 <!-- 早高峰结束时间 (* 必填项) END --> 83 <!-- 早高峰结束时间 (* 必填项) END -->
  84 +</div>
  85 +<!-- 表单分组组件 form-group END -->
97 86
  87 +<!-- 表单分组组件 form-group START -->
  88 +<div class="form-group">
98 <!-- 晚高峰开始时间 (* 必填项) START --> 89 <!-- 晚高峰开始时间 (* 必填项) START -->
99 - <div class="col-md-4"> 90 + <div class="col-md-6">
100 <label class="control-label col-md-5"> 91 <label class="control-label col-md-5">
101 - <span class="required"> * </span> 晚高峰开始时间: 92 + <span class="required"> * </span> 晚高峰开始时间 :
102 </label> 93 </label>
103 <div class="col-md-5"> 94 <div class="col-md-5">
104 <input type="text" class="form-control" name="lateStartTime" value="{{map.lateStartTime}}" id="wgfkssjInput" 95 <input type="text" class="form-control" name="lateStartTime" value="{{map.lateStartTime}}" id="wgfkssjInput"
@@ -108,9 +99,9 @@ @@ -108,9 +99,9 @@
108 <!-- 晚高峰开始时间 (* 必填项) END --> 99 <!-- 晚高峰开始时间 (* 必填项) END -->
109 100
110 <!-- 晚高峰结束 (* 必填项) START --> 101 <!-- 晚高峰结束 (* 必填项) START -->
111 - <div class="col-md-4"> 102 + <div class="col-md-6">
112 <label class="control-label col-md-5"> 103 <label class="control-label col-md-5">
113 - <span class="required"> * </span> 晚高峰结束时间: 104 + <span class="required"> * </span> 晚高峰结束时间 :
114 </label> 105 </label>
115 <div class="col-md-5"> 106 <div class="col-md-5">
116 <input type="text" class="form-control" name="lateEndTime" value="{{map.lateEndTime}}" id="wgfjssjInput" 107 <input type="text" class="form-control" name="lateEndTime" value="{{map.lateEndTime}}" id="wgfjssjInput"
@@ -121,12 +112,13 @@ @@ -121,12 +112,13 @@
121 </div> 112 </div>
122 <!-- 表单分组组件 form-group END --> 113 <!-- 表单分组组件 form-group END -->
123 114
  115 +
124 <!-- 表单分组组件 form-group START --> 116 <!-- 表单分组组件 form-group START -->
125 <div class="form-group"> 117 <div class="form-group">
126 <!-- 上行行驶时间(* 必填项) START --> 118 <!-- 上行行驶时间(* 必填项) START -->
127 - <div class="col-md-4"> 119 + <div class="col-md-6">
128 <label class="control-label col-md-5"> 120 <label class="control-label col-md-5">
129 - <span class="required"> * </span> 上行行驶时间&nbsp;&nbsp;&nbsp;: 121 + <span class="required"> * </span> 上行行驶时间  :
130 </label> 122 </label>
131 <div class="col-md-5"> 123 <div class="col-md-5">
132 <input type="text" class="form-control" name="upTravelTime" value="{{map.upTravelTime}}" id="upTravelTimeInput" 124 <input type="text" class="form-control" name="upTravelTime" value="{{map.upTravelTime}}" id="upTravelTimeInput"
@@ -136,9 +128,9 @@ @@ -136,9 +128,9 @@
136 <!-- 上行行驶时间 (* 必填项) END --> 128 <!-- 上行行驶时间 (* 必填项) END -->
137 129
138 <!-- 下行行驶时间 (* 必填项) START --> 130 <!-- 下行行驶时间 (* 必填项) START -->
139 - <div class="col-md-4"> 131 + <div class="col-md-6">
140 <label class="control-label col-md-5"> 132 <label class="control-label col-md-5">
141 - <span class="required"> * </span> 下行行驶时间&nbsp;&nbsp;&nbsp;: 133 + <span class="required"> * </span> 下行行驶时间  :
142 </label> 134 </label>
143 <div class="col-md-5"> 135 <div class="col-md-5">
144 <input type="text" class="form-control" name="downTravelTime" value="{{map.downTravelTime}}" id="downTravelTimeInput" 136 <input type="text" class="form-control" name="downTravelTime" value="{{map.downTravelTime}}" id="downTravelTimeInput"
@@ -146,11 +138,15 @@ @@ -146,11 +138,15 @@
146 </div> 138 </div>
147 </div> 139 </div>
148 <!-- 下行行驶时间(* 必填项) END --> 140 <!-- 下行行驶时间(* 必填项) END -->
  141 +</div>
  142 +<!-- 表单分组组件 form-group END -->
149 143
  144 +<!-- 表单分组组件 form-group START -->
  145 +<div class="form-group">
150 <!-- 上行里程(* 必填项) START --> 146 <!-- 上行里程(* 必填项) START -->
151 - <div class="col-md-4"> 147 + <div class="col-md-6">
152 <label class="control-label col-md-5"> 148 <label class="control-label col-md-5">
153 - <span class="required"> * </span> 上行行驶里程&nbsp;&nbsp;&nbsp;: 149 + <span class="required"> * </span> 上行行驶里程  :
154 </label> 150 </label>
155 <div class="col-md-5"> 151 <div class="col-md-5">
156 <input type="text" class="form-control" name="upMileage" value="{{map.upMileage}}" id="upMileageInput" 152 <input type="text" class="form-control" name="upMileage" value="{{map.upMileage}}" id="upMileageInput"
@@ -158,15 +154,10 @@ @@ -158,15 +154,10 @@
158 </div> 154 </div>
159 </div> 155 </div>
160 <!-- 上行里程 (* 必填项) END --> 156 <!-- 上行里程 (* 必填项) END -->
161 -</div>  
162 -<!-- 表单分组组件 form-group END -->  
163 -  
164 -<!-- 表单分组组件 form-group START -->  
165 -<div class="form-group">  
166 <!-- 下行里程 (* 必填项) START --> 157 <!-- 下行里程 (* 必填项) START -->
167 - <div class="col-md-4"> 158 + <div class="col-md-6">
168 <label class="control-label col-md-5"> 159 <label class="control-label col-md-5">
169 - <span class="required"> * </span> 下行行驶里程&nbsp;&nbsp;&nbsp;: 160 + <span class="required"> * </span> 下行行驶里程  :
170 </label> 161 </label>
171 <div class="col-md-5"> 162 <div class="col-md-5">
172 <input type="text" class="form-control" name="downMileage" value="{{map.downMileage}}" id="downMileageInput" 163 <input type="text" class="form-control" name="downMileage" value="{{map.downMileage}}" id="downMileageInput"
@@ -174,62 +165,83 @@ @@ -174,62 +165,83 @@
174 </div> 165 </div>
175 </div> 166 </div>
176 <!-- 下行里程(* 必填项) END --> 167 <!-- 下行里程(* 必填项) END -->
  168 +</div>
  169 +<!-- 表单分组组件 form-group END -->
177 170
178 - <!-- 上行停站间隙 (* 必填项) START -->  
179 - <div class="col-md-4"> 171 +<!-- 表单分组组件 form-group START -->
  172 +<div class="form-group">
  173 + <!-- 高峰上行停站间隙 (* 必填项) START -->
  174 + <div class="col-md-6">
180 <label class="control-label col-md-5"> 175 <label class="control-label col-md-5">
181 - <span class="required"> * </span> 上行停站间隙&nbsp;&nbsp;&nbsp;: 176 + <span class="required"> * </span> 高峰上行停站间隙:
182 </label> 177 </label>
183 <div class="col-md-5"> 178 <div class="col-md-5">
184 - <input type="text" class="form-control" name="upStopTime" value="{{map.upStopTime}}" id="upStopTimeInput"  
185 - placeholder="请输入上行停站间隙"> 179 + <input type="text" class="form-control" name="gfupStopTime" id="gfupStopTimeInput"
  180 + placeholder="请输入高峰上行停站间隙">
186 </div> 181 </div>
187 </div> 182 </div>
188 <!-- 上行停站间隙 (* 必填项) END --> 183 <!-- 上行停站间隙 (* 必填项) END -->
189 184
190 - <!-- 下行停站间隙 (* 必填项) START -->  
191 - <div class="col-md-4"> 185 + <!-- 高峰下行停站间隙 (* 必填项) START -->
  186 + <div class="col-md-6">
192 <label class="control-label col-md-5"> 187 <label class="control-label col-md-5">
193 - <span class="required"> * </span> 下行停站间隙&nbsp;&nbsp;&nbsp;: 188 + <span class="required"> * </span> 高峰下行停站间隙:
194 </label> 189 </label>
195 <div class="col-md-5"> 190 <div class="col-md-5">
196 - <input type="text" class="form-control" name="downStopTime" value="{{map.downStopTime}}" id="downStopTimeInput"  
197 - placeholder="请输入下行停站间隙"> 191 + <input type="text" class="form-control" name="gfdownStopTime" id="gfdownStopTimeInput"
  192 + placeholder="请输入高峰下行停站间隙">
198 </div> 193 </div>
199 </div> 194 </div>
200 - <!-- 下行停站间隙 (* 必填项) END -->  
201 - 195 + <!-- 高峰下行停站间隙 (* 必填项) END -->
202 </div> 196 </div>
203 <!-- 表单分组组件 form-group END --> 197 <!-- 表单分组组件 form-group END -->
204 198
205 <!-- 表单分组组件 form-group START --> 199 <!-- 表单分组组件 form-group START -->
206 <div class="form-group"> 200 <div class="form-group">
207 - <!-- 最大停站间隙(* 必填项) START -->  
208 - <div class="col-md-4"> 201 + <!-- 低谷上行停站间隙(* 必填项) START -->
  202 + <div class="col-md-6">
209 <label class="control-label col-md-5"> 203 <label class="control-label col-md-5">
210 - <span class="required"> * </span> 最大停站间隙&nbsp;&nbsp;&nbsp;: 204 + <span class="required"> * </span> 低谷上行停站间隙:
211 </label> 205 </label>
212 <div class="col-md-5"> 206 <div class="col-md-5">
213 - <input type="text" class="form-control" name="maxstopTime" value="{{map.maxstopTime}}" id="maxstopTimeInput"  
214 - placeholder="请输入最大停站间隙"> 207 + <input type="text" class="form-control" name="dgupStopTime" id="dgupStopTimeInput" placeholder="请输入低谷上行停站间隙">
215 </div> 208 </div>
216 </div> 209 </div>
217 - <!-- 最大停站间隙 (* 必填项) END -->  
218 -  
219 - <!-- 最小停站间隙(* 必填项) START -->  
220 - <div class="col-md-4"> 210 + <!-- 低谷上行停站间隙(* 必填项) END -->
  211 +
  212 + <!-- 低谷下行停站间隙(* 必填项) START -->
  213 + <div class="col-md-6">
221 <label class="control-label col-md-5"> 214 <label class="control-label col-md-5">
222 - <span class="required"> * </span> 最小停站间隙&nbsp;&nbsp;&nbsp;: 215 + <span class="required"> * </span> 低谷下行停站间隙:
223 </label> 216 </label>
224 <div class="col-md-5"> 217 <div class="col-md-5">
225 - <input type="text" class="form-control" name="mixstopTime" value="{{map.mixstopTime}}" id="mixstopTimeInput" placeholder="最小停站间隙"> 218 + <input type="text" class="form-control" name="dgdownStopTime" id="dgdownStopTimeInput"
  219 + placeholder="请输入低谷下行停站间隙">
226 </div> 220 </div>
227 </div> 221 </div>
228 - <!-- 最小停站间隙(* 必填项) END --> 222 + <!-- 低谷停站间隙 (* 必填项) END -->
  223 +</div>
  224 +<!-- 表单分组组件 form-group END -->
229 225
  226 +<!-- 表单分组组件 form-group START -->
  227 +<div class="form-group">
  228 + <!-- 线路规划类型 (* 必填项) START -->
  229 + <div class="col-md-6">
  230 + <label class="control-label col-md-5">
  231 + <span class="required"> * </span> 线路规划类型  :
  232 + </label>
  233 + <div class="col-md-5">
  234 + <select name="linePlayType" class="form-control" id="linePlayTypeSelect">
  235 + <option value="">-- 请选择线路类型 --</option>
  236 + <option value="0">双向</option>
  237 + <option value="1">环线</option>
  238 + </select>
  239 + </div>
  240 + </div>
  241 + <!-- 线路规划类型 (* 必填项) END -->
230 <!-- 停车场(* 必填项) START --> 242 <!-- 停车场(* 必填项) START -->
231 - <div class="col-md-4">  
232 - <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 243 + <div class="col-md-6">
  244 + <label class="control-label col-md-5">停车场     :</label>
233 <div class="col-md-5"> 245 <div class="col-md-5">
234 <select name="carPark" class="form-control" id="carParkSelect" style="width:100%"></select> 246 <select name="carPark" class="form-control" id="carParkSelect" style="width:100%"></select>
235 </div> 247 </div>
@@ -240,9 +252,36 @@ @@ -240,9 +252,36 @@
240 252
241 <!-- 表单分组组件 form-group START --> 253 <!-- 表单分组组件 form-group START -->
242 <div class="form-group"> 254 <div class="form-group">
  255 + <!-- 终点站车容量 START -->
  256 + <div class="col-md-6">
  257 + <label class="control-label col-md-5">终点站车容量  :</label>
  258 + <div class="col-md-5">
  259 + <input type="text" class="form-control" name="zdzcrl" id="zdzcrlInput"
  260 + placeholder="请输入终点站车容量">
  261 + </div>
  262 + </div>
  263 + <!-- 终点站车容量 END -->
  264 + <!-- 吃饭地点 START -->
  265 + <div class="col-md-6">
  266 + <label class="control-label col-md-5">吃饭地点    :</label>
  267 + <div class="col-md-5">
  268 + <select type="text" class="form-control" name="cfdd" id="cfddSelect">
  269 + <option value="">请选择...</option>
  270 + <option value="{{map.line.startStationName}}">{{map.line.startStationName}}</option>
  271 + <option value="{{map.line.endStationName}}">{{map.line.endStationName}}</option>
  272 + <option value="allYes">起终点站都可以</option>
  273 + </select>
  274 + </div>
  275 + </div>
  276 + <!-- 空放行驶时间 END -->
  277 +</div>
  278 +<!-- 表单分组组件 form-group END -->
  279 +
  280 +<!-- 表单分组组件 form-group START -->
  281 +<div class="form-group">
243 <!-- 早高峰上行时间(* 必填项) START --> 282 <!-- 早高峰上行时间(* 必填项) START -->
244 - <div class="col-md-4">  
245 - <label class="control-label col-md-5">早高峰上行时间:</label> 283 + <div class="col-md-6">
  284 + <label class="control-label col-md-5">早高峰上行时间 :</label>
246 <div class="col-md-5"> 285 <div class="col-md-5">
247 <input type="text" class="form-control" name="earlyUpTime" value="{{map.earlyUpTime}}" id="earlyUpTimeInput" 286 <input type="text" class="form-control" name="earlyUpTime" value="{{map.earlyUpTime}}" id="earlyUpTimeInput"
248 placeholder="请输入早高峰上行时间"> 287 placeholder="请输入早高峰上行时间">
@@ -251,42 +290,45 @@ @@ -251,42 +290,45 @@
251 <!-- 早高峰上行时间(* 必填项) END --> 290 <!-- 早高峰上行时间(* 必填项) END -->
252 291
253 <!-- 早高峰下行时间(* 必填项) START --> 292 <!-- 早高峰下行时间(* 必填项) START -->
254 - <div class="col-md-4">  
255 - <label class="control-label col-md-5">早高峰下行时间:</label> 293 + <div class="col-md-6">
  294 + <label class="control-label col-md-5">早高峰下行时间 :</label>
256 <div class="col-md-5"> 295 <div class="col-md-5">
257 <input type="text" class="form-control" name="earlyDownTime" value="{{map.earlyDownTime}}" id="earlyDownTimeInput" 296 <input type="text" class="form-control" name="earlyDownTime" value="{{map.earlyDownTime}}" id="earlyDownTimeInput"
258 placeholder="请输入早高峰下行时间"> 297 placeholder="请输入早高峰下行时间">
259 </div> 298 </div>
260 </div> 299 </div>
261 <!-- 早高峰下行时间(* 必填项) END --> 300 <!-- 早高峰下行时间(* 必填项) END -->
  301 +</div>
  302 +<!-- 表单分组组件 form-group END -->
262 303
  304 +<!-- 表单分组组件 form-group START -->
  305 +<div class="form-group">
263 <!-- 晚高峰上行时间 (* 必填项) START --> 306 <!-- 晚高峰上行时间 (* 必填项) START -->
264 - <div class="col-md-4">  
265 - <label class="control-label col-md-5">晚高峰上行时间:</label> 307 + <div class="col-md-6">
  308 + <label class="control-label col-md-5">晚高峰上行时间 :</label>
266 <div class="col-md-5"> 309 <div class="col-md-5">
267 <input type="text" class="form-control" name="lateUpTime" value="{{map.lateUpTime}}" id="lateUpTimeInput" 310 <input type="text" class="form-control" name="lateUpTime" value="{{map.lateUpTime}}" id="lateUpTimeInput"
268 placeholder="请输入晚高峰上行时间"> 311 placeholder="请输入晚高峰上行时间">
269 </div> 312 </div>
270 </div> 313 </div>
271 <!-- 晚高峰上行时间(* 必填项) END --> 314 <!-- 晚高峰上行时间(* 必填项) END -->
272 -</div>  
273 -<!-- 表单分组组件 form-group END -->  
274 -  
275 -<!-- 表单分组组件 form-group START -->  
276 -<div class="form-group">  
277 <!-- 晚高峰下行时间 (* 必填项) START --> 315 <!-- 晚高峰下行时间 (* 必填项) START -->
278 - <div class="col-md-4">  
279 - <label class="control-label col-md-5">晚高峰下行时间:</label> 316 + <div class="col-md-6">
  317 + <label class="control-label col-md-5">晚高峰下行时间 :</label>
280 <div class="col-md-5"> 318 <div class="col-md-5">
281 <input type="text" class="form-control" name="lateDownTime" value="{{map.lateDownTime}}" id="lateDownTimeInput" 319 <input type="text" class="form-control" name="lateDownTime" value="{{map.lateDownTime}}" id="lateDownTimeInput"
282 placeholder="请输入晚高峰下行时间"> 320 placeholder="请输入晚高峰下行时间">
283 </div> 321 </div>
284 </div> 322 </div>
285 <!-- 晚高峰下行时间(* 必填项) END --> 323 <!-- 晚高峰下行时间(* 必填项) END -->
  324 +</div>
  325 +<!-- 表单分组组件 form-group END -->
286 326
  327 +<!-- 表单分组组件 form-group START -->
  328 +<div class="form-group">
287 <!-- 低谷上行时间 START --> 329 <!-- 低谷上行时间 START -->
288 - <div class="col-md-4">  
289 - <label class="control-label col-md-5">低谷上行时间&nbsp;&nbsp;&nbsp;:</label> 330 + <div class="col-md-6">
  331 + <label class="control-label col-md-5">低谷上行时间  :</label>
290 <div class="col-md-5"> 332 <div class="col-md-5">
291 <input type="text" class="form-control" name="troughUpTime" value="{{map.troughUpTime}}" id="troughUpTimeInput" 333 <input type="text" class="form-control" name="troughUpTime" value="{{map.troughUpTime}}" id="troughUpTimeInput"
292 placeholder="请输入低谷上行时间"> 334 placeholder="请输入低谷上行时间">
@@ -295,8 +337,8 @@ @@ -295,8 +337,8 @@
295 <!-- 低谷上行时间 END --> 337 <!-- 低谷上行时间 END -->
296 338
297 <!-- 低谷下行时间 START --> 339 <!-- 低谷下行时间 START -->
298 - <div class="col-md-4">  
299 - <label class="control-label col-md-5">低谷下行时间&nbsp;&nbsp;&nbsp;:</label> 340 + <div class="col-md-6">
  341 + <label class="control-label col-md-5">低谷下行时间  :</label>
300 <div class="col-md-5"> 342 <div class="col-md-5">
301 <input type="text" class="form-control" name="troughDownTime" value="{{map.troughDownTime}}" id="troughDownTimeInput" 343 <input type="text" class="form-control" name="troughDownTime" value="{{map.troughDownTime}}" id="troughDownTimeInput"
302 placeholder="请输入低谷下行时间"> 344 placeholder="请输入低谷下行时间">
@@ -309,8 +351,8 @@ @@ -309,8 +351,8 @@
309 <!-- 表单分组组件 form-group START --> 351 <!-- 表单分组组件 form-group START -->
310 <div class="form-group"> 352 <div class="form-group">
311 <!-- 区间上行时间 START --> 353 <!-- 区间上行时间 START -->
312 - <div class="col-md-4">  
313 - <label class="control-label col-md-5">区间上行时间&nbsp;&nbsp;&nbsp;:</label> 354 + <div class="col-md-6">
  355 + <label class="control-label col-md-5">区间上行时间  :</label>
314 <div class="col-md-5"> 356 <div class="col-md-5">
315 <input type="text" class="form-control" name="qjUpTime" id="qjUpTimeInput" 357 <input type="text" class="form-control" name="qjUpTime" id="qjUpTimeInput"
316 placeholder="请输入区间上行时间"> 358 placeholder="请输入区间上行时间">
@@ -319,18 +361,31 @@ @@ -319,18 +361,31 @@
319 <!-- 区间上行时间 END --> 361 <!-- 区间上行时间 END -->
320 362
321 <!-- 区间下行时间 START --> 363 <!-- 区间下行时间 START -->
322 - <div class="col-md-4">  
323 - <label class="control-label col-md-5">区间下行时间&nbsp;&nbsp;&nbsp;:</label> 364 + <div class="col-md-6">
  365 + <label class="control-label col-md-5">区间下行时间  :</label>
324 <div class="col-md-5"> 366 <div class="col-md-5">
325 <input type="text" class="form-control" name="qjDownTime" id="qjDownTimeInput" 367 <input type="text" class="form-control" name="qjDownTime" id="qjDownTimeInput"
326 placeholder="请输入区间下行时间"> 368 placeholder="请输入区间下行时间">
327 </div> 369 </div>
328 </div> 370 </div>
329 <!-- 区间下行时间 END --> 371 <!-- 区间下行时间 END -->
  372 +</div>
  373 +<!-- 表单分组组件 form-group END -->
330 374
  375 +<!-- 表单分组组件 form-group START -->
  376 +<div class="form-group">
  377 + <!-- 早晚例行保养 START -->
  378 + <div class="col-md-6">
  379 + <label class="control-label col-md-5">早晚例行保养  :</label>
  380 + <div class="col-md-5">
  381 + <input type="text" class="form-control" name="lb" value="{{map.lb}}" id="lbInput"
  382 + placeholder="请输入早晚例行保养">
  383 + </div>
  384 + </div>
  385 + <!-- 早晚例行保养 END -->
331 <!-- 空放行驶时间 START --> 386 <!-- 空放行驶时间 START -->
332 - <div class="col-md-4">  
333 - <label class="control-label col-md-5">空放行驶时间&nbsp;&nbsp;&nbsp;:</label> 387 + <div class="col-md-6">
  388 + <label class="control-label col-md-5">空放行驶时间  :</label>
334 <div class="col-md-5"> 389 <div class="col-md-5">
335 <input type="text" class="form-control" name="kfsj" id="kfsjInput" 390 <input type="text" class="form-control" name="kfsj" id="kfsjInput"
336 placeholder="请输入空放行驶时间"> 391 placeholder="请输入空放行驶时间">
@@ -343,8 +398,8 @@ @@ -343,8 +398,8 @@
343 <!-- 表单分组组件 form-group START --> 398 <!-- 表单分组组件 form-group START -->
344 <div class="form-group"> 399 <div class="form-group">
345 <!-- 工作餐午餐时间 START --> 400 <!-- 工作餐午餐时间 START -->
346 - <div class="col-md-4">  
347 - <label class="control-label col-md-5">工作餐午餐时间:</label> 401 + <div class="col-md-6">
  402 + <label class="control-label col-md-5">工作餐午餐时间 :</label>
348 <div class="col-md-5"> 403 <div class="col-md-5">
349 <input type="text" class="form-control" name="workeLunch" value="{{map.workeLunch}}" id="workeLunchInput" 404 <input type="text" class="form-control" name="workeLunch" value="{{map.workeLunch}}" id="workeLunchInput"
350 placeholder="请输入工作餐午餐时间"> 405 placeholder="请输入工作餐午餐时间">
@@ -353,42 +408,46 @@ @@ -353,42 +408,46 @@
353 <!-- 工作餐午餐时间 END --> 408 <!-- 工作餐午餐时间 END -->
354 409
355 <!-- 工作餐晚餐时间 START --> 410 <!-- 工作餐晚餐时间 START -->
356 - <div class="col-md-4">  
357 - <label class="control-label col-md-5">工作餐晚餐时间:</label> 411 + <div class="col-md-6">
  412 + <label class="control-label col-md-5">工作餐晚餐时间 :</label>
358 <div class="col-md-5"> 413 <div class="col-md-5">
359 <input type="text" class="form-control" name="workeDinner" value="{{map.workeDinner}}" id="workeDinnerInput" 414 <input type="text" class="form-control" name="workeDinner" value="{{map.workeDinner}}" id="workeDinnerInput"
360 placeholder="请输入工作餐晚餐时间"> 415 placeholder="请输入工作餐晚餐时间">
361 </div> 416 </div>
362 </div> 417 </div>
363 <!-- 工作餐晚餐时间 END --> 418 <!-- 工作餐晚餐时间 END -->
  419 +</div>
  420 +<!-- 表单分组组件 form-group END -->
364 421
  422 +<!-- 表单分组组件 form-group START -->
  423 +<div class="form-group">
365 <!-- 上行进场时间 START --> 424 <!-- 上行进场时间 START -->
366 - <div class="col-md-4">  
367 - <label class="control-label col-md-5">上行进场时间&nbsp;&nbsp;&nbsp;:</label> 425 + <div class="col-md-6">
  426 + <label class="control-label col-md-5">上行进场时间  :</label>
368 <div class="col-md-5"> 427 <div class="col-md-5">
369 <input type="text" class="form-control" name="upInTimer" value="{{map.upInTimer}}" id="upInTimerInput" 428 <input type="text" class="form-control" name="upInTimer" value="{{map.upInTimer}}" id="upInTimerInput"
370 placeholder="请输入上行进场时间"> 429 placeholder="请输入上行进场时间">
371 </div> 430 </div>
372 </div> 431 </div>
373 <!-- 上行进场时间 END --> 432 <!-- 上行进场时间 END -->
374 -</div>  
375 -<!-- 表单分组组件 form-group END -->  
376 -  
377 -<!-- 表单分组组件 form-group START -->  
378 -<div class="form-group">  
379 <!-- 上行出场时间 START --> 433 <!-- 上行出场时间 START -->
380 - <div class="col-md-4">  
381 - <label class="control-label col-md-5">上行出场时间&nbsp;&nbsp;&nbsp;:</label> 434 + <div class="col-md-6">
  435 + <label class="control-label col-md-5">上行出场时间  :</label>
382 <div class="col-md-5"> 436 <div class="col-md-5">
383 <input type="text" class="form-control" name="upOutTimer" value="{{map.upOutTimer}}" id="upOutTimerInput" 437 <input type="text" class="form-control" name="upOutTimer" value="{{map.upOutTimer}}" id="upOutTimerInput"
384 placeholder="请输入上行出场时间"> 438 placeholder="请输入上行出场时间">
385 </div> 439 </div>
386 </div> 440 </div>
387 <!-- 上行出场时间 END --> 441 <!-- 上行出场时间 END -->
  442 +</div>
  443 +<!-- 表单分组组件 form-group END -->
  444 +
388 445
  446 +<!-- 表单分组组件 form-group START -->
  447 +<div class="form-group">
389 <!-- 下行进场时间 START --> 448 <!-- 下行进场时间 START -->
390 - <div class="col-md-4">  
391 - <label class="control-label col-md-5">下行进场时间&nbsp;&nbsp;&nbsp;:</label> 449 + <div class="col-md-6">
  450 + <label class="control-label col-md-5">下行进场时间  :</label>
392 <div class="col-md-5"> 451 <div class="col-md-5">
393 <input type="text" class="form-control" name="downInTimer" value="{{map.downInTimer}}" id="downInTimerInput" 452 <input type="text" class="form-control" name="downInTimer" value="{{map.downInTimer}}" id="downInTimerInput"
394 placeholder="请输入下行进场时间"> 453 placeholder="请输入下行进场时间">
@@ -397,8 +456,8 @@ @@ -397,8 +456,8 @@
397 <!-- 下行进场时间 END --> 456 <!-- 下行进场时间 END -->
398 457
399 <!-- 下行出场时间 START --> 458 <!-- 下行出场时间 START -->
400 - <div class="col-md-4">  
401 - <label class="control-label col-md-5">下行出场时间&nbsp;&nbsp;&nbsp;:</label> 459 + <div class="col-md-6">
  460 + <label class="control-label col-md-5">下行出场时间  :</label>
402 <div class="col-md-5"> 461 <div class="col-md-5">
403 <input type="text" class="form-control" name="downOutTimer" value="{{map.downOutTimer}}" id="downOutTimerInput" 462 <input type="text" class="form-control" name="downOutTimer" value="{{map.downOutTimer}}" id="downOutTimerInput"
404 placeholder="请输入下行出场时间"> 463 placeholder="请输入下行出场时间">
@@ -408,11 +467,12 @@ @@ -408,11 +467,12 @@
408 </div> 467 </div>
409 <!-- 表单分组组件 form-group END --> 468 <!-- 表单分组组件 form-group END -->
410 469
  470 +
411 <!-- 表单分组组件 form-group START --> 471 <!-- 表单分组组件 form-group START -->
412 <div class="form-group"> 472 <div class="form-group">
413 <!-- 上行进场里程 START --> 473 <!-- 上行进场里程 START -->
414 - <div class="col-md-4">  
415 - <label class="control-label col-md-5">上行进场里程&nbsp;&nbsp;&nbsp;:</label> 474 + <div class="col-md-6">
  475 + <label class="control-label col-md-5">上行进场里程  :</label>
416 <div class="col-md-5"> 476 <div class="col-md-5">
417 <input type="text" class="form-control" name="upInMileage" value="{{map.upInMileage}}" id="upInlcInput" 477 <input type="text" class="form-control" name="upInMileage" value="{{map.upInMileage}}" id="upInlcInput"
418 placeholder="请输入上行进场里程"> 478 placeholder="请输入上行进场里程">
@@ -421,71 +481,51 @@ @@ -421,71 +481,51 @@
421 <!-- 上行进场里程 END --> 481 <!-- 上行进场里程 END -->
422 482
423 <!-- 上行出场里程 START --> 483 <!-- 上行出场里程 START -->
424 - <div class="col-md-4">  
425 - <label class="control-label col-md-5">上行出场里程&nbsp;&nbsp;&nbsp;:</label> 484 + <div class="col-md-6">
  485 + <label class="control-label col-md-5">上行出场里程  :</label>
426 <div class="col-md-5"> 486 <div class="col-md-5">
427 <input type="text" class="form-control" name="upOutMileage" value="{{map.upOutMileage}}" id="upOutlcInput" 487 <input type="text" class="form-control" name="upOutMileage" value="{{map.upOutMileage}}" id="upOutlcInput"
428 placeholder="请输入上行出场里程"> 488 placeholder="请输入上行出场里程">
429 </div> 489 </div>
430 </div> 490 </div>
431 <!-- 上行出场里程 END --> 491 <!-- 上行出场里程 END -->
  492 +</div>
  493 +<!-- 表单分组组件 form-group END -->
432 494
  495 +<!-- 表单分组组件 form-group START -->
  496 +<div class="form-group">
433 <!-- 下行进场里程 START --> 497 <!-- 下行进场里程 START -->
434 - <div class="col-md-4">  
435 - <label class="control-label col-md-5">下行进场里程&nbsp;&nbsp;&nbsp;:</label> 498 + <div class="col-md-6">
  499 + <label class="control-label col-md-5">下行进场里程  :</label>
436 <div class="col-md-5"> 500 <div class="col-md-5">
437 <input type="text" class="form-control" name="downInMileage" value="{{map.downInMileage}}" id="downInlcInput" 501 <input type="text" class="form-control" name="downInMileage" value="{{map.downInMileage}}" id="downInlcInput"
438 placeholder="请输入下行进场里程"> 502 placeholder="请输入下行进场里程">
439 </div> 503 </div>
440 </div> 504 </div>
441 <!-- 下行进场里程 END --> 505 <!-- 下行进场里程 END -->
442 -</div>  
443 -<!-- 表单分组组件 form-group END -->  
444 -  
445 -<!-- 表单分组组件 form-group START -->  
446 -<div class="form-group"> 506 +
447 <!-- 下行出场里程 START --> 507 <!-- 下行出场里程 START -->
448 - <div class="col-md-4">  
449 - <label class="control-label col-md-5">下行出场里程&nbsp;&nbsp;&nbsp;:</label> 508 + <div class="col-md-6">
  509 + <label class="control-label col-md-5">下行出场里程  :</label>
450 <div class="col-md-5"> 510 <div class="col-md-5">
451 <input type="text" class="form-control" name="downOutMileage" value="{{map.downOutMileage}}" id="downOutlcInput" 511 <input type="text" class="form-control" name="downOutMileage" value="{{map.downOutMileage}}" id="downOutlcInput"
452 placeholder="请输入下行出场里程"> 512 placeholder="请输入下行出场里程">
453 </div> 513 </div>
454 </div> 514 </div>
455 <!-- 下行出场里程 END --> 515 <!-- 下行出场里程 END -->
456 - <!-- 早晚例行保养 START -->  
457 - <div class="col-md-4">  
458 - <label class="control-label col-md-5">早晚例行保养&nbsp;&nbsp;&nbsp;:</label>  
459 - <div class="col-md-5">  
460 - <input type="text" class="form-control" name="lb" value="{{map.lb}}" id="lbInput"  
461 - placeholder="请输入早晚例行保养">  
462 - </div>  
463 - </div>  
464 - <!-- 早晚例行保养 END -->  
465 - <!-- 车辆总数 (* 必填项) START -->  
466 - <div class="col-md-4">  
467 - <label class="control-label col-md-5">  
468 - <span class="required"> * </span>  
469 - 车辆总数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>  
470 - <div class="col-md-5">  
471 - <input type="text" class="form-control" name="clzs" id="clzsInput"  
472 - placeholder="请输入车辆总数">  
473 - </div>  
474 - </div>  
475 - <!-- 车辆总数(* 必填项) END -->  
476 </div> 516 </div>
477 <!-- 表单分组组件 form-group END --> 517 <!-- 表单分组组件 form-group END -->
478 - 518 +
479 519
480 <!-- 表单分组组件 form-group START --> 520 <!-- 表单分组组件 form-group START -->
481 <div class="form-group"> 521 <div class="form-group">
482 <!-- 班型与人次 (* 必填项) START --> 522 <!-- 班型与人次 (* 必填项) START -->
483 - <div class="col-md-8 ">  
484 - <label class="control-label col-md-2"><span class="required"> * </span>班型与人次</label>  
485 - <div class="col-md-9 tagsDiv"> 523 + <div class="col-md-6 ">
  524 + <label class="control-label col-md-5"><span class="required"> * </span>班型/人次/车辆 :</label>
  525 + <div class="col-md-5 tagsDiv">
486 <input type="text" value="" name="bxrc" id="state_tagsinput" style="display: none;"> 526 <input type="text" value="" name="bxrc" id="state_tagsinput" style="display: none;">
487 <div class="margin-top-10"> 527 <div class="margin-top-10">
488 - <select class="form-control input-large" id="state_tagsinput_bctype"> 528 + <select class="form-control" id="state_tagsinput_bctype">
489 <option value="">请选择工休类型...</option> 529 <option value="">请选择工休类型...</option>
490 <option value="六工一休">六工一休</option> 530 <option value="六工一休">六工一休</option>
491 <option value="五工一休">五工一休</option> 531 <option value="五工一休">五工一休</option>
@@ -498,7 +538,10 @@ @@ -498,7 +538,10 @@
498 </select> 538 </select>
499 </div> 539 </div>
500 <div class="margin-top-10"> 540 <div class="margin-top-10">
501 - <input type="number" class="form-control input-large" placeholder="请输入分配人次数" id="state_tagsinput_value"> 541 + <input type="number" class="form-control" placeholder="请输入分配人次数" id="state_tagsinput_rcsvalue">
  542 + </div>
  543 + <div class="margin-top-10">
  544 + <input type="number" class="form-control" placeholder="请输入分配车辆数" id="state_tagsinput_clsvalue">
502 </div> 545 </div>
503 <div class="margin-top-10"> 546 <div class="margin-top-10">
504 <a href="javascript:;" class="btn red" id="state_tagsinput_add">添加</a> 547 <a href="javascript:;" class="btn red" id="state_tagsinput_add">添加</a>
@@ -506,6 +549,17 @@ @@ -506,6 +549,17 @@
506 </div> 549 </div>
507 </div> 550 </div>
508 <!-- 班型与人次 (* 必填项) END --> 551 <!-- 班型与人次 (* 必填项) END -->
  552 + <!-- 车辆总数 (* 必填项) START -->
  553 + <div class="col-md-6">
  554 + <label class="control-label col-md-5">
  555 + <span class="required"> * </span>
  556 + 车辆总数    :</label>
  557 + <div class="col-md-5">
  558 + <input type="text" class="form-control" name="clzs" id="clzsInput"
  559 + placeholder="请输入车辆总数">
  560 + </div>
  561 + </div>
  562 + <!-- 车辆总数(* 必填项) END -->
509 </div> 563 </div>
510 <!-- 表单分组组件 form-group END --> 564 <!-- 表单分组组件 form-group END -->
511 </script> 565 </script>
@@ -513,14 +567,14 @@ @@ -513,14 +567,14 @@
513 <script type="text/html" id="bctype_tempconfig"> 567 <script type="text/html" id="bctype_tempconfig">
514 <h4 class="form-section"> 时刻表与线路名称 </h4> 568 <h4 class="form-section"> 时刻表与线路名称 </h4>
515 <div class="form-group"> 569 <div class="form-group">
516 - <div class="col-md-4">  
517 - <label class="control-label col-md-5"> 时刻表名称&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: </label> 570 + <div class="col-md-6">
  571 + <label class="control-label col-md-5"> 时刻表名称   : </label>
518 <div class="col-md-7"> 572 <div class="col-md-7">
519 <p class="form-control-static" data-display="skbName"> </p> 573 <p class="form-control-static" data-display="skbName"> </p>
520 </div> 574 </div>
521 </div> 575 </div>
522 - <div class="col-md-4">  
523 - <label class="control-label col-md-5"> 线路名称&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 576 + <div class="col-md-6">
  577 + <label class="control-label col-md-5"> 线路名称    :</label>
524 <div class="col-md-4"> 578 <div class="col-md-4">
525 <p class="form-control-static" data-display="lineName"> </p> 579 <p class="form-control-static" data-display="lineName"> </p>
526 </div> 580 </div>
@@ -529,25 +583,18 @@ @@ -529,25 +583,18 @@
529 <h4 class="form-section"> 参数详情 </h4> 583 <h4 class="form-section"> 参数详情 </h4>
530 <!-- 表单分组组件 form-group START --> 584 <!-- 表单分组组件 form-group START -->
531 <div class="form-group"> 585 <div class="form-group">
532 - <!-- 线路规划类型 (* 必填项) START -->  
533 - <div class="col-md-4">  
534 - <label class="control-label col-md-5"> 线路规划类型: </label>  
535 - <div class="col-md-4">  
536 - <p class="form-control-static" data-display="linePlayType"> </p>  
537 - </div>  
538 - </div>  
539 <!-- 线路规划类型 (* 必填项) END --> 586 <!-- 线路规划类型 (* 必填项) END -->
540 <!-- 起始站首班时间 (* 必填项) START --> 587 <!-- 起始站首班时间 (* 必填项) START -->
541 - <div class="col-md-4">  
542 - <label class="control-label col-md-5"> 起始站首班时间: </label> 588 + <div class="col-md-6">
  589 + <label class="control-label col-md-5"> 起始站首班时间 : </label>
543 <div class="col-md-4"> 590 <div class="col-md-4">
544 <p class="form-control-static" data-display="startStationFirstTime"> </p> 591 <p class="form-control-static" data-display="startStationFirstTime"> </p>
545 </div> 592 </div>
546 </div> 593 </div>
547 <!-- 起始站首班时间 (* 必填项) END --> 594 <!-- 起始站首班时间 (* 必填项) END -->
548 <!-- 起始站末班时间 (* 必填项) START --> 595 <!-- 起始站末班时间 (* 必填项) START -->
549 - <div class="col-md-4">  
550 - <label class="control-label col-md-5"> 起始站末班时间: </label> 596 + <div class="col-md-6">
  597 + <label class="control-label col-md-5"> 起始站末班时间 : </label>
551 <div class="col-md-4"> 598 <div class="col-md-4">
552 <p class="form-control-static" data-display="startStationEndTime"> </p> 599 <p class="form-control-static" data-display="startStationEndTime"> </p>
553 </div> 600 </div>
@@ -559,53 +606,58 @@ @@ -559,53 +606,58 @@
559 <!-- 表单分组组件 form-group START --> 606 <!-- 表单分组组件 form-group START -->
560 <div class="form-group"> 607 <div class="form-group">
561 <!-- 终点站首班时间 (* 必填项) START --> 608 <!-- 终点站首班时间 (* 必填项) START -->
562 - <div class="col-md-4">  
563 - <label class="control-label col-md-5"> 终点站首班时间: </label> 609 + <div class="col-md-6">
  610 + <label class="control-label col-md-5"> 终点站首班时间 : </label>
564 <div class="col-md-4"> 611 <div class="col-md-4">
565 <p class="form-control-static" data-display="endStationFirstTime"> </p> 612 <p class="form-control-static" data-display="endStationFirstTime"> </p>
566 </div> 613 </div>
567 </div> 614 </div>
568 <!-- 终点站首班时间 (* 必填项) END --> 615 <!-- 终点站首班时间 (* 必填项) END -->
569 <!-- 终点站末班时间 (* 必填项) START --> 616 <!-- 终点站末班时间 (* 必填项) START -->
570 - <div class="col-md-4">  
571 - <label class="control-label col-md-5"> 终点站末班时间: </label> 617 + <div class="col-md-6">
  618 + <label class="control-label col-md-5"> 终点站末班时间 : </label>
572 <div class="col-md-4"> 619 <div class="col-md-4">
573 <p class="form-control-static" data-display="endStationEndTime"> </p> 620 <p class="form-control-static" data-display="endStationEndTime"> </p>
574 </div> 621 </div>
575 </div> 622 </div>
576 <!-- 终点站末班时间 (* 必填项) END --> 623 <!-- 终点站末班时间 (* 必填项) END -->
577 - <!-- 早高峰开始时间(* 必填项) START -->  
578 - <div class="col-md-4">  
579 - <label class="control-label col-md-5"> 早高峰开始时间: </label>  
580 - <div class="col-md-4">  
581 - <p class="form-control-static" data-display="earlyStartTime"> </p>  
582 - </div>  
583 - </div>  
584 - <!-- 早高峰开始时间 (* 必填项) END -->  
585 </div> 624 </div>
586 <!-- 表单分组组件 form-group END --> 625 <!-- 表单分组组件 form-group END -->
587 626
588 <!-- 表单分组组件 form-group START --> 627 <!-- 表单分组组件 form-group START -->
589 <div class="form-group"> 628 <div class="form-group">
  629 + <!-- 早高峰开始时间(* 必填项) START -->
  630 + <div class="col-md-6">
  631 + <label class="control-label col-md-5"> 早高峰开始时间 : </label>
  632 + <div class="col-md-4">
  633 + <p class="form-control-static" data-display="earlyStartTime"> </p>
  634 + </div>
  635 + </div>
  636 + <!-- 早高峰开始时间 (* 必填项) END -->
590 <!-- 早高峰结束时间 (* 必填项) START --> 637 <!-- 早高峰结束时间 (* 必填项) START -->
591 - <div class="col-md-4">  
592 - <label class="control-label col-md-5"> 早高峰结束时间: </label> 638 + <div class="col-md-6">
  639 + <label class="control-label col-md-5"> 早高峰结束时间 : </label>
593 <div class="col-md-4"> 640 <div class="col-md-4">
594 <p class="form-control-static" data-display="earlyEndTime"> </p> 641 <p class="form-control-static" data-display="earlyEndTime"> </p>
595 </div> 642 </div>
596 </div> 643 </div>
597 <!-- 早高峰结束时间 (* 必填项) END --> 644 <!-- 早高峰结束时间 (* 必填项) END -->
  645 +</div>
  646 +<!-- 表单分组组件 form-group END -->
  647 +
  648 +<!-- 表单分组组件 form-group START -->
  649 +<div class="form-group">
598 <!-- 晚高峰开始时间(* 必填项) START --> 650 <!-- 晚高峰开始时间(* 必填项) START -->
599 - <div class="col-md-4">  
600 - <label class="control-label col-md-5"> 晚高峰开始时间: </label> 651 + <div class="col-md-6">
  652 + <label class="control-label col-md-5"> 晚高峰开始时间 : </label>
601 <div class="col-md-4"> 653 <div class="col-md-4">
602 <p class="form-control-static" data-display="lateStartTime"> </p> 654 <p class="form-control-static" data-display="lateStartTime"> </p>
603 </div> 655 </div>
604 </div> 656 </div>
605 <!-- 晚高峰开始时间(* 必填项) END --> 657 <!-- 晚高峰开始时间(* 必填项) END -->
606 <!-- 晚高峰结束时间(* 必填项) START --> 658 <!-- 晚高峰结束时间(* 必填项) START -->
607 - <div class="col-md-4">  
608 - <label class="control-label col-md-5"> 晚高峰结束时间: </label> 659 + <div class="col-md-6">
  660 + <label class="control-label col-md-5"> 晚高峰结束时间 : </label>
609 <div class="col-md-4"> 661 <div class="col-md-4">
610 <p class="form-control-static" data-display="lateEndTime"> </p> 662 <p class="form-control-static" data-display="lateEndTime"> </p>
611 </div> 663 </div>
@@ -614,86 +666,102 @@ @@ -614,86 +666,102 @@
614 </div> 666 </div>
615 <!-- 表单分组组件 form-group END --> 667 <!-- 表单分组组件 form-group END -->
616 668
617 -  
618 <!-- 表单分组组件 form-group START --> 669 <!-- 表单分组组件 form-group START -->
619 <div class="form-group"> 670 <div class="form-group">
620 <!-- 上行行驶时间(* 必填项) START --> 671 <!-- 上行行驶时间(* 必填项) START -->
621 - <div class="col-md-4">  
622 - <label class="control-label col-md-5"> 上行行驶时间&nbsp;&nbsp;&nbsp;: </label> 672 + <div class="col-md-6">
  673 + <label class="control-label col-md-5"> 上行行驶时间  : </label>
623 <div class="col-md-4"> 674 <div class="col-md-4">
624 <p class="form-control-static" data-display="upTravelTime"> </p> 675 <p class="form-control-static" data-display="upTravelTime"> </p>
625 </div> 676 </div>
626 </div> 677 </div>
627 <!-- 上行行驶时间(* 必填项) END --> 678 <!-- 上行行驶时间(* 必填项) END -->
628 <!-- 下行行驶时间(* 必填项) START --> 679 <!-- 下行行驶时间(* 必填项) START -->
629 - <div class="col-md-4">  
630 - <label class="control-label col-md-5"> 下行行驶时间&nbsp;&nbsp;&nbsp;: </label> 680 + <div class="col-md-6">
  681 + <label class="control-label col-md-5"> 下行行驶时间  : </label>
631 <div class="col-md-4"> 682 <div class="col-md-4">
632 <p class="form-control-static" data-display="downTravelTime"> </p> 683 <p class="form-control-static" data-display="downTravelTime"> </p>
633 </div> 684 </div>
634 </div> 685 </div>
635 <!-- 下行行驶时间(* 必填项) END --> 686 <!-- 下行行驶时间(* 必填项) END -->
  687 +</div>
  688 +<!-- 表单分组组件 form-group END -->
  689 +
  690 +<!-- 表单分组组件 form-group START -->
  691 +<div class="form-group">
636 <!-- 上行行驶里程(* 必填项) START --> 692 <!-- 上行行驶里程(* 必填项) START -->
637 - <div class="col-md-4">  
638 - <label class="control-label col-md-5"> 上行行驶里程&nbsp;&nbsp;&nbsp;: </label> 693 + <div class="col-md-6">
  694 + <label class="control-label col-md-5"> 上行行驶里程  : </label>
639 <div class="col-md-4"> 695 <div class="col-md-4">
640 <p class="form-control-static" data-display="upMileage"> </p> 696 <p class="form-control-static" data-display="upMileage"> </p>
641 </div> 697 </div>
642 </div> 698 </div>
643 <!-- 上行行驶里程(* 必填项) END--> 699 <!-- 上行行驶里程(* 必填项) END-->
644 -</div>  
645 -<!-- 表单分组组件 form-group END -->  
646 -  
647 -<!-- 表单分组组件 form-group START -->  
648 -<div class="form-group">  
649 <!-- 下行行驶里程(* 必填项) START --> 700 <!-- 下行行驶里程(* 必填项) START -->
650 - <div class="col-md-4">  
651 - <label class="control-label col-md-5"> 下行行驶里程&nbsp;&nbsp;&nbsp;: </label> 701 + <div class="col-md-6">
  702 + <label class="control-label col-md-5"> 下行行驶里程  : </label>
652 <div class="col-md-4"> 703 <div class="col-md-4">
653 <p class="form-control-static" data-display="downMileage"> </p> 704 <p class="form-control-static" data-display="downMileage"> </p>
654 </div> 705 </div>
655 </div> 706 </div>
656 <!-- 下行行驶里程(* 必填项) END --> 707 <!-- 下行行驶里程(* 必填项) END -->
657 - <!-- 上行停站间隙(* 必填项) START -->  
658 - <div class="col-md-4">  
659 - <label class="control-label col-md-5"> 上行停站间隙&nbsp;&nbsp;&nbsp;: </label> 708 +</div>
  709 +<!-- 表单分组组件 form-group END -->
  710 +
  711 +<!-- 表单分组组件 form-group START -->
  712 +<div class="form-group">
  713 + <!-- 高峰上行停站间隙(* 必填项) START -->
  714 + <div class="col-md-6">
  715 + <label class="control-label col-md-5"> 高峰上行停站间隙: </label>
660 <div class="col-md-4"> 716 <div class="col-md-4">
661 - <p class="form-control-static" data-display="upStopTime"> </p> 717 + <p class="form-control-static" data-display="gfupStopTime"> </p>
662 </div> 718 </div>
663 </div> 719 </div>
664 - <!-- 上行停站间隙(* 必填项) END -->  
665 - <!-- 下行停站间隙(* 必填项) START -->  
666 - <div class="col-md-4">  
667 - <label class="control-label col-md-5"> 下行停站间隙&nbsp;&nbsp;&nbsp;: </label> 720 + <!-- 高峰上行停站间隙(* 必填项) END -->
  721 + <!-- 高峰下行停站间隙(* 必填项) START -->
  722 + <div class="col-md-6">
  723 + <label class="control-label col-md-5"> 高峰下行停站间隙: </label>
668 <div class="col-md-4"> 724 <div class="col-md-4">
669 - <p class="form-control-static" data-display="downStopTime"> </p> 725 + <p class="form-control-static" data-display="gfdownStopTime"> </p>
670 </div> 726 </div>
671 </div> 727 </div>
672 - <!-- 下行停站间隙(* 必填项) END --> 728 + <!-- 高峰下行停站间隙(* 必填项) END -->
673 </div> 729 </div>
674 <!-- 表单分组组件 form-group END --> 730 <!-- 表单分组组件 form-group END -->
675 731
676 <!-- 表单分组组件 form-group START --> 732 <!-- 表单分组组件 form-group START -->
677 <div class="form-group"> 733 <div class="form-group">
678 - <!-- 最大停站间隙(* 必填项) START -->  
679 - <div class="col-md-4">  
680 - <label class="control-label col-md-5"> 最大停站间隙&nbsp;&nbsp;&nbsp;: </label> 734 + <!-- 低谷上行停站间隙(* 必填项) START -->
  735 + <div class="col-md-6">
  736 + <label class="control-label col-md-5"> 低谷上行停站间隙: </label>
  737 + <div class="col-md-4">
  738 + <p class="form-control-static" data-display="dgupStopTime"> </p>
  739 + </div>
  740 + </div>
  741 + <!-- 低谷上行停站间隙(* 必填项) END -->
  742 + <!-- 低谷下行停站间隙(* 必填项) START -->
  743 + <div class="col-md-6">
  744 + <label class="control-label col-md-5"> 低谷下行停站间隙: </label>
681 <div class="col-md-4"> 745 <div class="col-md-4">
682 - <p class="form-control-static" data-display="maxstopTime"> </p> 746 + <p class="form-control-static" data-display="dgdownStopTime"> </p>
683 </div> 747 </div>
684 </div> 748 </div>
685 - <!-- 最大停站间隙(* 必填项) END -->  
686 - <!-- 最小停站间隙(* 必填项) START -->  
687 - <div class="col-md-4">  
688 - <label class="control-label col-md-5"> 最小停站间隙&nbsp;&nbsp;&nbsp;: </label>  
689 - <div class="col-md-4">  
690 - <p class="form-control-static" data-display="mixstopTime"> </p>  
691 - </div> 749 + <!-- 低谷下行停站间隙(* 必填项) END -->
  750 +</div>
  751 +<!-- 表单分组组件 form-group END -->
  752 +
  753 +<!-- 表单分组组件 form-group START -->
  754 +<div class="form-group">
  755 + <!-- 线路规划类型 (* 必填项) START -->
  756 + <div class="col-md-6">
  757 + <label class="control-label col-md-5"> 线路规划类型  : </label>
  758 + <div class="col-md-4">
  759 + <p class="form-control-static" data-display="linePlayType"> </p>
  760 + </div>
692 </div> 761 </div>
693 - <!-- 最小停站间隙(* 必填项) END -->  
694 <!-- 停车场 START --> 762 <!-- 停车场 START -->
695 - <div class="col-md-4">  
696 - <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 763 + <div class="col-md-6">
  764 + <label class="control-label col-md-5">停车场     :</label>
697 <div class="col-md-7"> 765 <div class="col-md-7">
698 <p class="form-control-static" data-display="carPark"> </p> 766 <p class="form-control-static" data-display="carPark"> </p>
699 </div> 767 </div>
@@ -704,58 +772,83 @@ @@ -704,58 +772,83 @@
704 772
705 <!-- 表单分组组件 form-group START --> 773 <!-- 表单分组组件 form-group START -->
706 <div class="form-group"> 774 <div class="form-group">
  775 + <!-- 终点站车容量 START -->
  776 + <div class="col-md-6">
  777 + <label class="control-label col-md-5"> 终点站车容量  : </label>
  778 + <div class="col-md-4">
  779 + <p class="form-control-static" data-display="zdzcrl"> </p>
  780 + </div>
  781 + </div>
  782 + <!-- 吃饭地点 START -->
  783 + <div class="col-md-6">
  784 + <label class="control-label col-md-5">吃饭地点    :</label>
  785 + <div class="col-md-7">
  786 + <p class="form-control-static" data-display="cfdd"> </p>
  787 + </div>
  788 + </div>
  789 + <!-- 吃饭地点 START -->
  790 +</div>
  791 +<!-- 表单分组组件 form-group END -->
  792 +
  793 +<!-- 表单分组组件 form-group START -->
  794 +<div class="form-group">
707 <!-- 早高峰上行时间 START --> 795 <!-- 早高峰上行时间 START -->
708 - <div class="col-md-4">  
709 - <label class="control-label col-md-5"> 早高峰上行时间: </label> 796 + <div class="col-md-6">
  797 + <label class="control-label col-md-5"> 早高峰上行时间 : </label>
710 <div class="col-md-6"> 798 <div class="col-md-6">
711 <p class="form-control-static" data-display="earlyUpTime"> </p> 799 <p class="form-control-static" data-display="earlyUpTime"> </p>
712 </div> 800 </div>
713 </div> 801 </div>
714 <!-- 早高峰上行时间 END --> 802 <!-- 早高峰上行时间 END -->
715 <!-- 早高峰下行时间 START --> 803 <!-- 早高峰下行时间 START -->
716 - <div class="col-md-4">  
717 - <label class="control-label col-md-5"> 早高峰下行时间: </label> 804 + <div class="col-md-6">
  805 + <label class="control-label col-md-5"> 早高峰下行时间 : </label>
718 <div class="col-md-4"> 806 <div class="col-md-4">
719 <p class="form-control-static" data-display="earlyDownTime"> </p> 807 <p class="form-control-static" data-display="earlyDownTime"> </p>
720 </div> 808 </div>
721 </div> 809 </div>
722 <!-- 早高峰下行时间 END --> 810 <!-- 早高峰下行时间 END -->
  811 +</div>
  812 +<!-- 表单分组组件 form-group END -->
  813 +
  814 +<!-- 表单分组组件 form-group START -->
  815 +<div class="form-group">
723 <!-- 晚高峰上行时间 START --> 816 <!-- 晚高峰上行时间 START -->
724 - <div class="col-md-4">  
725 - <label class="control-label col-md-5"> 晚高峰上行时间: </label> 817 + <div class="col-md-6">
  818 + <label class="control-label col-md-5"> 晚高峰上行时间 : </label>
726 <div class="col-md-4"> 819 <div class="col-md-4">
727 <p class="form-control-static" data-display="lateUpTime"> </p> 820 <p class="form-control-static" data-display="lateUpTime"> </p>
728 </div> 821 </div>
729 </div> 822 </div>
730 <!-- 晚高峰上行时间 END --> 823 <!-- 晚高峰上行时间 END -->
731 -</div>  
732 -<!-- 表单分组组件 form-group END -->  
733 -  
734 -<!-- 表单分组组件 form-group START -->  
735 -<div class="form-group">  
736 <!-- 晚高峰下行时间 START --> 824 <!-- 晚高峰下行时间 START -->
737 - <div class="col-md-4">  
738 - <label class="control-label col-md-5"> 晚高峰下行时间:</label> 825 + <div class="col-md-6">
  826 + <label class="control-label col-md-5"> 晚高峰下行时间 :</label>
739 <div class="col-md-4"> 827 <div class="col-md-4">
740 <p class="form-control-static" data-display="lateDownTime"> </p> 828 <p class="form-control-static" data-display="lateDownTime"> </p>
741 </div> 829 </div>
742 </div> 830 </div>
743 <!-- 晚高峰下行时间 END --> 831 <!-- 晚高峰下行时间 END -->
  832 +</div>
  833 +<!-- 表单分组组件 form-group END -->
  834 +
  835 +<!-- 表单分组组件 form-group START -->
  836 +<div class="form-group">
744 <!-- 低谷上行时间 START --> 837 <!-- 低谷上行时间 START -->
745 - <div class="col-md-4">  
746 - <label class="control-label col-md-5">低谷上行时间&nbsp;&nbsp;&nbsp;: </label> 838 + <div class="col-md-6">
  839 + <label class="control-label col-md-5">低谷上行时间  : </label>
747 <div class="col-md-4"> 840 <div class="col-md-4">
748 <p class="form-control-static" data-display="troughUpTime"> </p> 841 <p class="form-control-static" data-display="troughUpTime"> </p>
749 </div> 842 </div>
750 </div> 843 </div>
751 <!-- 低谷上行时间 END --> 844 <!-- 低谷上行时间 END -->
752 <!-- 低谷下行时间 START --> 845 <!-- 低谷下行时间 START -->
753 - <div class="col-md-4">  
754 - <label class="control-label col-md-5"> 低谷下行时间&nbsp;&nbsp;&nbsp;: </label> 846 + <div class="col-md-6">
  847 + <label class="control-label col-md-5"> 低谷下行时间  : </label>
755 <div class="col-md-4"> 848 <div class="col-md-4">
756 <p class="form-control-static" data-display="troughDownTime"> </p> 849 <p class="form-control-static" data-display="troughDownTime"> </p>
757 </div> 850 </div>
758 - </div> 851 + </div>
759 <!-- 低谷下行时间 END --> 852 <!-- 低谷下行时间 END -->
760 </div> 853 </div>
761 <!-- 表单分组组件 form-group END --> 854 <!-- 表单分组组件 form-group END -->
@@ -763,24 +856,37 @@ @@ -763,24 +856,37 @@
763 <!-- 表单分组组件 form-group START --> 856 <!-- 表单分组组件 form-group START -->
764 <div class="form-group"> 857 <div class="form-group">
765 <!-- 区间上行时间 START --> 858 <!-- 区间上行时间 START -->
766 - <div class="col-md-4">  
767 - <label class="control-label col-md-5"> 区间上行时间&nbsp;&nbsp;&nbsp;:</label> 859 + <div class="col-md-6">
  860 + <label class="control-label col-md-5"> 区间上行时间  :</label>
768 <div class="col-md-4"> 861 <div class="col-md-4">
769 <p class="form-control-static" data-display="qjUpTime"> </p> 862 <p class="form-control-static" data-display="qjUpTime"> </p>
770 </div> 863 </div>
771 </div> 864 </div>
772 <!-- 区间上行时间 END --> 865 <!-- 区间上行时间 END -->
773 <!-- 区间下行时间 START --> 866 <!-- 区间下行时间 START -->
774 - <div class="col-md-4">  
775 - <label class="control-label col-md-5">区间下行时间&nbsp;&nbsp;&nbsp;: </label> 867 + <div class="col-md-6">
  868 + <label class="control-label col-md-5">区间下行时间  : </label>
776 <div class="col-md-4"> 869 <div class="col-md-4">
777 <p class="form-control-static" data-display="qjDownTime"> </p> 870 <p class="form-control-static" data-display="qjDownTime"> </p>
778 </div> 871 </div>
779 </div> 872 </div>
780 <!-- 区间下行时间 END --> 873 <!-- 区间下行时间 END -->
  874 +</div>
  875 +<!-- 表单分组组件 form-group END -->
  876 +
  877 +<!-- 表单分组组件 form-group START -->
  878 +<div class="form-group">
  879 + <!-- 早晚例行保养 START -->
  880 + <div class="col-md-6">
  881 + <label class="control-label col-md-5">早晚例行保养  :</label>
  882 + <div class="col-md-4">
  883 + <p class="form-control-static" data-display="lb"> </p>
  884 + </div>
  885 + </div>
  886 + <!-- 早晚例行保养 END -->
781 <!-- 空放行驶时间 START --> 887 <!-- 空放行驶时间 START -->
782 - <div class="col-md-4">  
783 - <label class="control-label col-md-5"> 空放行驶时间&nbsp;&nbsp;&nbsp;: </label> 888 + <div class="col-md-6">
  889 + <label class="control-label col-md-5"> 空放行驶时间  : </label>
784 <div class="col-md-4"> 890 <div class="col-md-4">
785 <p class="form-control-static" data-display="kfsj"> </p> 891 <p class="form-control-static" data-display="kfsj"> </p>
786 </div> 892 </div>
@@ -792,53 +898,58 @@ @@ -792,53 +898,58 @@
792 <!-- 表单分组组件 form-group START --> 898 <!-- 表单分组组件 form-group START -->
793 <div class="form-group"> 899 <div class="form-group">
794 <!-- 工作餐午餐时间 START --> 900 <!-- 工作餐午餐时间 START -->
795 - <div class="col-md-4">  
796 - <label class="control-label col-md-5"> 工作餐午餐时间: </label> 901 + <div class="col-md-6">
  902 + <label class="control-label col-md-5"> 工作餐午餐时间 : </label>
797 <div class="col-md-4"> 903 <div class="col-md-4">
798 <p class="form-control-static" data-display="workeLunch"> </p> 904 <p class="form-control-static" data-display="workeLunch"> </p>
799 </div> 905 </div>
800 </div> 906 </div>
801 <!-- 工作餐午餐时间 END --> 907 <!-- 工作餐午餐时间 END -->
802 <!-- 工作餐晚餐时间 START --> 908 <!-- 工作餐晚餐时间 START -->
803 - <div class="col-md-4">  
804 - <label class="control-label col-md-5"> 工作餐晚餐时间: </label> 909 + <div class="col-md-6">
  910 + <label class="control-label col-md-5"> 工作餐晚餐时间 : </label>
805 <div class="col-md-4"> 911 <div class="col-md-4">
806 <p class="form-control-static" data-display="workeDinner"> </p> 912 <p class="form-control-static" data-display="workeDinner"> </p>
807 </div> 913 </div>
808 </div> 914 </div>
809 <!-- 空放行驶时间 END --> 915 <!-- 空放行驶时间 END -->
  916 +</div>
  917 +<!-- 表单分组组件 form-group END -->
  918 +
  919 +<!-- 表单分组组件 form-group START -->
  920 +<div class="form-group">
810 <!-- 上行进场时间 START --> 921 <!-- 上行进场时间 START -->
811 - <div class="col-md-4">  
812 - <label class="control-label col-md-5"> 上行进场时间&nbsp;&nbsp;&nbsp;:</label> 922 + <div class="col-md-6">
  923 + <label class="control-label col-md-5"> 上行进场时间  :</label>
813 <div class="col-md-4"> 924 <div class="col-md-4">
814 <p class="form-control-static" data-display="upInTimer"> </p> 925 <p class="form-control-static" data-display="upInTimer"> </p>
815 </div> 926 </div>
816 </div> 927 </div>
817 <!-- 上行进场时间 END --> 928 <!-- 上行进场时间 END -->
818 -</div>  
819 -<!-- 表单分组组件 form-group END -->  
820 -  
821 -<!-- 表单分组组件 form-group START -->  
822 -<div class="form-group">  
823 <!-- 上行出场时间 START --> 929 <!-- 上行出场时间 START -->
824 - <div class="col-md-4">  
825 - <label class="control-label col-md-5"> 上行出场时间&nbsp;&nbsp;&nbsp;: </label> 930 + <div class="col-md-6">
  931 + <label class="control-label col-md-5"> 上行出场时间  : </label>
826 <div class="col-md-4"> 932 <div class="col-md-4">
827 <p class="form-control-static" data-display="upOutTimer"> </p> 933 <p class="form-control-static" data-display="upOutTimer"> </p>
828 </div> 934 </div>
829 </div> 935 </div>
830 <!-- 上行出场时间 END --> 936 <!-- 上行出场时间 END -->
  937 +</div>
  938 +<!-- 表单分组组件 form-group END -->
  939 +
  940 +<!-- 表单分组组件 form-group START -->
  941 +<div class="form-group">
831 <!-- 下行进场时间 START --> 942 <!-- 下行进场时间 START -->
832 - <div class="col-md-4">  
833 - <label class="control-label col-md-5"> 下行进场时间&nbsp;&nbsp;&nbsp;: </label> 943 + <div class="col-md-6">
  944 + <label class="control-label col-md-5"> 下行进场时间  : </label>
834 <div class="col-md-4"> 945 <div class="col-md-4">
835 <p class="form-control-static" data-display="downInTimer"> </p> 946 <p class="form-control-static" data-display="downInTimer"> </p>
836 </div> 947 </div>
837 </div> 948 </div>
838 <!-- 下行进场时间 END --> 949 <!-- 下行进场时间 END -->
839 <!-- 下行出场时间 START --> 950 <!-- 下行出场时间 START -->
840 - <div class="col-md-4">  
841 - <label class="control-label col-md-5"> 下行出场时间&nbsp;&nbsp;&nbsp;: </label> 951 + <div class="col-md-6">
  952 + <label class="control-label col-md-5"> 下行出场时间  : </label>
842 <div class="col-md-4"> 953 <div class="col-md-4">
843 <p class="form-control-static" data-display="downOutTimer"> </p> 954 <p class="form-control-static" data-display="downOutTimer"> </p>
844 </div> 955 </div>
@@ -850,66 +961,59 @@ @@ -850,66 +961,59 @@
850 <!-- 表单分组组件 form-group START --> 961 <!-- 表单分组组件 form-group START -->
851 <div class="form-group"> 962 <div class="form-group">
852 <!-- 上行进场里程 START --> 963 <!-- 上行进场里程 START -->
853 - <div class="col-md-4">  
854 - <label class="control-label col-md-5"> 上行进场里程&nbsp;&nbsp;&nbsp;: </label> 964 + <div class="col-md-6">
  965 + <label class="control-label col-md-5"> 上行进场里程  : </label>
855 <div class="col-md-4"> 966 <div class="col-md-4">
856 <p class="form-control-static" data-display="upInMileage"> </p> 967 <p class="form-control-static" data-display="upInMileage"> </p>
857 </div> 968 </div>
858 </div> 969 </div>
859 <!-- 上行进场里程 END --> 970 <!-- 上行进场里程 END -->
860 <!-- 上行出场里程 START --> 971 <!-- 上行出场里程 START -->
861 - <div class="col-md-4">  
862 - <label class="control-label col-md-5">上行出场里程&nbsp;&nbsp;&nbsp;:</label> 972 + <div class="col-md-6">
  973 + <label class="control-label col-md-5">上行出场里程  :</label>
863 <div class="col-md-4"> 974 <div class="col-md-4">
864 <p class="form-control-static" data-display="upOutMileage"> </p> 975 <p class="form-control-static" data-display="upOutMileage"> </p>
865 </div> 976 </div>
866 </div> 977 </div>
867 <!-- 上行出场里程 END --> 978 <!-- 上行出场里程 END -->
  979 +</div>
  980 +<!-- 表单分组组件 form-group END -->
  981 +
  982 +<!-- 表单分组组件 form-group START -->
  983 +<div class="form-group">
868 <!-- 下行进场里程 START --> 984 <!-- 下行进场里程 START -->
869 - <div class="col-md-4">  
870 - <label class="control-label col-md-5">下行进场里程&nbsp;&nbsp;&nbsp;: </label> 985 + <div class="col-md-6">
  986 + <label class="control-label col-md-5">下行进场里程  : </label>
871 <div class="col-md-4"> 987 <div class="col-md-4">
872 <p class="form-control-static" data-display="downInMileage"> </p> 988 <p class="form-control-static" data-display="downInMileage"> </p>
873 </div> 989 </div>
874 </div> 990 </div>
875 <!-- 下行进场里程 END --> 991 <!-- 下行进场里程 END -->
876 -</div>  
877 -<!-- 表单分组组件 form-group END -->  
878 -  
879 -<!-- 表单分组组件 form-group START -->  
880 -<div class="form-group">  
881 <!-- 下行出场里程 START --> 992 <!-- 下行出场里程 START -->
882 - <div class="col-md-4">  
883 - <label class="control-label col-md-5"> 下行出场里程&nbsp;&nbsp;&nbsp;:</label> 993 + <div class="col-md-6">
  994 + <label class="control-label col-md-5"> 下行出场里程  :</label>
884 <div class="col-md-4"> 995 <div class="col-md-4">
885 <p class="form-control-static" data-display="downOutMileage"> </p> 996 <p class="form-control-static" data-display="downOutMileage"> </p>
886 </div> 997 </div>
887 </div> 998 </div>
888 <!-- 下行出场里程 END --> 999 <!-- 下行出场里程 END -->
889 - <!-- 早晚例行保养 START -->  
890 - <div class="col-md-4">  
891 - <label class="control-label col-md-5">早晚例行保养&nbsp;&nbsp;&nbsp;:</label>  
892 - <div class="col-md-4">  
893 - <p class="form-control-static" data-display="lb"> </p>  
894 - </div>  
895 - </div>  
896 - <!-- 早晚例行保养 END --> 1000 +</div>
  1001 +<!-- 表单分组组件 form-group END -->
  1002 +
  1003 +
  1004 +<!-- 表单分组组件 form-group START -->
  1005 +<div class="form-group">
897 <!-- 班型与人次 START --> 1006 <!-- 班型与人次 START -->
898 <div class="col-md-6"> 1007 <div class="col-md-6">
899 - <label class="control-label col-md-3">班型与人次&nbsp;&nbsp;&nbsp;:</label>  
900 - <div class="col-md-9"> 1008 + <label class="control-label col-md-5">班型/人次/车辆 :</label>
  1009 + <div class="col-md-4">
901 <p class="form-control-static" data-display="bxrc"> </p> 1010 <p class="form-control-static" data-display="bxrc"> </p>
902 </div> 1011 </div>
903 </div> 1012 </div>
904 <!-- 班型与人次 END --> 1013 <!-- 班型与人次 END -->
905 -</div>  
906 -<!-- 表单分组组件 form-group END -->  
907 -  
908 -<!-- 表单分组组件 form-group START -->  
909 -<div class="form-group">  
910 <!-- 车辆总数 START --> 1014 <!-- 车辆总数 START -->
911 - <div class="col-md-4">  
912 - <label class="control-label col-md-5"> 车辆总数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 1015 + <div class="col-md-6">
  1016 + <label class="control-label col-md-5"> 车辆总数    :</label>
913 <div class="col-md-4"> 1017 <div class="col-md-4">
914 <p class="form-control-static" data-display="clzs"> </p> 1018 <p class="form-control-static" data-display="clzs"> </p>
915 </div> 1019 </div>
src/main/resources/static/pages/base/timesmodel/tepms/carnum_temp.html
1 <script type="text/html" id = "carnum_temp"> 1 <script type="text/html" id = "carnum_temp">
2 <!-- 表单分组组件 form-group START --> 2 <!-- 表单分组组件 form-group START -->
3 <div class="form-group"> 3 <div class="form-group">
4 - <!-- 线路规划类型 (* 必填项) START -->  
5 - <div class="col-md-4">  
6 - <label class="control-label col-md-5">  
7 - <span class="required"> * </span> 线路规划类型&nbsp;&nbsp;&nbsp;:  
8 - </label>  
9 - <div class="col-md-5">  
10 - <select name="linePlayType" class="form-control" id="linePlayTypeSelect">  
11 - <option value="">-- 请选择线路类型 --</option>  
12 - <option value="0">双向</option>  
13 - <option value="1">环线</option>  
14 - </select>  
15 - </div>  
16 - </div>  
17 - <!-- 线路规划类型 (* 必填项) END -->  
18 <!-- 起始站首班时间 (* 必填项) START --> 4 <!-- 起始站首班时间 (* 必填项) START -->
19 - <div class="col-md-4"> 5 + <div class="col-md-6">
20 <label class="control-label col-md-5"> 6 <label class="control-label col-md-5">
21 <span class="required"> * </span> 起始站首班时间: 7 <span class="required"> * </span> 起始站首班时间:
22 </label> 8 </label>
@@ -27,7 +13,7 @@ @@ -27,7 +13,7 @@
27 </div> 13 </div>
28 <!-- 起始站首班时间 (* 必填项) END --> 14 <!-- 起始站首班时间 (* 必填项) END -->
29 <!-- 起始站末班时间 (* 必填项) START --> 15 <!-- 起始站末班时间 (* 必填项) START -->
30 - <div class="col-md-4"> 16 + <div class="col-md-6">
31 <label class="control-label col-md-5"> 17 <label class="control-label col-md-5">
32 <span class="required"> * </span> 起始站末班时间: 18 <span class="required"> * </span> 起始站末班时间:
33 </label> 19 </label>
@@ -43,7 +29,7 @@ @@ -43,7 +29,7 @@
43 <!-- 表单分组组件 form-group START --> 29 <!-- 表单分组组件 form-group START -->
44 <div class="form-group"> 30 <div class="form-group">
45 <!-- 终点站首班时间 (* 必填项) START --> 31 <!-- 终点站首班时间 (* 必填项) START -->
46 - <div class="col-md-4"> 32 + <div class="col-md-6">
47 <label class="control-label col-md-5"> 33 <label class="control-label col-md-5">
48 <span class="required"> * </span> 终点站首班时间: 34 <span class="required"> * </span> 终点站首班时间:
49 </label> 35 </label>
@@ -54,7 +40,7 @@ @@ -54,7 +40,7 @@
54 </div> 40 </div>
55 <!-- 终点站首班时间 (* 必填项) END --> 41 <!-- 终点站首班时间 (* 必填项) END -->
56 <!-- 终点站末班时间 (* 必填项) START --> 42 <!-- 终点站末班时间 (* 必填项) START -->
57 - <div class="col-md-4"> 43 + <div class="col-md-6">
58 <label class="control-label col-md-5"> 44 <label class="control-label col-md-5">
59 <span class="required"> * </span> 终点站末班时间: 45 <span class="required"> * </span> 终点站末班时间:
60 </label> 46 </label>
@@ -64,8 +50,13 @@ @@ -64,8 +50,13 @@
64 </div> 50 </div>
65 </div> 51 </div>
66 <!-- 终点站末班时间 (* 必填项) END --> 52 <!-- 终点站末班时间 (* 必填项) END -->
  53 +</div>
  54 +<!-- 表单分组组件 form-group END -->
  55 +
  56 +<!-- 表单分组组件 form-group START -->
  57 +<div class="form-group">
67 <!-- 早高峰开始时间 (* 必填项) START --> 58 <!-- 早高峰开始时间 (* 必填项) START -->
68 - <div class="col-md-4"> 59 + <div class="col-md-6">
69 <label class="control-label col-md-5"> 60 <label class="control-label col-md-5">
70 <span class="required"> * </span> 早高峰开始时间: 61 <span class="required"> * </span> 早高峰开始时间:
71 </label> 62 </label>
@@ -75,13 +66,8 @@ @@ -75,13 +66,8 @@
75 </div> 66 </div>
76 </div> 67 </div>
77 <!-- 早高峰开始时间 (* 必填项) END --> 68 <!-- 早高峰开始时间 (* 必填项) END -->
78 -</div>  
79 -<!-- 表单分组组件 form-group END -->  
80 -  
81 -<!-- 表单分组组件 form-group START -->  
82 -<div class="form-group">  
83 <!-- 早高峰结束时间 (* 必填项) START --> 69 <!-- 早高峰结束时间 (* 必填项) START -->
84 - <div class="col-md-4"> 70 + <div class="col-md-6">
85 <label class="control-label col-md-5"> 71 <label class="control-label col-md-5">
86 <span class="required"> * </span> 早高峰结束时间: 72 <span class="required"> * </span> 早高峰结束时间:
87 </label> 73 </label>
@@ -91,8 +77,13 @@ @@ -91,8 +77,13 @@
91 </div> 77 </div>
92 </div> 78 </div>
93 <!-- 早高峰结束时间 (* 必填项) END --> 79 <!-- 早高峰结束时间 (* 必填项) END -->
  80 +</div>
  81 +<!-- 表单分组组件 form-group END -->
  82 +
  83 +<!-- 表单分组组件 form-group START -->
  84 +<div class="form-group">
94 <!-- 晚高峰开始时间 (* 必填项) START --> 85 <!-- 晚高峰开始时间 (* 必填项) START -->
95 - <div class="col-md-4"> 86 + <div class="col-md-6">
96 <label class="control-label col-md-5"> 87 <label class="control-label col-md-5">
97 <span class="required"> * </span> 晚高峰开始时间: 88 <span class="required"> * </span> 晚高峰开始时间:
98 </label> 89 </label>
@@ -103,7 +94,7 @@ @@ -103,7 +94,7 @@
103 </div> 94 </div>
104 <!-- 晚高峰开始时间 (* 必填项) END --> 95 <!-- 晚高峰开始时间 (* 必填项) END -->
105 <!-- 晚高峰结束 (* 必填项) START --> 96 <!-- 晚高峰结束 (* 必填项) START -->
106 - <div class="col-md-4"> 97 + <div class="col-md-6">
107 <label class="control-label col-md-5"> 98 <label class="control-label col-md-5">
108 <span class="required"> * </span> 晚高峰结束时间: 99 <span class="required"> * </span> 晚高峰结束时间:
109 </label> 100 </label>
@@ -114,12 +105,12 @@ @@ -114,12 +105,12 @@
114 </div> 105 </div>
115 <!-- 晚高峰结束 (* 必填项) END --> 106 <!-- 晚高峰结束 (* 必填项) END -->
116 </div> 107 </div>
117 -<!-- 表单分组组件 form-group END --> 108 + <!-- 表单分组组件 form-group END -->
118 109
119 <!-- 表单分组组件 form-group START --> 110 <!-- 表单分组组件 form-group START -->
120 <div class="form-group"> 111 <div class="form-group">
121 <!-- 早高峰前配车数 (* 必填项) START --> 112 <!-- 早高峰前配车数 (* 必填项) START -->
122 - <div class="col-md-4"> 113 + <div class="col-md-6">
123 <label class="control-label col-md-5"> 114 <label class="control-label col-md-5">
124 <span class="required"> * </span> 早高峰前配车数: 115 <span class="required"> * </span> 早高峰前配车数:
125 </label> 116 </label>
@@ -130,7 +121,7 @@ @@ -130,7 +121,7 @@
130 </div> 121 </div>
131 <!-- 营运开始配车数 (* 必填项) END --> 122 <!-- 营运开始配车数 (* 必填项) END -->
132 <!-- 早高峰配车数 (* 必填项) START --> 123 <!-- 早高峰配车数 (* 必填项) START -->
133 - <div class="col-md-4"> 124 + <div class="col-md-6">
134 <label class="control-label col-md-5"> 125 <label class="control-label col-md-5">
135 <span class="required"> * </span> 早高峰配车数&nbsp;&nbsp;&nbsp;: 126 <span class="required"> * </span> 早高峰配车数&nbsp;&nbsp;&nbsp;:
136 </label> 127 </label>
@@ -140,8 +131,13 @@ @@ -140,8 +131,13 @@
140 </div> 131 </div>
141 </div> 132 </div>
142 <!-- 早高峰配车数 (* 必填项) END --> 133 <!-- 早高峰配车数 (* 必填项) END -->
  134 +</div>
  135 + <!-- 表单分组组件 form-group END -->
  136 +
  137 +<!-- 表单分组组件 form-group START -->
  138 +<div class="form-group">
143 <!-- 高峰之间配车数(* 必填项) START --> 139 <!-- 高峰之间配车数(* 必填项) START -->
144 - <div class="col-md-4"> 140 + <div class="col-md-6">
145 <label class="control-label col-md-5"> 141 <label class="control-label col-md-5">
146 <span class="required"> * </span> 高峰之间配车数: 142 <span class="required"> * </span> 高峰之间配车数:
147 </label> 143 </label>
@@ -151,13 +147,8 @@ @@ -151,13 +147,8 @@
151 </div> 147 </div>
152 </div> 148 </div>
153 <!-- 高峰之间配车数 (* 必填项) END --> 149 <!-- 高峰之间配车数 (* 必填项) END -->
154 -</div>  
155 - <!-- 表单分组组件 form-group END -->  
156 -  
157 -<!-- 表单分组组件 form-group START -->  
158 -<div class="form-group">  
159 <!-- 晚高峰配车数 (* 必填项) START --> 150 <!-- 晚高峰配车数 (* 必填项) START -->
160 - <div class="col-md-4"> 151 + <div class="col-md-6">
161 <label class="control-label col-md-5"> 152 <label class="control-label col-md-5">
162 <span class="required"> * </span> 晚高峰配车数&nbsp;&nbsp;&nbsp;: 153 <span class="required"> * </span> 晚高峰配车数&nbsp;&nbsp;&nbsp;:
163 </label> 154 </label>
@@ -167,8 +158,13 @@ @@ -167,8 +158,13 @@
167 </div> 158 </div>
168 </div> 159 </div>
169 <!-- 晚高峰配车数 (* 必填项) END --> 160 <!-- 晚高峰配车数 (* 必填项) END -->
  161 +</div>
  162 +<!-- 表单分组组件 form-group END -->
  163 +
  164 +<!-- 表单分组组件 form-group START -->
  165 +<div class="form-group">
170 <!-- 晚高峰后配车数 (* 必填项) START --> 166 <!-- 晚高峰后配车数 (* 必填项) START -->
171 - <div class="col-md-4"> 167 + <div class="col-md-6">
172 <label class="control-label col-md-5"> 168 <label class="control-label col-md-5">
173 <span class="required"> * </span> 晚高峰后配车数: 169 <span class="required"> * </span> 晚高峰后配车数:
174 </label> 170 </label>
@@ -178,8 +174,27 @@ @@ -178,8 +174,27 @@
178 </div> 174 </div>
179 </div> 175 </div>
180 <!-- 晚高峰后配车数 (* 必填项) END --> 176 <!-- 晚高峰后配车数 (* 必填项) END -->
  177 + <!-- 线路规划类型 (* 必填项) START -->
  178 + <div class="col-md-6">
  179 + <label class="control-label col-md-5">
  180 + <span class="required"> * </span> 线路规划类型&nbsp;&nbsp;&nbsp;:
  181 + </label>
  182 + <div class="col-md-5">
  183 + <select name="linePlayType" class="form-control" id="linePlayTypeSelect">
  184 + <option value="">-- 请选择线路类型 --</option>
  185 + <option value="0">双向</option>
  186 + <option value="1">环线</option>
  187 + </select>
  188 + </div>
  189 + </div>
  190 + <!-- 线路规划类型 (* 必填项) END -->
  191 +</div>
  192 +<!-- 表单分组组件 form-group END -->
  193 +
  194 +<!-- 表单分组组件 form-group START -->
  195 +<div class="form-group">
181 <!-- 上行行驶时间(* 必填项) START --> 196 <!-- 上行行驶时间(* 必填项) START -->
182 - <div class="col-md-4"> 197 + <div class="col-md-6">
183 <label class="control-label col-md-5"> 198 <label class="control-label col-md-5">
184 <span class="required"> * </span> 上行行驶时间&nbsp;&nbsp;&nbsp;: 199 <span class="required"> * </span> 上行行驶时间&nbsp;&nbsp;&nbsp;:
185 </label> 200 </label>
@@ -189,13 +204,8 @@ @@ -189,13 +204,8 @@
189 </div> 204 </div>
190 </div> 205 </div>
191 <!-- 上行行驶时间 (* 必填项) END --> 206 <!-- 上行行驶时间 (* 必填项) END -->
192 -</div>  
193 -<!-- 表单分组组件 form-group END -->  
194 -  
195 -<!-- 表单分组组件 form-group START -->  
196 -<div class="form-group">  
197 <!-- 下行行驶时间 (* 必填项) START --> 207 <!-- 下行行驶时间 (* 必填项) START -->
198 - <div class="col-md-4"> 208 + <div class="col-md-6">
199 <label class="control-label col-md-5"> 209 <label class="control-label col-md-5">
200 <span class="required"> * </span> 下行行驶时间&nbsp;&nbsp;&nbsp;: 210 <span class="required"> * </span> 下行行驶时间&nbsp;&nbsp;&nbsp;:
201 </label> 211 </label>
@@ -205,8 +215,13 @@ @@ -205,8 +215,13 @@
205 </div> 215 </div>
206 </div> 216 </div>
207 <!-- 下行行驶时间(* 必填项) END --> 217 <!-- 下行行驶时间(* 必填项) END -->
  218 +</div>
  219 +<!-- 表单分组组件 form-group END -->
  220 +
  221 +<!-- 表单分组组件 form-group START -->
  222 +<div class="form-group">
208 <!-- 上行里程(* 必填项) START --> 223 <!-- 上行里程(* 必填项) START -->
209 - <div class="col-md-4"> 224 + <div class="col-md-6">
210 <label class="control-label col-md-5"> 225 <label class="control-label col-md-5">
211 <span class="required"> * </span> 上行行驶里程&nbsp;&nbsp;&nbsp;: 226 <span class="required"> * </span> 上行行驶里程&nbsp;&nbsp;&nbsp;:
212 </label> 227 </label>
@@ -217,7 +232,7 @@ @@ -217,7 +232,7 @@
217 </div> 232 </div>
218 <!-- 上行里程 (* 必填项) END --> 233 <!-- 上行里程 (* 必填项) END -->
219 <!-- 下行里程 (* 必填项) START --> 234 <!-- 下行里程 (* 必填项) START -->
220 - <div class="col-md-4"> 235 + <div class="col-md-6">
221 <label class="control-label col-md-5"> 236 <label class="control-label col-md-5">
222 <span class="required"> * </span> 下行行驶里程&nbsp;&nbsp;&nbsp;: 237 <span class="required"> * </span> 下行行驶里程&nbsp;&nbsp;&nbsp;:
223 </label> 238 </label>
@@ -230,81 +245,118 @@ @@ -230,81 +245,118 @@
230 </div> 245 </div>
231 <!-- 表单分组组件 form-group END --> 246 <!-- 表单分组组件 form-group END -->
232 247
  248 +
233 <!-- 表单分组组件 form-group START --> 249 <!-- 表单分组组件 form-group START -->
234 <div class="form-group"> 250 <div class="form-group">
235 <!-- 上行停站间隙 (* 必填项) START --> 251 <!-- 上行停站间隙 (* 必填项) START -->
236 - <div class="col-md-4"> 252 + <div class="col-md-6">
237 <label class="control-label col-md-5"> 253 <label class="control-label col-md-5">
238 <span class="required"> * </span> 上行停站间隙&nbsp;&nbsp;&nbsp;: 254 <span class="required"> * </span> 上行停站间隙&nbsp;&nbsp;&nbsp;:
239 </label> 255 </label>
240 <div class="col-md-5"> 256 <div class="col-md-5">
241 - <input type="text" class="form-control" name="upStopTime" value="{{map.upStopTime}}" id="upStopTimeInput" 257 + <input type="text" class="form-control" name="upStopTime" id="upStopTimeInput"
242 placeholder="请输入上行停站间隙"> 258 placeholder="请输入上行停站间隙">
243 </div> 259 </div>
244 </div> 260 </div>
245 <!-- 上行停站间隙 (* 必填项) END --> 261 <!-- 上行停站间隙 (* 必填项) END -->
246 -  
247 <!-- 下行停站间隙 (* 必填项) START --> 262 <!-- 下行停站间隙 (* 必填项) START -->
248 - <div class="col-md-4"> 263 + <div class="col-md-6">
249 <label class="control-label col-md-5"> 264 <label class="control-label col-md-5">
250 <span class="required"> * </span> 下行停站间隙&nbsp;&nbsp;&nbsp;: 265 <span class="required"> * </span> 下行停站间隙&nbsp;&nbsp;&nbsp;:
251 </label> 266 </label>
252 <div class="col-md-5"> 267 <div class="col-md-5">
253 - <input type="text" class="form-control" name="downStopTime" value="{{map.downStopTime}}" id="downStopTimeInput" 268 + <input type="text" class="form-control" name="downStopTime" id="downStopTimeInput"
254 placeholder="请输入下行停站间隙"> 269 placeholder="请输入下行停站间隙">
255 </div> 270 </div>
256 </div> 271 </div>
257 <!-- 下行停站间隙 (* 必填项) END --> 272 <!-- 下行停站间隙 (* 必填项) END -->
258 - <!-- 最大停站间隙(* 必填项) START -->  
259 - <div class="col-md-4">  
260 - <label class="control-label col-md-5">  
261 - <span class="required"> * </span> 最大停站间隙&nbsp;&nbsp;&nbsp;:  
262 - </label>  
263 - <div class="col-md-5">  
264 - <input type="text" class="form-control" name="maxstopTime" value="{{map.maxstopTime}}" id="maxstopTimeInput"  
265 - placeholder="请输入最大停站间隙">  
266 - </div>  
267 - </div>  
268 - <!-- 最大停站间隙 (* 必填项) END -->  
269 </div> 273 </div>
270 <!-- 表单分组组件 form-group END --> 274 <!-- 表单分组组件 form-group END -->
271 275
272 <!-- 表单分组组件 form-group START --> 276 <!-- 表单分组组件 form-group START -->
273 <div class="form-group"> 277 <div class="form-group">
274 - <!-- 最小停站间隙(* 必填项) START -->  
275 - <div class="col-md-4"> 278 + <!-- 高峰停站间隙(* 必填项) START -->
  279 + <div class="col-md-6">
276 <label class="control-label col-md-5"> 280 <label class="control-label col-md-5">
277 - <span class="required"> * </span> 最小停站间隙&nbsp;&nbsp;&nbsp;: 281 + <span class="required"> * </span> 高峰停站间隙&nbsp;&nbsp;&nbsp;:
278 </label> 282 </label>
279 <div class="col-md-5"> 283 <div class="col-md-5">
280 - <input type="text" class="form-control" name="mixstopTime" value="{{map.mixstopTime}}" id="mixstopTimeInput" placeholder="最小停站间隙"> 284 + <input type="text" class="form-control" name="mixstopTime" value="{{map.mixstopTime}}" id="mixstopTimeInput" placeholder="高峰停站间隙">
281 </div> 285 </div>
282 </div> 286 </div>
283 - <!-- 最小停站间隙(* 必填项) END --> 287 + <!-- 高峰停站间隙(* 必填项) END -->
  288 + <!-- 低谷停站间隙(* 必填项) START -->
  289 + <div class="col-md-6">
  290 + <label class="control-label col-md-5">
  291 + <span class="required"> * </span> 低谷停站间隙&nbsp;&nbsp;&nbsp;:
  292 + </label>
  293 + <div class="col-md-5">
  294 + <input type="text" class="form-control" name="maxstopTime" value="{{map.maxstopTime}}" id="maxstopTimeInput"
  295 + placeholder="请输入低谷停站间隙">
  296 + </div>
  297 + </div>
  298 + <!-- 低谷停站间隙 (* 必填项) END -->
  299 +</div>
  300 +<!-- 表单分组组件 form-group END -->
  301 +
  302 +<!-- 表单分组组件 form-group START -->
  303 +<div class="form-group">
284 <!-- 停车场(* 必填项) START --> 304 <!-- 停车场(* 必填项) START -->
285 - <div class="col-md-4"> 305 + <div class="col-md-6">
286 <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 306 <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>
287 <div class="col-md-5"> 307 <div class="col-md-5">
288 <select name="carPark" class="form-control" id="carParkSelect" style="width:100%"></select> 308 <select name="carPark" class="form-control" id="carParkSelect" style="width:100%"></select>
289 </div> 309 </div>
290 </div> 310 </div>
291 <!-- 停车场(* 必填项) END --> 311 <!-- 停车场(* 必填项) END -->
292 - <!-- 早高峰上行时间(* 必填项) START -->  
293 - <div class="col-md-4">  
294 - <label class="control-label col-md-5">早高峰上行时间:</label> 312 + <!-- 空放行驶时间 START -->
  313 + <div class="col-md-6">
  314 + <label class="control-label col-md-5">空放行驶时间&nbsp;&nbsp;&nbsp;:</label>
295 <div class="col-md-5"> 315 <div class="col-md-5">
296 - <input type="text" class="form-control" name="earlyUpTime" value="{{map.earlyUpTime}}" id="earlyUpTimeInput"  
297 - placeholder="请输入早高峰上行时间"> 316 + <input type="text" class="form-control" name="kfsj" id="kfsjInput"
  317 + placeholder="请输入空放行驶时间">
298 </div> 318 </div>
299 </div> 319 </div>
300 - <!-- 早高峰上行时间(* 必填项) END --> 320 + <!-- 空放行驶时间 END -->
  321 +</div>
  322 +<!-- 表单分组组件 form-group END -->
  323 +
  324 +<!-- 表单分组组件 form-group START -->
  325 +<div class="form-group">
  326 + <!-- 终点站车容量 START -->
  327 + <div class="col-md-6">
  328 + <label class="control-label col-md-5">终点站车容量&nbsp;&nbsp;&nbsp;:</label>
  329 + <div class="col-md-5">
  330 + <input type="text" class="form-control" name="zdzcrl" id="zdzcrlInput"
  331 + placeholder="请输入终点站车容量">
  332 + </div>
  333 + </div>
  334 + <!-- 终点站车容量 END -->
  335 + <!-- 吃饭地点 START -->
  336 + <div class="col-md-6">
  337 + <label class="control-label col-md-5">吃饭地点&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>
  338 + <div class="col-md-5">
  339 + <input type="text" class="form-control" name="cfdd" id="cfddSelect"
  340 + placeholder="请输入吃饭地点">
  341 + </div>
  342 + </div>
  343 + <!-- 空放行驶时间 END -->
301 </div> 344 </div>
302 <!-- 表单分组组件 form-group END --> 345 <!-- 表单分组组件 form-group END -->
303 346
304 <!-- 表单分组组件 form-group START --> 347 <!-- 表单分组组件 form-group START -->
305 <div class="form-group"> 348 <div class="form-group">
  349 + <!-- 早高峰上行时间(* 必填项) START -->
  350 + <div class="col-md-6">
  351 + <label class="control-label col-md-5">早高峰上行时间:</label>
  352 + <div class="col-md-5">
  353 + <input type="text" class="form-control" name="earlyUpTime" value="{{map.earlyUpTime}}" id="earlyUpTimeInput"
  354 + placeholder="请输入早高峰上行时间">
  355 + </div>
  356 + </div>
  357 + <!-- 早高峰上行时间(* 必填项) END -->
306 <!-- 早高峰下行时间(* 必填项) START --> 358 <!-- 早高峰下行时间(* 必填项) START -->
307 - <div class="col-md-4"> 359 + <div class="col-md-6">
308 <label class="control-label col-md-5">早高峰下行时间:</label> 360 <label class="control-label col-md-5">早高峰下行时间:</label>
309 <div class="col-md-5"> 361 <div class="col-md-5">
310 <input type="text" class="form-control" name="earlyDownTime" value="{{map.earlyDownTime}}" id="earlyDownTimeInput" 362 <input type="text" class="form-control" name="earlyDownTime" value="{{map.earlyDownTime}}" id="earlyDownTimeInput"
@@ -312,8 +364,13 @@ @@ -312,8 +364,13 @@
312 </div> 364 </div>
313 </div> 365 </div>
314 <!-- 早高峰下行时间(* 必填项) END --> 366 <!-- 早高峰下行时间(* 必填项) END -->
  367 +</div>
  368 +<!-- 表单分组组件 form-group END -->
  369 +
  370 +<!-- 表单分组组件 form-group START -->
  371 +<div class="form-group">
315 <!-- 晚高峰上行时间 (* 必填项) START --> 372 <!-- 晚高峰上行时间 (* 必填项) START -->
316 - <div class="col-md-4"> 373 + <div class="col-md-6">
317 <label class="control-label col-md-5">晚高峰上行时间:</label> 374 <label class="control-label col-md-5">晚高峰上行时间:</label>
318 <div class="col-md-5"> 375 <div class="col-md-5">
319 <input type="text" class="form-control" name="lateUpTime" value="{{map.lateUpTime}}" id="lateUpTimeInput" 376 <input type="text" class="form-control" name="lateUpTime" value="{{map.lateUpTime}}" id="lateUpTimeInput"
@@ -322,7 +379,7 @@ @@ -322,7 +379,7 @@
322 </div> 379 </div>
323 <!-- 晚高峰上行时间(* 必填项) END --> 380 <!-- 晚高峰上行时间(* 必填项) END -->
324 <!-- 晚高峰下行时间 (* 必填项) START --> 381 <!-- 晚高峰下行时间 (* 必填项) START -->
325 - <div class="col-md-4"> 382 + <div class="col-md-6">
326 <label class="control-label col-md-5">晚高峰下行时间:</label> 383 <label class="control-label col-md-5">晚高峰下行时间:</label>
327 <div class="col-md-5"> 384 <div class="col-md-5">
328 <input type="text" class="form-control" name="lateDownTime" value="{{map.lateDownTime}}" id="lateDownTimeInput" 385 <input type="text" class="form-control" name="lateDownTime" value="{{map.lateDownTime}}" id="lateDownTimeInput"
@@ -333,10 +390,11 @@ @@ -333,10 +390,11 @@
333 </div> 390 </div>
334 <!-- 表单分组组件 form-group END --> 391 <!-- 表单分组组件 form-group END -->
335 392
  393 +
336 <!-- 表单分组组件 form-group START --> 394 <!-- 表单分组组件 form-group START -->
337 <div class="form-group"> 395 <div class="form-group">
338 <!-- 低谷上行时间 START --> 396 <!-- 低谷上行时间 START -->
339 - <div class="col-md-4"> 397 + <div class="col-md-6">
340 <label class="control-label col-md-5">低谷上行时间&nbsp;&nbsp;&nbsp;:</label> 398 <label class="control-label col-md-5">低谷上行时间&nbsp;&nbsp;&nbsp;:</label>
341 <div class="col-md-5"> 399 <div class="col-md-5">
342 <input type="text" class="form-control" name="troughUpTime" value="{{map.troughUpTime}}" id="troughUpTimeInput" 400 <input type="text" class="form-control" name="troughUpTime" value="{{map.troughUpTime}}" id="troughUpTimeInput"
@@ -345,7 +403,7 @@ @@ -345,7 +403,7 @@
345 </div> 403 </div>
346 <!-- 低谷上行时间 END --> 404 <!-- 低谷上行时间 END -->
347 <!-- 低谷下行时间 START --> 405 <!-- 低谷下行时间 START -->
348 - <div class="col-md-4"> 406 + <div class="col-md-6">
349 <label class="control-label col-md-5">低谷下行时间&nbsp;&nbsp;&nbsp;:</label> 407 <label class="control-label col-md-5">低谷下行时间&nbsp;&nbsp;&nbsp;:</label>
350 <div class="col-md-5"> 408 <div class="col-md-5">
351 <input type="text" class="form-control" name="troughDownTime" value="{{map.troughDownTime}}" id="troughDownTimeInput" 409 <input type="text" class="form-control" name="troughDownTime" value="{{map.troughDownTime}}" id="troughDownTimeInput"
@@ -353,8 +411,14 @@ @@ -353,8 +411,14 @@
353 </div> 411 </div>
354 </div> 412 </div>
355 <!-- 低谷下行时间 END --> 413 <!-- 低谷下行时间 END -->
  414 +
  415 +</div>
  416 +<!-- 表单分组组件 form-group END -->
  417 +
  418 +<!-- 表单分组组件 form-group START -->
  419 +<div class="form-group">
356 <!-- 区间上行时间 START --> 420 <!-- 区间上行时间 START -->
357 - <div class="col-md-4"> 421 + <div class="col-md-6">
358 <label class="control-label col-md-5">区间上行时间&nbsp;&nbsp;&nbsp;:</label> 422 <label class="control-label col-md-5">区间上行时间&nbsp;&nbsp;&nbsp;:</label>
359 <div class="col-md-5"> 423 <div class="col-md-5">
360 <input type="text" class="form-control" name="qjUpTime" id="qjUpTimeInput" 424 <input type="text" class="form-control" name="qjUpTime" id="qjUpTimeInput"
@@ -362,13 +426,8 @@ @@ -362,13 +426,8 @@
362 </div> 426 </div>
363 </div> 427 </div>
364 <!-- 区间上行时间 END --> 428 <!-- 区间上行时间 END -->
365 -</div>  
366 -<!-- 表单分组组件 form-group END -->  
367 -  
368 -<!-- 表单分组组件 form-group START -->  
369 -<div class="form-group">  
370 <!-- 区间下行时间 START --> 429 <!-- 区间下行时间 START -->
371 - <div class="col-md-4"> 430 + <div class="col-md-6">
372 <label class="control-label col-md-5">区间下行时间&nbsp;&nbsp;&nbsp;:</label> 431 <label class="control-label col-md-5">区间下行时间&nbsp;&nbsp;&nbsp;:</label>
373 <div class="col-md-5"> 432 <div class="col-md-5">
374 <input type="text" class="form-control" name="qjDownTime" id="qjDownTimeInput" 433 <input type="text" class="form-control" name="qjDownTime" id="qjDownTimeInput"
@@ -376,17 +435,13 @@ @@ -376,17 +435,13 @@
376 </div> 435 </div>
377 </div> 436 </div>
378 <!-- 区间下行时间 END --> 437 <!-- 区间下行时间 END -->
379 - <!-- 空放行驶时间 START -->  
380 - <div class="col-md-4">  
381 - <label class="control-label col-md-5">空放行驶时间&nbsp;&nbsp;&nbsp;:</label>  
382 - <div class="col-md-5">  
383 - <input type="text" class="form-control" name="kfsj" id="kfsjInput"  
384 - placeholder="请输入空放行驶时间">  
385 - </div>  
386 - </div>  
387 - <!-- 空放行驶时间 END --> 438 +</div>
  439 +<!-- 表单分组组件 form-group END -->
  440 +
  441 +<!-- 表单分组组件 form-group START -->
  442 +<div class="form-group">
388 <!-- 工作餐午餐时间 START --> 443 <!-- 工作餐午餐时间 START -->
389 - <div class="col-md-4"> 444 + <div class="col-md-6">
390 <label class="control-label col-md-5">工作餐午餐时间:</label> 445 <label class="control-label col-md-5">工作餐午餐时间:</label>
391 <div class="col-md-5"> 446 <div class="col-md-5">
392 <input type="text" class="form-control" name="workeLunch" value="{{map.workeLunch}}" id="workeLunchInput" 447 <input type="text" class="form-control" name="workeLunch" value="{{map.workeLunch}}" id="workeLunchInput"
@@ -394,13 +449,8 @@ @@ -394,13 +449,8 @@
394 </div> 449 </div>
395 </div> 450 </div>
396 <!-- 工作餐午餐时间 END --> 451 <!-- 工作餐午餐时间 END -->
397 -</div>  
398 -<!-- 表单分组组件 form-group END -->  
399 -  
400 -<!-- 表单分组组件 form-group START -->  
401 -<div class="form-group">  
402 <!-- 工作餐晚餐时间 START --> 452 <!-- 工作餐晚餐时间 START -->
403 - <div class="col-md-4"> 453 + <div class="col-md-6">
404 <label class="control-label col-md-5">工作餐晚餐时间:</label> 454 <label class="control-label col-md-5">工作餐晚餐时间:</label>
405 <div class="col-md-5"> 455 <div class="col-md-5">
406 <input type="text" class="form-control" name="workeDinner" value="{{map.workeDinner}}" id="workeDinnerInput" 456 <input type="text" class="form-control" name="workeDinner" value="{{map.workeDinner}}" id="workeDinnerInput"
@@ -408,8 +458,13 @@ @@ -408,8 +458,13 @@
408 </div> 458 </div>
409 </div> 459 </div>
410 <!-- 工作餐晚餐时间 END --> 460 <!-- 工作餐晚餐时间 END -->
  461 +</div>
  462 +<!-- 表单分组组件 form-group END -->
  463 +
  464 +<!-- 表单分组组件 form-group START -->
  465 +<div class="form-group">
411 <!-- 上行进场时间 START --> 466 <!-- 上行进场时间 START -->
412 - <div class="col-md-4"> 467 + <div class="col-md-6">
413 <label class="control-label col-md-5">上行进场时间&nbsp;&nbsp;&nbsp;:</label> 468 <label class="control-label col-md-5">上行进场时间&nbsp;&nbsp;&nbsp;:</label>
414 <div class="col-md-5"> 469 <div class="col-md-5">
415 <input type="text" class="form-control" name="upInTimer" value="{{map.upInTimer}}" id="upInTimerInput" 470 <input type="text" class="form-control" name="upInTimer" value="{{map.upInTimer}}" id="upInTimerInput"
@@ -418,7 +473,7 @@ @@ -418,7 +473,7 @@
418 </div> 473 </div>
419 <!-- 上行进场时间 END --> 474 <!-- 上行进场时间 END -->
420 <!-- 上行出场时间 START --> 475 <!-- 上行出场时间 START -->
421 - <div class="col-md-4"> 476 + <div class="col-md-6">
422 <label class="control-label col-md-5">上行出场时间&nbsp;&nbsp;&nbsp;:</label> 477 <label class="control-label col-md-5">上行出场时间&nbsp;&nbsp;&nbsp;:</label>
423 <div class="col-md-5"> 478 <div class="col-md-5">
424 <input type="text" class="form-control" name="upOutTimer" value="{{map.upOutTimer}}" id="upOutTimerInput" 479 <input type="text" class="form-control" name="upOutTimer" value="{{map.upOutTimer}}" id="upOutTimerInput"
@@ -432,7 +487,7 @@ @@ -432,7 +487,7 @@
432 <!-- 表单分组组件 form-group START --> 487 <!-- 表单分组组件 form-group START -->
433 <div class="form-group"> 488 <div class="form-group">
434 <!-- 下行进场时间 START --> 489 <!-- 下行进场时间 START -->
435 - <div class="col-md-4"> 490 + <div class="col-md-6">
436 <label class="control-label col-md-5">下行进场时间&nbsp;&nbsp;&nbsp;:</label> 491 <label class="control-label col-md-5">下行进场时间&nbsp;&nbsp;&nbsp;:</label>
437 <div class="col-md-5"> 492 <div class="col-md-5">
438 <input type="text" class="form-control" name="downInTimer" value="{{map.downInTimer}}" id="downInTimerInput" 493 <input type="text" class="form-control" name="downInTimer" value="{{map.downInTimer}}" id="downInTimerInput"
@@ -441,7 +496,7 @@ @@ -441,7 +496,7 @@
441 </div> 496 </div>
442 <!-- 下行进场时间 END --> 497 <!-- 下行进场时间 END -->
443 <!-- 下行出场时间 START --> 498 <!-- 下行出场时间 START -->
444 - <div class="col-md-4"> 499 + <div class="col-md-6">
445 <label class="control-label col-md-5">下行出场时间&nbsp;&nbsp;&nbsp;:</label> 500 <label class="control-label col-md-5">下行出场时间&nbsp;&nbsp;&nbsp;:</label>
446 <div class="col-md-5"> 501 <div class="col-md-5">
447 <input type="text" class="form-control" name="downOutTimer" value="{{map.downOutTimer}}" id="downOutTimerInput" 502 <input type="text" class="form-control" name="downOutTimer" value="{{map.downOutTimer}}" id="downOutTimerInput"
@@ -449,8 +504,13 @@ @@ -449,8 +504,13 @@
449 </div> 504 </div>
450 </div> 505 </div>
451 <!-- 下行出场时间 END --> 506 <!-- 下行出场时间 END -->
  507 +</div>
  508 +<!-- 表单分组组件 form-group END -->
  509 +
  510 +<!-- 表单分组组件 form-group START -->
  511 +<div class="form-group">
452 <!-- 上行进场里程 START --> 512 <!-- 上行进场里程 START -->
453 - <div class="col-md-4"> 513 + <div class="col-md-6">
454 <label class="control-label col-md-5">上行进场里程&nbsp;&nbsp;&nbsp;:</label> 514 <label class="control-label col-md-5">上行进场里程&nbsp;&nbsp;&nbsp;:</label>
455 <div class="col-md-5"> 515 <div class="col-md-5">
456 <input type="text" class="form-control" name="upInMileage" value="{{map.upInMileage}}" id="upInlcInput" 516 <input type="text" class="form-control" name="upInMileage" value="{{map.upInMileage}}" id="upInlcInput"
@@ -458,13 +518,8 @@ @@ -458,13 +518,8 @@
458 </div> 518 </div>
459 </div> 519 </div>
460 <!-- 上行进场里程 END --> 520 <!-- 上行进场里程 END -->
461 -</div>  
462 -<!-- 表单分组组件 form-group END -->  
463 -  
464 -<!-- 表单分组组件 form-group START -->  
465 -<div class="form-group">  
466 <!-- 上行出场里程 START --> 521 <!-- 上行出场里程 START -->
467 - <div class="col-md-4"> 522 + <div class="col-md-6">
468 <label class="control-label col-md-5">上行出场里程&nbsp;&nbsp;&nbsp;:</label> 523 <label class="control-label col-md-5">上行出场里程&nbsp;&nbsp;&nbsp;:</label>
469 <div class="col-md-5"> 524 <div class="col-md-5">
470 <input type="text" class="form-control" name="upOutMileage" value="{{map.upOutMileage}}" id="upOutlcInput" 525 <input type="text" class="form-control" name="upOutMileage" value="{{map.upOutMileage}}" id="upOutlcInput"
@@ -472,8 +527,13 @@ @@ -472,8 +527,13 @@
472 </div> 527 </div>
473 </div> 528 </div>
474 <!-- 上行出场里程 END --> 529 <!-- 上行出场里程 END -->
  530 +</div>
  531 +<!-- 表单分组组件 form-group END -->
  532 +
  533 +<!-- 表单分组组件 form-group START -->
  534 +<div class="form-group">
475 <!-- 下行进场里程 START --> 535 <!-- 下行进场里程 START -->
476 - <div class="col-md-4"> 536 + <div class="col-md-6">
477 <label class="control-label col-md-5">下行进场里程&nbsp;&nbsp;&nbsp;:</label> 537 <label class="control-label col-md-5">下行进场里程&nbsp;&nbsp;&nbsp;:</label>
478 <div class="col-md-5"> 538 <div class="col-md-5">
479 <input type="text" class="form-control" name="downInMileage" value="{{map.downInMileage}}" id="downInlcInput" 539 <input type="text" class="form-control" name="downInMileage" value="{{map.downInMileage}}" id="downInlcInput"
@@ -482,7 +542,7 @@ @@ -482,7 +542,7 @@
482 </div> 542 </div>
483 <!-- 下行进场里程 END --> 543 <!-- 下行进场里程 END -->
484 <!-- 下行出场里程 START --> 544 <!-- 下行出场里程 START -->
485 - <div class="col-md-4"> 545 + <div class="col-md-6">
486 <label class="control-label col-md-5">下行出场里程&nbsp;&nbsp;&nbsp;:</label> 546 <label class="control-label col-md-5">下行出场里程&nbsp;&nbsp;&nbsp;:</label>
487 <div class="col-md-5"> 547 <div class="col-md-5">
488 <input type="text" class="form-control" name="downOutMileage" value="{{map.downOutMileage}}" id="downOutlcInput" 548 <input type="text" class="form-control" name="downOutMileage" value="{{map.downOutMileage}}" id="downOutlcInput"
@@ -496,7 +556,7 @@ @@ -496,7 +556,7 @@
496 <!-- 表单分组组件 form-group START --> 556 <!-- 表单分组组件 form-group START -->
497 <div class="form-group"> 557 <div class="form-group">
498 <!-- 早晚例行保养 START --> 558 <!-- 早晚例行保养 START -->
499 - <div class="col-md-4"> 559 + <div class="col-md-6">
500 <label class="control-label col-md-5">早晚例行保养&nbsp;&nbsp;&nbsp;:</label> 560 <label class="control-label col-md-5">早晚例行保养&nbsp;&nbsp;&nbsp;:</label>
501 <div class="col-md-5"> 561 <div class="col-md-5">
502 <input type="text" class="form-control" name="lb" value="{{map.lb}}" id="lbInput" 562 <input type="text" class="form-control" name="lb" value="{{map.lb}}" id="lbInput"
@@ -722,27 +782,27 @@ @@ -722,27 +782,27 @@
722 </div> 782 </div>
723 </div> 783 </div>
724 <!-- 下行停站间隙(* 必填项) END --> 784 <!-- 下行停站间隙(* 必填项) END -->
725 - <!-- 最大停站间隙(* 必填项) START --> 785 + <!-- 低谷停站间隙(* 必填项) START -->
726 <div class="col-md-4"> 786 <div class="col-md-4">
727 - <label class="control-label col-md-5"> 最大停站间隙&nbsp;&nbsp;&nbsp;: </label> 787 + <label class="control-label col-md-5"> 低谷停站间隙&nbsp;&nbsp;&nbsp;: </label>
728 <div class="col-md-4"> 788 <div class="col-md-4">
729 <p class="form-control-static" data-display="maxstopTime"> </p> 789 <p class="form-control-static" data-display="maxstopTime"> </p>
730 </div> 790 </div>
731 </div> 791 </div>
732 - <!-- 最大停站间隙(* 必填项) END --> 792 + <!-- 低谷停站间隙(* 必填项) END -->
733 </div> 793 </div>
734 <!-- 表单分组组件 form-group END --> 794 <!-- 表单分组组件 form-group END -->
735 795
736 <!-- 表单分组组件 form-group START --> 796 <!-- 表单分组组件 form-group START -->
737 <div class="form-group"> 797 <div class="form-group">
738 - <!-- 最小停站间隙(* 必填项) START --> 798 + <!-- 高峰停站间隙(* 必填项) START -->
739 <div class="col-md-4"> 799 <div class="col-md-4">
740 - <label class="control-label col-md-5"> 最小停站间隙&nbsp;&nbsp;&nbsp;: </label> 800 + <label class="control-label col-md-5"> 高峰停站间隙&nbsp;&nbsp;&nbsp;: </label>
741 <div class="col-md-4"> 801 <div class="col-md-4">
742 <p class="form-control-static" data-display="mixstopTime"> </p> 802 <p class="form-control-static" data-display="mixstopTime"> </p>
743 </div> 803 </div>
744 </div> 804 </div>
745 - <!-- 最小停站间隙(* 必填项) END --> 805 + <!-- 高峰停站间隙(* 必填项) END -->
746 <!-- 停车场 START --> 806 <!-- 停车场 START -->
747 <div class="col-md-4"> 807 <div class="col-md-4">
748 <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label> 808 <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>
src/main/resources/static/real_control_v2/css/north.css
@@ -365,4 +365,120 @@ @@ -365,4 +365,120 @@
365 font-size: 18px !important; 365 font-size: 18px !important;
366 font-family: Microsoft Yahei !important; 366 font-family: Microsoft Yahei !important;
367 color: blue !important; 367 color: blue !important;
  368 +}
  369 +
  370 +
  371 +
  372 +.sch-edit-info-table dl dt:nth-of-type(1), .sch-edit-info-table dl dd:nth-of-type(1) {
  373 + width: 4%;
  374 +}
  375 +.sch-edit-info-table dl dd:nth-of-type(1){
  376 + background: #eae8e8;
  377 + border-right: 1px solid #b3b3b3;
  378 + text-align: center;
  379 + text-indent: -3px;
  380 + color: #000;
  381 +}
  382 +.sch-edit-info-table dl dt:nth-of-type(2), .sch-edit-info-table dl dd:nth-of-type(2) {
  383 + width: 4%;
  384 +}
  385 +
  386 +.sch-edit-info-table dl dt:nth-of-type(3), .sch-edit-info-table dl dd:nth-of-type(3) {
  387 + width: 8%;
  388 +}
  389 +
  390 +.sch-edit-info-table dl dt:nth-of-type(4), .sch-edit-info-table dl dd:nth-of-type(4) {
  391 + width: 12%;
  392 +}
  393 +.sch-edit-info-table dl dt:nth-of-type(5), .sch-edit-info-table dl dd:nth-of-type(5) {
  394 + width: 8%;
  395 +}
  396 +.sch-edit-info-table dl dt:nth-of-type(6), .sch-edit-info-table dl dd:nth-of-type(6) {
  397 + width: 64%;
  398 +}
  399 +
  400 +.sch-edit-info-table dl:nth-of-type(odd){
  401 +
  402 +}
  403 +
  404 +.ct-badge {
  405 + display: inline-block;
  406 + font-size: 12px;
  407 + text-indent: 0;
  408 + padding: 2px 3px 2px;
  409 + height: 15px;
  410 + line-height: 17px;
  411 + border-bottom: 1px dotted;
  412 +}
  413 +
  414 +.ct-badge.ct-badge-DFTZ{
  415 + color: #3bb540;
  416 +}
  417 +
  418 +.ct-badge.ct-badge-DFTZ:hover{
  419 + background: #3bb540;
  420 + color: #fff;
  421 +}
  422 +
  423 +.ct-badge.ct-badge-SFTZ{
  424 + color: #3bb540;
  425 +}
  426 +
  427 +.ct-badge.ct-badge-SFTZ:hover{
  428 + background: #3bb540;
  429 + color: #fff;
  430 +}
  431 +
  432 +.ct-badge.ct-badge-FCXXWT {
  433 + color: #2844e0;
  434 +}
  435 +
  436 +.ct-badge.ct-badge-FCXXWT:hover{
  437 + background: #2844e0;
  438 + color: #fff;
  439 +}
  440 +
  441 +.ct-badge.ct-badge-JHLB {
  442 + color: #f92970;
  443 +}
  444 +
  445 +.edit-info-tip p {
  446 + margin: 0 0 5px 0;
  447 + font-size: 14px;
  448 +}
  449 +
  450 +.edit-info-tip p.text {
  451 + padding: 0px 0px 7px 0;
  452 + border-bottom: 1px solid #dddddc;
  453 +}
  454 +
  455 +.edit-info-tip p.sub_text{
  456 + color: #807f7f;
  457 +}
  458 +
  459 +.ct-badge.ct-badge-CXLB{
  460 + color: grey;
  461 +}
  462 +
  463 +.ct-badge.ct-badge-CXSF:hover{
  464 + background: #cccccc;
  465 +}
  466 +
  467 +.ct-badge.ct-badge-CXZX:hover{
  468 + background: #cccccc;
  469 +}
  470 +
  471 +.ct-badge.ct-badge-JHLB:hover{
  472 + background: #f92970;
  473 + color: #fff;
  474 +}
  475 +
  476 +
  477 +.ct-badge.ct-badge-TZRC {
  478 + color: #97a50f;
  479 +}
  480 +
  481 +.ct-badge.ct-badge-TZRC:hover{
  482 + background: #97a50f;
  483 + color: #fff;
368 } 484 }
369 \ No newline at end of file 485 \ No newline at end of file
src/main/resources/static/real_control_v2/fragments/north/nav/history_sch_maintain.html
1 <div class="uk-modal ct_move_modal" id="history-sch-maintain-modal"> 1 <div class="uk-modal ct_move_modal" id="history-sch-maintain-modal">
2 <div class="uk-modal-dialog" style="width: 1180px;"> 2 <div class="uk-modal-dialog" style="width: 1180px;">
3 <a href="" class="uk-modal-close uk-close"></a> 3 <a href="" class="uk-modal-close uk-close"></a>
  4 + <div class="uk-modal-header">
4 <h2>历史路单维护</h2> 5 <h2>历史路单维护</h2>
  6 + </div>
5 7
6 <div style="padding-left: 12px;margin: 20px 0"> 8 <div style="padding-left: 12px;margin: 20px 0">
7 <ul class="uk-subnav uk-subnav-pill h-s-time"> 9 <ul class="uk-subnav uk-subnav-pill h-s-time">
src/main/resources/static/real_control_v2/fragments/north/nav/sch_edit_info/list.html 0 → 100644
  1 +<div class="uk-modal ct_move_modal" id="history-sch-edit-info-modal">
  2 + <div class="uk-modal-dialog" style="width: 1280px;">
  3 + <a href="" class="uk-modal-close uk-close"></a>
  4 + <div class="uk-modal-header">
  5 + <h2>班次修正日志</h2>
  6 + </div>
  7 +
  8 + <div style="padding-left: 12px;margin: 20px 0">
  9 + <ul class="uk-subnav uk-subnav-pill h-s-time">
  10 + </ul>
  11 + </div>
  12 +
  13 + <div style="padding-left: 12px;">
  14 + <ul class="uk-subnav uk-subnav-pill h-s-line">
  15 + </ul>
  16 + </div>
  17 +
  18 + <div class="uk-panel uk-panel-box uk-panel-box-primary">
  19 + <form class="uk-form search-form">
  20 + <fieldset data-uk-margin>
  21 + <span class="horizontal-field">路牌</span>
  22 + <select name="lpName" style="width: 80px;"></select>
  23 + <span class="horizontal-field">上下行</span>
  24 + <select name="xlDir">
  25 + <option value="">全部</option>
  26 + <option value="0">上行</option>
  27 + <option value="1">下行</option>
  28 + </select>
  29 + &nbsp;
  30 + <span class="horizontal-field">车辆</span>
  31 + <div class="uk-autocomplete uk-form autocomplete-cars">
  32 + <input type="text" name="clZbh" placeholder="车辆自编号">
  33 + </div>
  34 + <span class="horizontal-field">驾驶员</span>
  35 + <div class="uk-autocomplete uk-form autocomplete-jsy">
  36 + <input type="text" name="jGh" placeholder="驾驶员">
  37 + </div>
  38 + <button class="uk-button">检索</button>
  39 +
  40 + <label style="float: right;font-size: 12px;color: #989797;">
  41 + <input type="checkbox" disabled> 显示系统修正日志
  42 + </label>
  43 + </fieldset>
  44 + </form>
  45 + </div>
  46 +
  47 + <div class="ct_table_wrap ct_table_no_border edit-info-table-wrap" style="height: 510px;">
  48 + <div class="ct_table sch-edit-info-table">
  49 + <div class="ct_table_head">
  50 + <dl>
  51 + <dt>序号</dt>
  52 + <dt>路牌</dt>
  53 + <dt>车辆</dt>
  54 + <dt>驾驶员</dt>
  55 + <dt>计发</dt>
  56 + <dt>修正记录</dt>
  57 + </dl>
  58 + </div>
  59 + <div class="ct_table_body">
  60 + </div>
  61 + </div>
  62 + </div>
  63 +
  64 + <div class="load-panel">
  65 + <i class="uk-icon-spinner uk-icon-spin"></i>
  66 + 正在加载数据
  67 + </div>
  68 + </div>
  69 +
  70 + <script id="history-sch-edit-info-temp" type="text/html">
  71 + {{each list as obj i}}
  72 + <dl>
  73 + <dd>{{i + 1}}</dd>
  74 + <dd>{{obj.lpName}}</dd>
  75 + <dd>{{obj.clZbh}}</dd>
  76 + <dd>{{obj.jGh}}/{{obj.jName}}</dd>
  77 + <dd>{{obj.fcsj}}</dd>
  78 + <dd>
  79 + {{each obj.editArray as e j}}
  80 + <div class="ct-badge ct-badge-{{e.type}}" data-id="{{e.id}}">
  81 + {{e.timeStr}}{{e.typeStr}}
  82 + </div>
  83 + {{/each}}
  84 + </dd>
  85 + </dl>
  86 + {{/each}}
  87 + </script>
  88 +
  89 + <!-- 待发调整 tip -->
  90 + <script id="edit-info-tip-dftz-temp" type="text/html">
  91 + <div class="edit-info-tip">
  92 + <p class="text">待发时间从 {{jsonArray.old}} 调整为 {{jsonArray.now}}</p>
  93 + <p class="sub_text">调整人:{{user}} 调整时间:{{timeStr}}</p>
  94 + {{if remarks!=null && remarks != ''}}
  95 + <p class="sub_text">备注:{{remarks}}</p>
  96 + {{/if}}
  97 + </div>
  98 + </script>
  99 +
  100 + <!-- 实发调整 -->
  101 + <script id="edit-info-tip-sftz-temp" type="text/html">
  102 + <div class="edit-info-tip">
  103 + <p class="text">实发时间由 {{jsonArray.old==null?'无':jsonArray.old}} 调整为 {{jsonArray.now}}</p>
  104 + <p class="sub_text">调整人:{{user}} 调整时间:{{timeStr}}</p>
  105 + {{if remarks!=null && remarks != ''}}
  106 + <p class="sub_text">备注:{{remarks}}</p>
  107 + {{/if}}
  108 + </div>
  109 + </script>
  110 +
  111 +
  112 + <!-- 发车信息微调 tip -->
  113 + <script id="edit-info-tip-fcxxwt-temp" type="text/html">
  114 + <div class="edit-info-tip">
  115 + {{each jsonArray as obj i}}
  116 + <p class="text">{{obj.title}} 由 {{obj.old==null?'无':obj.old}} 调整为 {{obj.now}}</p>
  117 + {{/each}}
  118 + <p class="sub_text">调整人:{{user}} 调整时间:{{timeStr}}</p>
  119 + {{if remarks!=null && remarks != ''}}
  120 + <p class="sub_text">备注:{{remarks}}</p>
  121 + {{/if}}
  122 + </div>
  123 + </script>
  124 +
  125 + <!-- 撤销实发tip -->
  126 + <script id="edit-info-tip-cxsf-temp" type="text/html">
  127 + <div class="edit-info-tip">
  128 + <p class="text">将实发时间 {{jsonArray.old_sfsj}} 撤销</p>
  129 + <p class="sub_text">调整人:{{user}} 调整时间:{{timeStr}}</p>
  130 + {{if remarks!=null && remarks != ''}}
  131 + <p class="sub_text">备注:{{remarks}}</p>
  132 + {{/if}}
  133 + </div>
  134 + </script>
  135 +
  136 + <!-- 撤销执行 -->
  137 + <script id="edit-info-tip-cxzx-temp" type="text/html">
  138 + <div class="edit-info-tip">
  139 + {{if jsonArray.old_sfsj != null}}
  140 + <p class="text">将实发时间 {{jsonArray.old_sfsj}} 撤销</p>
  141 + {{/if}}
  142 + {{if jsonArray.old_sdsj != null}}
  143 + <p class="text">将实达时间 {{jsonArray.old_sdsj}} 撤销</p>
  144 + {{/if}}
  145 + <p class="sub_text">调整人:{{user}} 调整时间:{{timeStr}}</p>
  146 + {{if remarks!=null && remarks != ''}}
  147 + <p class="sub_text">备注:{{remarks}}</p>
  148 + {{/if}}
  149 + </div>
  150 + </script>
  151 +
  152 + <!-- 调整人车 -->
  153 + <script id="edit-info-tip-tzrc-temp" type="text/html">
  154 + <div class="edit-info-tip">
  155 + {{if jsonArray.now_jsy != null}}
  156 + <p class="text">驾驶员从 {{jsonArray.old_jsy}} 调整为 {{jsonArray.now_jsy}}</p>
  157 + {{/if}}
  158 + {{if jsonArray.now_nbbm != null}}
  159 + <p class="text">车辆从 {{jsonArray.old_nbbm}} 调整为 {{jsonArray.now_nbbm}}</p>
  160 + {{/if}}
  161 + {{if jsonArray.now_spy != null}}
  162 + <p class="text">售票员从 {{jsonArray.old_spy}} 调整为 {{jsonArray.now_spy}}</p>
  163 + {{/if}}
  164 +
  165 + <p class="sub_text">调整人:{{user}} 调整时间:{{timeStr}}</p>
  166 + {{if remarks!=null && remarks != ''}}
  167 + <p class="sub_text">备注:{{remarks}}</p>
  168 + {{/if}}
  169 + </div>
  170 + </script>
  171 +
  172 + <script>
  173 + (function () {
  174 + var modal = '#history-sch-edit-info-modal';
  175 + var etInfos={};//id映射
  176 +
  177 + //滚动条
  178 + $('.edit-info-table-wrap', modal).perfectScrollbar({suppressScrollX: true});
  179 +
  180 + $(modal).on('init', function (e, data) {
  181 + e.stopPropagation();
  182 + $.get('/realSchedule/dateArray?c=1', function (rs) {
  183 + //日期tab
  184 + var tsStr = '';
  185 + $.each(rs, function (i) {
  186 + tsStr += '<li ' + (i == 0 ? 'class="uk-active"' : '') + '><a>' + this + '</a></li>';
  187 + });
  188 + $('.h-s-time', modal).html(tsStr);
  189 +
  190 + //线路tab
  191 + var xlStr = '';
  192 + $.each(gb_data_basic.activeLines, function (i) {
  193 + xlStr += '<li ' + (i == 0 ? 'class="uk-active"' : '') + ' data-id="' + this.lineCode + '"><a>' + this.name + '</a></li>';
  194 + });
  195 + $('.h-s-line', modal).html(xlStr);
  196 +
  197 + clearLpSelect();
  198 + //reLoadLp=true;
  199 + jsQuery();
  200 + });
  201 + });
  202 +
  203 + $(modal).on('refresh', jsQuery);
  204 +
  205 + $(modal).on('click', '.h-s-time li,.h-s-line li', function () {
  206 + if(loading)
  207 + return;
  208 + $(this).parent().find('li.uk-active').removeClass('uk-active');
  209 + $(this).addClass('uk-active');
  210 + clearLpSelect();
  211 + //检索之前将滚动条置顶
  212 + $('.edit-info-table-wrap', modal)[0].scrollTop = 0;
  213 + jsQuery();
  214 + });
  215 +
  216 + $('.search-form', modal).on('submit', function (e) {
  217 + try {
  218 + //检索之前将滚动条置顶
  219 + $('.edit-info-table-wrap', modal)[0].scrollTop = 0;
  220 + jsQuery();
  221 + }catch(e){
  222 + console.log(e);
  223 + }
  224 + return false;
  225 + });
  226 +
  227 + var reLoadLp;
  228 + var nbbmArray,jsyArray,lpArray,loading;
  229 + function jsQuery() {
  230 + var data = $('.search-form', modal).serializeJSON();
  231 + var rq = $('.h-s-time li.uk-active', modal).text(),
  232 + lineCode = $('.h-s-line li.uk-active', modal).data('id');
  233 + data.rq = rq;
  234 + data.lineCode = lineCode;
  235 + if(data.jGh.indexOf('/')!=-1){
  236 + var jsy=data.jGh.split('/');
  237 + data.jGh=jsy[0];
  238 + data.jName=jsy[1];
  239 + }
  240 +
  241 + $('.load-panel', modal).show();
  242 + loading=true;
  243 + gb_common.$get('/schEditInfo/_list', data, function (rs) {
  244 + etInfos = {};
  245 + nbbmArray=[];
  246 + jsyArray=[];
  247 + lpArray = [];
  248 + $.each(rs.list, function () {
  249 + this.jsonArray = JSON.parse(this.jsonArray);
  250 + etInfos[this.id] = this;
  251 +
  252 + nbbmArray.push({value: this.clZbh});
  253 + jsyArray.push({value: this.jGh+'/'+this.jName,
  254 + fullChars: pinyin.getFullChars(this.jName).toUpperCase(),
  255 + camelChars: pinyin.getCamelChars(this.jName)});
  256 + lpArray.push({value: this.lpName});
  257 + });
  258 + //根据班次ID合并修正操作
  259 + var list = mergeData(rs.list).sort(sortFun);
  260 + var htmlStr = template('history-sch-edit-info-temp', {list: list});
  261 + $('.sch-edit-info-table .ct_table_body', modal).html(htmlStr);
  262 + $('.load-panel', modal).hide();
  263 + loading=false;
  264 +
  265 + //value
  266 + nbbmArray=distinctByField(nbbmArray);
  267 + jsyArray=distinctByField(jsyArray);
  268 + lpArray=distinctByField(lpArray);
  269 + if(reLoadLp){
  270 + //路牌下拉框
  271 + var ops = '<option value="">全部</option>';
  272 + $.each(lpArray, function () {
  273 + ops += '<option value="'+this.value+'">'+this.value+'</option>';
  274 + });
  275 + $('[name=lpName]', modal).html(ops);
  276 + reLoadLp = false;
  277 + }
  278 +
  279 + //更新滚动条高度
  280 + $('.edit-info-table-wrap', modal).perfectScrollbar('update');
  281 + });
  282 + }
  283 +
  284 + function clearLpSelect() {
  285 + $('[name=lpName_eq]', modal).val('').html('');
  286 + reLoadLp = true;
  287 + }
  288 +
  289 + //nbbm autocomplete
  290 + var carAutoCom=$('.autocomplete-cars', modal);
  291 + UIkit.autocomplete(carAutoCom, {
  292 + minLength: 1,
  293 + delay: 50,
  294 + source: function(release) {
  295 + var q = $('input', carAutoCom).val().toUpperCase()
  296 + ,rs = [],
  297 + count = 0;
  298 + $.each(nbbmArray, function () {
  299 + if(this.value.indexOf(q) != -1){
  300 + rs.push(this);
  301 + count++;
  302 + }
  303 + if (count >= 15)
  304 + return false;
  305 + });
  306 + release && release(rs);
  307 + }
  308 + });
  309 +
  310 + //jsy autocomplete
  311 + var jsyAutoCom=$('.autocomplete-jsy', modal);
  312 + UIkit.autocomplete(jsyAutoCom, {
  313 + minLength: 1,
  314 + delay: 50,
  315 + source: function(release) {
  316 + var q = $('input', jsyAutoCom).val().toUpperCase()
  317 + ,rs = [],
  318 + count = 0;
  319 +
  320 + $.each(jsyArray, function() {
  321 + if (this.value.indexOf(q) != -1 || this.fullChars.indexOf(q) != -1 || this.camelChars.indexOf(q) != -1){
  322 + rs.push(this);
  323 + count++;
  324 + }
  325 +
  326 + if (count >= 10)
  327 + return false;
  328 + });
  329 + release && release(rs);
  330 + }
  331 + });
  332 +
  333 + function distinctByField(arr, f){
  334 + if(!f)
  335 + f = 'value';
  336 + var rs = {};
  337 + $.each(arr, function () {
  338 + rs[this[f]]=this;
  339 + });
  340 + return gb_common.get_vals(rs);
  341 + }
  342 +
  343 + function mergeData(list) {
  344 + var rs = {};
  345 + $.each(list, function () {
  346 + if(rs[this.schId]){
  347 + rs[this.schId]['editArray'].push(subData(this));
  348 + }
  349 + else{
  350 + rs[this.schId] = {
  351 + schId: this.schId,
  352 + clZbh: this.clZbh,
  353 + fcsj: this.fcsj,
  354 + gsbm: this.gsbm,
  355 + fgsbm: this.fgsbm,
  356 + lineCode: this.lineCode,
  357 + lpName: this.lpName,
  358 + jGh: this.jGh,
  359 + jName: this.jName,
  360 + realExecDate: this.realExecDate,
  361 + editArray: [subData(this)]
  362 + }
  363 + }
  364 + });
  365 + return gb_common.get_vals(rs);
  366 + }
  367 +
  368 + var types = {'DFTZ': '待发调整', 'FCXXWT':'发车信息微调', 'JHLB': '计划烂班', 'CXLB': '撤销烂班', 'CXZX': '撤销执行', 'CXSF': '撤销实发', 'SFTZ': '实发调整', 'TZRC': '调整人车'};
  369 + function subData(data){
  370 + return {
  371 + id: data.id,
  372 + type: data.type,
  373 + typeStr: types[data.type]?types[data.type]:data.type,
  374 + type2: data.type2,
  375 + user: data.user,
  376 + jsonArray: data.jsonArray,
  377 + remarks: data.remarks,
  378 + timeStr: data.timeStr
  379 + }
  380 + }
  381 + gb_ct_table.fixedHead($('.ct_table_wrap', modal));
  382 +
  383 +
  384 + /**
  385 + * 鼠标悬停、显示详细
  386 + */
  387 + var _opts = {
  388 + show:{ready: true, delay: 300},
  389 + position: {viewport: $(window), my: 'top center', at: 'bottom center'},
  390 + hide: {fixed: true, delay: 300},
  391 + events: {
  392 + hidden: function(event, api) {
  393 + $(this).qtip('destroy', true);
  394 + }
  395 + }
  396 + };
  397 + //待发调整tip
  398 + $(modal).on('mouseenter', '.ct-badge.ct-badge-DFTZ', function() {
  399 + $(this).qtip({
  400 + show: _opts.show,
  401 + content: {
  402 + title: '待发调整',
  403 + text: function() {
  404 + var obj = etInfos[$(this).data('id')];
  405 + return template('edit-info-tip-dftz-temp', obj);
  406 + }
  407 + },
  408 + position: _opts.position,
  409 + style: {
  410 + classes: 'qtip-green qtip-rounded qtip-shadow sch-badge-tip'
  411 + },
  412 + hide: _opts.hide,
  413 + events: _opts.events
  414 + });
  415 + });
  416 +
  417 + //实发调整tip
  418 + $(modal).on('mouseenter', '.ct-badge.ct-badge-SFTZ', function() {
  419 + $(this).qtip({
  420 + show: _opts.show,
  421 + content: {
  422 + title: '实发调整',
  423 + text: function() {
  424 + var obj = etInfos[$(this).data('id')];
  425 + return template('edit-info-tip-sftz-temp', obj);
  426 + }
  427 + },
  428 + position: _opts.position,
  429 + style: {
  430 + classes: 'qtip-green qtip-rounded qtip-shadow sch-badge-tip'
  431 + },
  432 + hide: _opts.hide,
  433 + events: _opts.events
  434 + });
  435 + });
  436 +
  437 + //发车信息微调tip
  438 + $(modal).on('mouseenter', '.ct-badge.ct-badge-FCXXWT', function() {
  439 + $(this).qtip({
  440 + show: _opts.show,
  441 + content: {
  442 + title: '发车信息微调',
  443 + text: function() {
  444 + var obj = etInfos[$(this).data('id')];
  445 + return template('edit-info-tip-fcxxwt-temp', obj);
  446 + }
  447 + },
  448 + position: _opts.position,
  449 + style: {
  450 + classes: 'qtip-blue qtip-rounded qtip-shadow sch-badge-tip'
  451 + },
  452 + hide: _opts.hide,
  453 + events: _opts.events
  454 + });
  455 + });
  456 +
  457 + //撤销实发tip
  458 + $(modal).on('mouseenter', '.ct-badge.ct-badge-CXSF', function() {
  459 + $(this).qtip({
  460 + show: _opts.show,
  461 + content: {
  462 + title: '撤销实发',
  463 + text: function() {
  464 + var obj = etInfos[$(this).data('id')];
  465 + return template('edit-info-tip-cxsf-temp', obj);
  466 + }
  467 + },
  468 + position: _opts.position,
  469 + style: {
  470 + classes: 'qtip-light qtip-rounded qtip-shadow sch-badge-tip'
  471 + },
  472 + hide: _opts.hide,
  473 + events: _opts.events
  474 + });
  475 + });
  476 +
  477 + //撤销执行tip
  478 + $(modal).on('mouseenter', '.ct-badge.ct-badge-CXZX', function() {
  479 + $(this).qtip({
  480 + show: _opts.show,
  481 + content: {
  482 + title: '撤销执行',
  483 + text: function() {
  484 + var obj = etInfos[$(this).data('id')];
  485 + return template('edit-info-tip-cxzx-temp', obj);
  486 + }
  487 + },
  488 + position: _opts.position,
  489 + style: {
  490 + classes: 'qtip-light qtip-rounded qtip-shadow sch-badge-tip'
  491 + },
  492 + hide: _opts.hide,
  493 + events: _opts.events
  494 + });
  495 + });
  496 +
  497 + //计划烂班tip
  498 + $(modal).on('mouseenter', '.ct-badge.ct-badge-JHLB', function() {
  499 + $(this).qtip({
  500 + show: _opts.show,
  501 + content: {
  502 + text: function() {
  503 + var obj = etInfos[$(this).data('id')];
  504 + return obj.remarks;
  505 + }
  506 + },
  507 + position: _opts.position,
  508 + style: {
  509 + classes: 'qtip-red qtip-rounded qtip-shadow sch-badge-tip'
  510 + },
  511 + hide: _opts.hide,
  512 + events: _opts.events
  513 + });
  514 + });
  515 +
  516 + //调整人车tip
  517 + $(modal).on('mouseenter', '.ct-badge.ct-badge-TZRC', function() {
  518 + $(this).qtip({
  519 + show: _opts.show,
  520 + content: {
  521 + title: '调整人车',
  522 + text: function() {
  523 + var obj = etInfos[$(this).data('id')];
  524 + console.log('obj', obj);
  525 + return template('edit-info-tip-tzrc-temp', obj);
  526 + }
  527 + },
  528 + position: _opts.position,
  529 + style: {
  530 + classes: 'qtip-rounded qtip-shadow sch-badge-tip'
  531 + },
  532 + hide: _opts.hide,
  533 + events: _opts.events
  534 + });
  535 + });
  536 +
  537 +
  538 + function sortFun(a, b) {
  539 + return (a.realExecDate + a.fcsj).localeCompare(b.realExecDate + b.fcsj);
  540 + }
  541 + })();
  542 + </script>
  543 +</div>
0 \ No newline at end of file 544 \ No newline at end of file
src/main/resources/static/real_control_v2/js/data/json/north_toolbar.json
@@ -28,6 +28,11 @@ @@ -28,6 +28,11 @@
28 "event": "history_sch_maintain" 28 "event": "history_sch_maintain"
29 }, 29 },
30 { 30 {
  31 + "id": 1.41,
  32 + "text": "班次修正日志",
  33 + "event": "sch_edit_info"
  34 + },
  35 + {
31 "id": 1.5, 36 "id": 1.5,
32 "divider": true 37 "divider": true
33 }, 38 },
src/main/resources/static/real_control_v2/js/main.js
@@ -169,9 +169,8 @@ var disabled_submit_btn = function (form) { @@ -169,9 +169,8 @@ var disabled_submit_btn = function (form) {
169 function showUpdateDescription() { 169 function showUpdateDescription() {
170 //更新说明 170 //更新说明
171 var updateDescription = { 171 var updateDescription = {
172 - date: '2017-05-18',  
173 - text: '<h5>现在自定义子任务,勾选是否烂班后,烂班原因必填。</h5><h5>修复了在驾驶员请求出场时,误下发分班出场指令的问题</h5>' +  
174 - '<h5>调整了报表的弹出窗口<br>1、取消了窗口遮罩,可同时打开多个报表窗口,窗口堆叠时,点击窗口title切换堆叠顺序<br>2、鼠标按住窗口右下角,可随意改变窗口大小。<br>3、拖动窗口时,允许拖出页面之外<br><br>注意:将窗口和窗口title拖出页面外时,会面临窗口丢失的风险,过多丢失的窗口会影响到页面性能,你可以刷新页面以重置!</h5>' 172 + date: '2017-05-23',
  173 + text: '<h5>现在可以在 数据&统计 里面看到班次修正日志。05-23之后的数据开始展现</h5>'
175 }; 174 };
176 175
177 var storage = window.localStorage 176 var storage = window.localStorage
src/main/resources/static/real_control_v2/js/north/toolbar.js
@@ -231,6 +231,9 @@ var gb_northToolbar = (function () { @@ -231,6 +231,9 @@ var gb_northToolbar = (function () {
231 }, 231 },
232 data_move_and_verification: function () { 232 data_move_and_verification: function () {
233 open_modal('/real_control_v2/fragments/north/nav/dataManager/dataMoveAndVerification.html', {}, modal_opts); 233 open_modal('/real_control_v2/fragments/north/nav/dataManager/dataMoveAndVerification.html', {}, modal_opts);
  234 + },
  235 + sch_edit_info: function () {
  236 + open_modal('/real_control_v2/fragments/north/nav/sch_edit_info/list.html', {}, modal_opts);
234 } 237 }
235 }; 238 };
236 239