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 97 //实际排班延迟入库线程
98 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 103 //sexec.scheduleWithFixedDelay(threadMonotor, 240, 60, TimeUnit.SECONDS);
... ... @@ -115,7 +115,7 @@ public class XDApplication implements CommandLineRunner {
115 115 //班次更新线程
116 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 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 433 * @return
434 434 */
435 435 @RequestMapping("dateArray")
436   - public List<String> dateArray(){
  436 + public List<String> dateArray(@RequestParam(defaultValue = "0") int c){
437 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 442 for(int i = 0; i < 10; i ++){
441 443 rs.add(fmtyyyyMMdd.print(t));
442 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 2  
3 3 import com.alibaba.fastjson.JSONArray;
4 4 import com.alibaba.fastjson.JSONObject;
  5 +import com.bsth.controller.realcontrol.dto.ChangePersonCar;
5 6 import com.bsth.data.schedule.edit_logs.entity.EditType;
6 7 import com.bsth.data.schedule.edit_logs.entity.SchEditInfo;
7 8 import com.bsth.entity.realcontrol.ScheduleRealInfo;
  9 +import org.apache.commons.lang3.StringUtils;
8 10 import org.slf4j.Logger;
9 11 import org.slf4j.LoggerFactory;
10 12  
... ... @@ -28,15 +30,15 @@ public class ScheduleModifyLogger {
28 30 * 待发调整
29 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 34 try {
33   - if(oldDfsj.equals(nowDfsj))
  35 + if (oldDfsj.equals(nowDfsj))
34 36 return;
35 37  
36 38 SchEditInfo sei = SchEditInfo.getInstance(sch);
37 39 sei.setType(EditType.DFTZ);
38 40 sei.setType2(opType);
39   - sei.setRemarks(remarks==null?"":remarks);
  41 + sei.setRemarks(remarks == null ? "" : remarks);
40 42  
41 43 //detail
42 44 JSONObject jobj = new JSONObject();
... ... @@ -46,7 +48,7 @@ public class ScheduleModifyLogger {
46 48 sei.setJsonArray(jobj.toJSONString());
47 49  
48 50 put(sei);
49   - }catch (Exception e){
  51 + } catch (Exception e) {
50 52 log.error("", e);
51 53 }
52 54 }
... ... @@ -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 61 try {
60   - if(jsonArray == null || jsonArray.size() == 0)
  62 + if (jsonArray == null || jsonArray.size() == 0)
61 63 return;
62 64  
63 65 SchEditInfo sei = SchEditInfo.getInstance(sch);
... ... @@ -66,28 +68,161 @@ public class ScheduleModifyLogger {
66 68 sei.setType(EditType.FCXXWT);
67 69  
68 70 put(sei);
69   - }catch (Exception e){
  71 + } catch (Exception e) {
70 72 log.error("", e);
71 73 }
72 74 }
73 75  
74 76 /**
75 77 * 计划烂班
  78 + *
76 79 * @param remarks
77 80 */
78   - public static void jhlb(ScheduleRealInfo sch, String remarks){
  81 + public static void jhlb(ScheduleRealInfo sch, String remarks) {
79 82 try {
80 83 SchEditInfo sei = SchEditInfo.getInstance(sch);
81 84 sei.setRemarks(remarks);
82 85 sei.setType(EditType.JHLB);
83 86  
84 87 put(sei);
85   - }catch (Exception e){
  88 + } catch (Exception e) {
86 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 226 list.add(sei);
92 227 }
93   -}
94 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 import org.springframework.beans.factory.annotation.Autowired;
8 8 import org.springframework.stereotype.Component;
9 9  
  10 +import java.util.ArrayList;
10 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 26 @Override
25 27 public void run() {
26 28 try{
  29 + List<SchEditInfo> pstList = new ArrayList<>();
27 30 LinkedList<SchEditInfo> list = ScheduleModifyLogger.list;
28 31 SchEditInfo sei;
29 32 for(int i = 0; i < 1000; i ++){
... ... @@ -31,11 +34,14 @@ public class SeiPstThread extends Thread{
31 34 if(sei == null)
32 35 break;
33 36 else{
34   - repository.save(sei);
  37 + //repository.save(sei);
  38 + pstList.add(sei);
35 39 }
36 40 }
  41 +
  42 + repository.save(pstList);
37 43 }catch (Exception e){
38 44 log.error("", e);
39 45 }
40 46 }
41 47 -}
  48 +}
42 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 */
6 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 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 28 */
29 29 private String timeStr;
30 30  
  31 + /** 时间戳 */
  32 + private long ts;
  33 +
31 34 private String lineCode;
32 35  
33 36 private String gsbm;
... ... @@ -134,13 +137,13 @@ public class SchEditInfo {
134 137  
135 138 @Transient
136 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 142 public static SchEditInfo getInstance(ScheduleRealInfo sch){
140 143 SchEditInfo sei = new SchEditInfo();
141 144 long t = System.currentTimeMillis();
142 145  
143   - sei.setRq(fmtyyyyMMdd.print(t));
  146 + sei.setTs(t);
144 147 sei.setTimeStr(fmtHHmm.print(t));
145 148  
146 149 SysUser user = SecurityUtils.getCurrentUser();
... ... @@ -148,6 +151,7 @@ public class SchEditInfo {
148 151 sei.setUser(user.getUserName());
149 152  
150 153 if(sch != null){
  154 + sei.setRq(sch.getScheduleDateStr());
151 155 sei.setSchId(sch.getId());
152 156 sei.setLineCode(sch.getXlBm());
153 157 sei.setGsbm(sch.getGsBm());
... ... @@ -179,4 +183,12 @@ public class SchEditInfo {
179 183 public void setFgsbm(String fgsbm) {
180 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 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 147 List<ScheduleRealInfo> scheduleByDateAndLineQp(String line,String date);
148 148  
149 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 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 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 10 import com.bsth.controller.realcontrol.dto.LpData;
11 11 import com.bsth.data.BasicData;
12 12 import com.bsth.data.LineConfigData;
13   -import com.bsth.data.msg_queue.DirectivePushQueue;
14 13 import com.bsth.data.schedule.DayOfSchedule;
15 14 import com.bsth.data.schedule.SchAttrCalculator;
16   -import com.bsth.data.schedule.edit_logs.FormLogger;
17 15 import com.bsth.data.schedule.ScheduleComparator;
  16 +import com.bsth.data.schedule.edit_logs.FormLogger;
18 17 import com.bsth.data.schedule.edit_logs.ScheduleModifyLogger;
19 18 import com.bsth.data.schedule.edit_logs.loggers.FcxxwtLogger;
20 19 import com.bsth.data.schedule.late_adjust.LateAdjustHandle;
... ... @@ -1050,6 +1049,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1050 1049 sch.setRealExecDate(sch.getScheduleDateStr());
1051 1050 }
1052 1051  
  1052 + //日志记录
  1053 + ScheduleModifyLogger.sftz(sch, fcsjActual, remarks);
  1054 +
1053 1055 sch.setFcsjActualAll(fcsjActual);
1054 1056 sch.addRemarks(remarks);
1055 1057 sch.calcStatus();
... ... @@ -1085,6 +1087,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1085 1087 rs.put("status", ResponseCode.ERROR);
1086 1088 rs.put("msg", "未烂班,无法撤销!");
1087 1089 } else {
  1090 + //日志记录
  1091 + ScheduleModifyLogger.cxlb(sch);
  1092 +
1088 1093 sch.setStatus(0);
1089 1094 sch.setRemarks("");//清空备注
1090 1095 sch.setJhlc(sch.getJhlcOrig());
... ... @@ -1124,6 +1129,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1124 1129 break;
1125 1130 }
1126 1131 }*/
  1132 + //日志记录
  1133 + ScheduleModifyLogger.cxsf(sch);
1127 1134  
1128 1135 sch.clearFcsjActual();
1129 1136 rs.put("status", ResponseCode.SUCCESS);
... ... @@ -1312,14 +1319,14 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1312 1319 ts.add(next);
1313 1320 }
1314 1321  
1315   - try{
  1322 +/* try{
1316 1323 //车辆下一个要执行的班次
1317 1324 ScheduleRealInfo carNext = dayOfSchedule.next(sch);
1318 1325 if(carNext != null && !carNext.getXlBm().equals(sch.getXlBm())){
1319 1326 DirectivePushQueue.put64(carNext.getClZbh(), carNext.getXlBm(), "套跑@系统");
1320 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 1332 dayOfSchedule.reCalcExecPlan(sch.getClZbh());
... ... @@ -2926,7 +2933,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2926 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 2937 List<ScheduleRealInfo> xList = new ArrayList<ScheduleRealInfo>();
2931 2938 List<ScheduleRealInfo> yList = new ArrayList<ScheduleRealInfo>();
2932 2939 List<ScheduleRealInfo> zList = new ArrayList<ScheduleRealInfo>();
... ... @@ -3149,9 +3156,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
3149 3156 Double jccgl=culateMieageService.culateJccgl(listS);
3150 3157 Double zyygl=Arith.add(sjgl, ljgl);
3151 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 3171 for (int i = 0; i < yesterdayDataList.size(); i++) {
3157 3172 if (i == 0) {
... ... @@ -3202,6 +3217,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
3202 3217  
3203 3218 //为换人换车情况表写入数据
3204 3219 schModifyLog.saveChangetochange(sch, cpc);
  3220 + //日志记录
  3221 + ScheduleModifyLogger.tzrc(sch, cpc);
3205 3222  
3206 3223 if (StringUtils.isNotEmpty(cpc.getJsy())) {
3207 3224 //换驾驶员
... ... @@ -4565,6 +4582,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
4565 4582 rs.put("status", ResponseCode.ERROR);
4566 4583 rs.put("msg", "班次未执行,无法撤销!");
4567 4584 } else {
  4585 + //日志记录
  4586 + ScheduleModifyLogger.cxzx(sch);
4568 4587  
4569 4588 sch.clearFcsjActual();
4570 4589 sch.clearZdsjActual();
... ...
src/main/resources/static/pages/base/timesmodel/add.html
... ... @@ -4,9 +4,9 @@
4 4 }
5 5 .tagsDiv {
6 6 border: 1px solid #c2cad8;
7   - margin-left: 50px;
  7 + margin-left: 15px;
8 8 padding: 4px 15px 4px 15px;
9   - width: 69%;
  9 + width: 50%;
10 10 }
11 11 </style>
12 12 <!-- 片段标题 START -->
... ... @@ -58,7 +58,7 @@
58 58 <a href="#tab2" data-toggle="tab" class="step">
59 59 <span class="number"> 2 </span>
60 60 <span class="desc">
61   - <i class="fa fa-check"></i> 获取参数方式 </span>
  61 + <i class="fa fa-check"></i> 选择参数方案 </span>
62 62 </a>
63 63 </li>
64 64 <li>
... ... @@ -121,28 +121,28 @@
121 121 </div>
122 122 <!-- 获取参数 -->
123 123 <div class="tab-pane" id="tab2">
124   - <h3 class="block"> 获取参数方式 </h3>
  124 + <h3 class="block"> 参数方案 </h3>
125 125 <!-- 获取参数 -->
126 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 128 <div class="col-md-9">
129 129 <div class="icheck-list">
130 130 <label >
131   - <input type="radio" class="icheck" name="baseRes" value=1 > 手动输入
  131 + <input type="radio" class="icheck" name="baseRes" value=1 checked> 班型/人次/车辆
132 132 </label>
133 133 <label>
134   - <input type="radio" class="icheck" name="baseRes" value=0 checked> 客流大数据分析
  134 + <input type="radio" class="icheck" name="baseRes" value=0> 客流大数据分析
135 135 </label>
136 136 </div>
137 137 </div>
138 138 </div>
139 139 <!-- 客容总量 -->
140   - <div class="form-group" id="krlGroup">
  140 + <!-- <div class="form-group" id="krlGroup">
141 141 <label class="col-md-3 control-label"><span class="required"> * </span>客容总量&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>
142 142 <div class="col-md-9">
143 143 <input type="text" class="form-control input-medium" name="krl" id="krlInput" placeholder="客容总量">
144 144 </div>
145   - </div>
  145 + </div> -->
146 146 </div>
147 147 <!-- 参数详情 -->
148 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 328 map.lb = 15;// 定义例保时间.
329 329 map.workeLunch = 20;// 定义午餐时间.
330 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 335 if(n==0) {
336 336 // 定义一个周转时间.
337 337 var zzsj = parseInt(map.upTravelTime) + 10*2 + parseInt(map.downTravelTime);
... ... @@ -456,7 +456,7 @@ var SKBFormWizard = function() {
456 456 rules : {
457 457 'skbName' : {required : true,},// 时刻表名称,必填项.
458 458 'lineName' : {required : true,},// 线路名称,必填项.
459   - 'krl' : {isBaseRes : true,number : true,digits : true,},// 客容量,当选择为客流方式时必填项、整数
  459 + // 'krl' : {isBaseRes : true,number : true,digits : true,},// 客容量,当选择为客流方式时必填项、整数
460 460 'startStationFirstTime' : {required : true}, // 起始站首班时间,必填项.
461 461 'startStationEndTime' : {required : true}, // 起始站末班时间 ,必填项.
462 462 'endStationFirstTime' : {required : true}, // 终点站首班时间 ,必填项.
... ... @@ -502,6 +502,7 @@ var SKBFormWizard = function() {
502 502 'clzs':{required : true,number : true,digits : true, isBcType : true},// 车辆总数,必填项、必须为整数.
503 503 'bxrc' : {required : true},// 班型人次,必填项
504 504 'linePlayType' : {required : true},// 线路规划类型,必填项
  505 + 'zdzcrl' : {number : true,digits : true},
505 506 },
506 507  
507 508 /**
... ... @@ -557,7 +558,7 @@ var SKBFormWizard = function() {
557 558 var argus = form.serializeJSON();
558 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 563 if(result) {
563 564 // 定义上行起点站,上行终点站,下行起点站,下行终点站.
... ... @@ -652,7 +653,7 @@ var SKBFormWizard = function() {
652 653 },function(){return '高峰时段配车数必须高于其它时段配车数!';});
653 654  
654 655 // 验证客流数据分析时客容量为必填项.
655   - $.validator.addMethod("isBaseRes", function(value,element) {
  656 + /*$.validator.addMethod("isBaseRes", function(value,element) {
656 657 // 定义返回值.
657 658 var tag = true;
658 659 // 定义选择获取参数方式值
... ... @@ -662,7 +663,7 @@ var SKBFormWizard = function() {
662 663 tag = false;
663 664 return tag;
664 665 }, '客流大数据分析,客流总量为必填项!');
665   -
  666 + */
666 667 // 验证配车总数与班型人次搭配
667 668 $.validator.addMethod('isBcType', function(value,element) {
668 669 // 定义返回值.
... ... @@ -673,6 +674,14 @@ var SKBFormWizard = function() {
673 674 // 判断.
674 675 if(bxrc=='' || bxrc==null || clzs=='' || clzs==0)
675 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 686 var map = {'line':{'startStationFirstTime':$('#qdzsbsjInput').val(),
678 687 'startStationEndTime':$('#qdzmbsjInput').val(),
... ... @@ -706,19 +715,20 @@ var SKBFormWizard = function() {
706 715 // 判断
707 716 if(parseFloat(countGs.toFixed(2))>maxGs || (bxrcAr.length==1 && countRc > parseInt(clzs)) )
708 717 tag = false;
  718 + */
709 719 return tag;
710   - },function(){return '配车总数与班型人次搭配不合理!'; });
  720 + },function(){return '配车总数与【班型/人次/车辆】搭配不合理!'; });
711 721  
712 722 /**
713 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 727 if($(this).val()=='1')
718 728 $('#krlGroup').hide();
719 729 else if($(this).val()=='0')
720 730 $('#krlGroup').show();
721   - });
  731 + });*/
722 732  
723 733 // 确认提交信息
724 734 var displayConfirm = function() {
... ... @@ -794,14 +804,17 @@ var SKBFormWizard = function() {
794 804 if (form.valid() == false) {
795 805 return false;
796 806 }
797   - if(index==1) {
  807 + /*if(index==1) {
798 808 // 初始化客容量值.
799 809 if($('#krlInput').val() == '')
800 810 $('#krlInput').val(50);
801   - }else if(index == 2) {
  811 + }else */if(index == 2) {
802 812 var baseRes = $('#submit_argus_form input[name="baseRes"]:checked').val(),// 获取参数方式值.
803 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 818 getLineInfo(lineId,function(r) {
806 819 getHtmlTemp(baseRes,r.content[0],lineId,krl,function(htlMap) {
807 820 $('#tab3').html(htlMap.forminput);
... ... @@ -831,6 +844,8 @@ var SKBFormWizard = function() {
831 844 options += '</optgroup>';
832 845 $('#carParkSelect').html(options).select2();
833 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 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 542 * @description : (TODO) 根据班型人次与车辆总数排列班次时刻数据.
329 543 *
... ... @@ -758,7 +972,7 @@ var BaseFun = function() {
758 972 for(var c = 0 ; c<len ; c++) {
759 973 // 铺出所有的班次
760 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 976 var kssj = dataMap.zgfsjd[0].st;
763 977 var cctag = map.linePlayType=='1' ? 0 : baseF.getdefaultDir(dataMap.smbcsjArr);// 获取出场类型 [0--上行出场;1--下行出场]
764 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 995 kssj,dataMap.zwcArr[1],cara[c],dataMap.bcTypeArr.cf,
782 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 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 1002 rs.push(baseF.getbcObj(
788 1003 kssj,_xxsj,cara[c],dataMap.bcTypeArr.normal,
789 1004 dataMap.dira[cctag],xhNo++,dataMap.pcxslcArr[cctag],map,0,
... ... @@ -794,6 +1009,15 @@ var BaseFun = function() {
794 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 1022 * @description : (TODO) 该方法可去除.
799 1023 *
... ... @@ -836,6 +1060,7 @@ var BaseFun = function() {
836 1060 for(var s = 0 ; s< bxrcAr.length;s++) {
837 1061 var s1a = bxrcAr[s].split('/');
838 1062 var rs = parseInt(s1a[1]);
  1063 + var fpcls = parseInt(s1a[2]);
839 1064 var gsgdIndex = 0,hoursV = 0.0,minueV='' ;
840 1065 for(var g = 0 ; g < gsgd.length; g++) {
841 1066 if(gsgd[g].type == s1a[0]) {
... ... @@ -846,6 +1071,7 @@ var BaseFun = function() {
846 1071 }
847 1072 list.push({'type':s1a[0],
848 1073 'rs':rs,
  1074 + 'fpcls':fpcls,
849 1075 'hoursV':hoursV,
850 1076 'minueV':minueV});
851 1077 rsa.push(rs);
... ... @@ -945,12 +1171,49 @@ var BaseFun = function() {
945 1171 baseF.tzqtbc(_obj.xxbc,_obj.qt,sj,cl,zd,lbsj);
946 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 1190 for(var s = 0 ; s<ar.length;s++) {
950 1191 if(baseF.isDelete(baseF.getDateTime(kssj),
951 1192 baseF.getDateTime(jssj),
952 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 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 32 });
33 33 $('.tipso-animation').tipso('show');
34 34 setTimeout(function(){$('.tipso-animation').tipso('hide');},4000);
  35 + console.log(map);
  36 + //debugger;
35 37 // 1、定义开始与结束时间点字符串.
36 38 var seMap = getStartAndEndDate(map);
37 39 // 2、获取开始与结束时间对象.
38 40 /*var seDate = getksjssj(null,seMap.s.split('-')[0]);*/
39 41 var seDate = getksjssj(null,seMap.s);
40 42 // 3、定义周转时间.
41   - map.zzsj = parseInt(getzzsj(map));
  43 + map.zzsj = getzzsj(map);
42 44 // 5、方向代码.
43 45 var dirA = getsxxDM();
44 46 // 6、班次类型.
... ... @@ -53,7 +55,7 @@
53 55 CSMap = getMaxCarAndStopSpace1(map);
54 56 }
55 57 // 发车间隙
56   - map.stopSpace = CSMap.stopSpace;
  58 + map.fcjx = CSMap.fcjx;
57 59 // 定义时间参数.
58 60 var stopAraay = getsj(map);
59 61 if(isNull(objD)) {
... ... @@ -62,7 +64,8 @@
62 64 data = BaseFun.KLplaceClassesTime(CSMap.gattA,stopAraay,CSMap.maxCar,map,seMap,dataMap);
63 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 71 }else {
... ... @@ -107,7 +110,7 @@
107 110 * @returns 返回一个分装发车间隙、车辆数的最大值集合.
108 111 * */
109 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 146 'dira' : dira,// 方向集合 [下标0代表上;下标1代表下]
144 147 'bcTypeArr' : bcTypeArr,// 班次类型
145 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 154 'map' : gatps,
150 155 'zzsj':gatps.zzsj,// 周转时间.
151 156 };
... ... @@ -160,7 +165,14 @@
160 165 * */
161 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 183 * @return 返回开始与结束时间字符串集合.
172 184 * */
173 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 271 year = newDate.getFullYear();
260 272 var jssj = BaseFun.getEndDate(year + '-' + month + '-' + dt + ' ' + '00:00');
261 273 return {'kssj' : kssj, 'jssj' : jssj};
262   -
263 274 }
264 275  
265 276 /**
... ... @@ -272,9 +283,11 @@
272 283 function getsj(map) {
273 284 var sxsj = parseInt(map.upTravelTime);// 上行时间.
274 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 291 'sxsj':sxsj,// 上行时间.
279 292 'xxsj':xxsj,// 下行时间.
280 293 'zzsj':map.zzsj,// 周转时间.
... ...
src/main/resources/static/pages/base/timesmodel/js/tagsinput.js
... ... @@ -28,7 +28,7 @@ var ComponentsBootstrapTagsinput = function() {
28 28  
29 29 $('#state_tagsinput').on('beforeItemAdd', function(event) {
30 30 var bctypeValue = $('#state_tagsinput_bctype').val();
31   - var rcnum = $('#state_tagsinput_value').val();
  31 + var rcnum = $('#state_tagsinput_rcsvalue').val();
32 32 var bxrcAr = $('#state_tagsinput').val().split(',');
33 33 for(var s = 0 ; s< bxrcAr.length;s++) {
34 34 var s1a = bxrcAr[s].split('/');
... ... @@ -40,28 +40,38 @@ var ComponentsBootstrapTagsinput = function() {
40 40  
41 41 $('#state_tagsinput_add').on('click', function(){
42 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 53 var bxrcAr = $('#state_tagsinput').val().split(',');
46 54 for(var s = 0 ; s< bxrcAr.length;s++) {
47 55 var s1a = bxrcAr[s].split('/');
48 56 if(s1a[0]==bctypeValue) {
49 57 rcnum = parseInt(rcnum) + parseInt(s1a[1]);
  58 + clnum = parseInt(clnum) + parseInt(s1a[2]);
50 59 }
51 60 }
52 61 elt.tagsinput('add', {
53   - "value": bctypeValue + '/' + rcnum,
54   - "text": bctypeValue + '/' + rcnum,
  62 + "value": bctypeValue + '/' + rcnum + '/' + clnum,
  63 + "text": bctypeValue + '/' + rcnum + '/' + clnum,
55 64 "continent": bctypeValue,
56 65 });
57 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 73 var tag = true;
64   - if(v1==''|| v2=='')
  74 + if(v1==''|| v2=='' || v3=='')
65 75 tag = false;
66 76 return tag;
67 77 }
... ...
src/main/resources/static/pages/base/timesmodel/tepms/bctype_temp.html
1 1 <script type="text/html" id = "bctype_temp">
  2 +
2 3 <!-- 表单分组组件 form-group START -->
3 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 5 <!-- 起始站首班时间 (* 必填项) START -->
20   - <div class="col-md-4">
  6 + <div class="col-md-6">
21 7 <label class="control-label col-md-5">
22   - <span class="required"> * </span> 起始站首班时间:
  8 + <span class="required"> * </span> 起始站首班时间 :
23 9 </label>
24 10 <div class="col-md-5">
25 11 <input type="text" class="form-control" name="startStationFirstTime" value="{{map.line.startStationFirstTime}}" id="qdzsbsjInput"
... ... @@ -29,9 +15,9 @@
29 15 <!-- 起始站首班时间 (* 必填项) END -->
30 16  
31 17 <!-- 起始站末班时间 (* 必填项) START -->
32   - <div class="col-md-4">
  18 + <div class="col-md-6">
33 19 <label class="control-label col-md-5">
34   - <span class="required"> * </span> 起始站末班时间:
  20 + <span class="required"> * </span> 起始站末班时间 :
35 21 </label>
36 22 <div class="col-md-5">
37 23 <input type="text" class="form-control" name="startStationEndTime" value="{{map.line.startStationEndTime}}" id="qdzmbsjInput"
... ... @@ -45,9 +31,9 @@
45 31 <!-- 表单分组组件 form-group START -->
46 32 <div class="form-group">
47 33 <!-- 终点站首班时间 (* 必填项) START -->
48   - <div class="col-md-4">
  34 + <div class="col-md-6">
49 35 <label class="control-label col-md-5">
50   - <span class="required"> * </span> 终点站首班时间:
  36 + <span class="required"> * </span> 终点站首班时间 :
51 37 </label>
52 38 <div class="col-md-5">
53 39 <input type="text" class="form-control" name="endStationFirstTime" value="{{map.line.endStationFirstTime}}" id="zdzsbsjInput"
... ... @@ -57,9 +43,9 @@
57 43 <!-- 终点站首班时间 (* 必填项) END -->
58 44  
59 45 <!-- 终点站末班时间 (* 必填项) START -->
60   - <div class="col-md-4">
  46 + <div class="col-md-6">
61 47 <label class="control-label col-md-5">
62   - <span class="required"> * </span> 终点站末班时间:
  48 + <span class="required"> * </span> 终点站末班时间 :
63 49 </label>
64 50 <div class="col-md-5">
65 51 <input type="text" class="form-control" name="endStationEndTime" value="{{map.line.endStationEndTime}}" id="zdzmbsjInput"
... ... @@ -67,10 +53,15 @@
67 53 </div>
68 54 </div>
69 55 <!-- 终点站末班时间 (* 必填项) END -->
  56 +</div>
  57 +<!-- 表单分组组件 form-group END -->
  58 +
  59 +<!-- 表单分组组件 form-group START -->
  60 +<div class="form-group">
70 61 <!-- 早高峰开始时间 (* 必填项) START -->
71   - <div class="col-md-4">
  62 + <div class="col-md-6">
72 63 <label class="control-label col-md-5">
73   - <span class="required"> * </span> 早高峰开始时间:
  64 + <span class="required"> * </span> 早高峰开始时间 :
74 65 </label>
75 66 <div class="col-md-5">
76 67 <input type="text" class="form-control" name="earlyStartTime" value="{{map.earlyStartTime}}" id="zgfkssjInput"
... ... @@ -78,15 +69,11 @@
78 69 </div>
79 70 </div>
80 71 <!-- 早高峰开始时间 (* 必填项) END -->
81   -</div>
82   -<!-- 表单分组组件 form-group END -->
83 72  
84   -<!-- 表单分组组件 form-group START -->
85   -<div class="form-group">
86 73 <!-- 早高峰结束时间 (* 必填项) START -->
87   - <div class="col-md-4">
  74 + <div class="col-md-6">
88 75 <label class="control-label col-md-5">
89   - <span class="required"> * </span> 早高峰结束时间:
  76 + <span class="required"> * </span> 早高峰结束时间 :
90 77 </label>
91 78 <div class="col-md-5">
92 79 <input type="text" class="form-control" name="earlyEndTime" value="{{map.earlyEndTime}}" id="zgfjssjInput"
... ... @@ -94,11 +81,15 @@
94 81 </div>
95 82 </div>
96 83 <!-- 早高峰结束时间 (* 必填项) END -->
  84 +</div>
  85 +<!-- 表单分组组件 form-group END -->
97 86  
  87 +<!-- 表单分组组件 form-group START -->
  88 +<div class="form-group">
98 89 <!-- 晚高峰开始时间 (* 必填项) START -->
99   - <div class="col-md-4">
  90 + <div class="col-md-6">
100 91 <label class="control-label col-md-5">
101   - <span class="required"> * </span> 晚高峰开始时间:
  92 + <span class="required"> * </span> 晚高峰开始时间 :
102 93 </label>
103 94 <div class="col-md-5">
104 95 <input type="text" class="form-control" name="lateStartTime" value="{{map.lateStartTime}}" id="wgfkssjInput"
... ... @@ -108,9 +99,9 @@
108 99 <!-- 晚高峰开始时间 (* 必填项) END -->
109 100  
110 101 <!-- 晚高峰结束 (* 必填项) START -->
111   - <div class="col-md-4">
  102 + <div class="col-md-6">
112 103 <label class="control-label col-md-5">
113   - <span class="required"> * </span> 晚高峰结束时间:
  104 + <span class="required"> * </span> 晚高峰结束时间 :
114 105 </label>
115 106 <div class="col-md-5">
116 107 <input type="text" class="form-control" name="lateEndTime" value="{{map.lateEndTime}}" id="wgfjssjInput"
... ... @@ -121,12 +112,13 @@
121 112 </div>
122 113 <!-- 表单分组组件 form-group END -->
123 114  
  115 +
124 116 <!-- 表单分组组件 form-group START -->
125 117 <div class="form-group">
126 118 <!-- 上行行驶时间(* 必填项) START -->
127   - <div class="col-md-4">
  119 + <div class="col-md-6">
128 120 <label class="control-label col-md-5">
129   - <span class="required"> * </span> 上行行驶时间&nbsp;&nbsp;&nbsp;:
  121 + <span class="required"> * </span> 上行行驶时间  :
130 122 </label>
131 123 <div class="col-md-5">
132 124 <input type="text" class="form-control" name="upTravelTime" value="{{map.upTravelTime}}" id="upTravelTimeInput"
... ... @@ -136,9 +128,9 @@
136 128 <!-- 上行行驶时间 (* 必填项) END -->
137 129  
138 130 <!-- 下行行驶时间 (* 必填项) START -->
139   - <div class="col-md-4">
  131 + <div class="col-md-6">
140 132 <label class="control-label col-md-5">
141   - <span class="required"> * </span> 下行行驶时间&nbsp;&nbsp;&nbsp;:
  133 + <span class="required"> * </span> 下行行驶时间  :
142 134 </label>
143 135 <div class="col-md-5">
144 136 <input type="text" class="form-control" name="downTravelTime" value="{{map.downTravelTime}}" id="downTravelTimeInput"
... ... @@ -146,11 +138,15 @@
146 138 </div>
147 139 </div>
148 140 <!-- 下行行驶时间(* 必填项) END -->
  141 +</div>
  142 +<!-- 表单分组组件 form-group END -->
149 143  
  144 +<!-- 表单分组组件 form-group START -->
  145 +<div class="form-group">
150 146 <!-- 上行里程(* 必填项) START -->
151   - <div class="col-md-4">
  147 + <div class="col-md-6">
152 148 <label class="control-label col-md-5">
153   - <span class="required"> * </span> 上行行驶里程&nbsp;&nbsp;&nbsp;:
  149 + <span class="required"> * </span> 上行行驶里程  :
154 150 </label>
155 151 <div class="col-md-5">
156 152 <input type="text" class="form-control" name="upMileage" value="{{map.upMileage}}" id="upMileageInput"
... ... @@ -158,15 +154,10 @@
158 154 </div>
159 155 </div>
160 156 <!-- 上行里程 (* 必填项) END -->
161   -</div>
162   -<!-- 表单分组组件 form-group END -->
163   -
164   -<!-- 表单分组组件 form-group START -->
165   -<div class="form-group">
166 157 <!-- 下行里程 (* 必填项) START -->
167   - <div class="col-md-4">
  158 + <div class="col-md-6">
168 159 <label class="control-label col-md-5">
169   - <span class="required"> * </span> 下行行驶里程&nbsp;&nbsp;&nbsp;:
  160 + <span class="required"> * </span> 下行行驶里程  :
170 161 </label>
171 162 <div class="col-md-5">
172 163 <input type="text" class="form-control" name="downMileage" value="{{map.downMileage}}" id="downMileageInput"
... ... @@ -174,62 +165,83 @@
174 165 </div>
175 166 </div>
176 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 175 <label class="control-label col-md-5">
181   - <span class="required"> * </span> 上行停站间隙&nbsp;&nbsp;&nbsp;:
  176 + <span class="required"> * </span> 高峰上行停站间隙:
182 177 </label>
183 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 181 </div>
187 182 </div>
188 183 <!-- 上行停站间隙 (* 必填项) END -->
189 184  
190   - <!-- 下行停站间隙 (* 必填项) START -->
191   - <div class="col-md-4">
  185 + <!-- 高峰下行停站间隙 (* 必填项) START -->
  186 + <div class="col-md-6">
192 187 <label class="control-label col-md-5">
193   - <span class="required"> * </span> 下行停站间隙&nbsp;&nbsp;&nbsp;:
  188 + <span class="required"> * </span> 高峰下行停站间隙:
194 189 </label>
195 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 193 </div>
199 194 </div>
200   - <!-- 下行停站间隙 (* 必填项) END -->
201   -
  195 + <!-- 高峰下行停站间隙 (* 必填项) END -->
202 196 </div>
203 197 <!-- 表单分组组件 form-group END -->
204 198  
205 199 <!-- 表单分组组件 form-group START -->
206 200 <div class="form-group">
207   - <!-- 最大停站间隙(* 必填项) START -->
208   - <div class="col-md-4">
  201 + <!-- 低谷上行停站间隙(* 必填项) START -->
  202 + <div class="col-md-6">
209 203 <label class="control-label col-md-5">
210   - <span class="required"> * </span> 最大停站间隙&nbsp;&nbsp;&nbsp;:
  204 + <span class="required"> * </span> 低谷上行停站间隙:
211 205 </label>
212 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 208 </div>
216 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 214 <label class="control-label col-md-5">
222   - <span class="required"> * </span> 最小停站间隙&nbsp;&nbsp;&nbsp;:
  215 + <span class="required"> * </span> 低谷下行停站间隙:
223 216 </label>
224 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 220 </div>
227 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 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 245 <div class="col-md-5">
234 246 <select name="carPark" class="form-control" id="carParkSelect" style="width:100%"></select>
235 247 </div>
... ... @@ -240,9 +252,36 @@
240 252  
241 253 <!-- 表单分组组件 form-group START -->
242 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 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 285 <div class="col-md-5">
247 286 <input type="text" class="form-control" name="earlyUpTime" value="{{map.earlyUpTime}}" id="earlyUpTimeInput"
248 287 placeholder="请输入早高峰上行时间">
... ... @@ -251,42 +290,45 @@
251 290 <!-- 早高峰上行时间(* 必填项) END -->
252 291  
253 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 295 <div class="col-md-5">
257 296 <input type="text" class="form-control" name="earlyDownTime" value="{{map.earlyDownTime}}" id="earlyDownTimeInput"
258 297 placeholder="请输入早高峰下行时间">
259 298 </div>
260 299 </div>
261 300 <!-- 早高峰下行时间(* 必填项) END -->
  301 +</div>
  302 +<!-- 表单分组组件 form-group END -->
262 303  
  304 +<!-- 表单分组组件 form-group START -->
  305 +<div class="form-group">
263 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 309 <div class="col-md-5">
267 310 <input type="text" class="form-control" name="lateUpTime" value="{{map.lateUpTime}}" id="lateUpTimeInput"
268 311 placeholder="请输入晚高峰上行时间">
269 312 </div>
270 313 </div>
271 314 <!-- 晚高峰上行时间(* 必填项) END -->
272   -</div>
273   -<!-- 表单分组组件 form-group END -->
274   -
275   -<!-- 表单分组组件 form-group START -->
276   -<div class="form-group">
277 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 318 <div class="col-md-5">
281 319 <input type="text" class="form-control" name="lateDownTime" value="{{map.lateDownTime}}" id="lateDownTimeInput"
282 320 placeholder="请输入晚高峰下行时间">
283 321 </div>
284 322 </div>
285 323 <!-- 晚高峰下行时间(* 必填项) END -->
  324 +</div>
  325 +<!-- 表单分组组件 form-group END -->
286 326  
  327 +<!-- 表单分组组件 form-group START -->
  328 +<div class="form-group">
287 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 332 <div class="col-md-5">
291 333 <input type="text" class="form-control" name="troughUpTime" value="{{map.troughUpTime}}" id="troughUpTimeInput"
292 334 placeholder="请输入低谷上行时间">
... ... @@ -295,8 +337,8 @@
295 337 <!-- 低谷上行时间 END -->
296 338  
297 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 342 <div class="col-md-5">
301 343 <input type="text" class="form-control" name="troughDownTime" value="{{map.troughDownTime}}" id="troughDownTimeInput"
302 344 placeholder="请输入低谷下行时间">
... ... @@ -309,8 +351,8 @@
309 351 <!-- 表单分组组件 form-group START -->
310 352 <div class="form-group">
311 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 356 <div class="col-md-5">
315 357 <input type="text" class="form-control" name="qjUpTime" id="qjUpTimeInput"
316 358 placeholder="请输入区间上行时间">
... ... @@ -319,18 +361,31 @@
319 361 <!-- 区间上行时间 END -->
320 362  
321 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 366 <div class="col-md-5">
325 367 <input type="text" class="form-control" name="qjDownTime" id="qjDownTimeInput"
326 368 placeholder="请输入区间下行时间">
327 369 </div>
328 370 </div>
329 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 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 389 <div class="col-md-5">
335 390 <input type="text" class="form-control" name="kfsj" id="kfsjInput"
336 391 placeholder="请输入空放行驶时间">
... ... @@ -343,8 +398,8 @@
343 398 <!-- 表单分组组件 form-group START -->
344 399 <div class="form-group">
345 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 403 <div class="col-md-5">
349 404 <input type="text" class="form-control" name="workeLunch" value="{{map.workeLunch}}" id="workeLunchInput"
350 405 placeholder="请输入工作餐午餐时间">
... ... @@ -353,42 +408,46 @@
353 408 <!-- 工作餐午餐时间 END -->
354 409  
355 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 413 <div class="col-md-5">
359 414 <input type="text" class="form-control" name="workeDinner" value="{{map.workeDinner}}" id="workeDinnerInput"
360 415 placeholder="请输入工作餐晚餐时间">
361 416 </div>
362 417 </div>
363 418 <!-- 工作餐晚餐时间 END -->
  419 +</div>
  420 +<!-- 表单分组组件 form-group END -->
364 421  
  422 +<!-- 表单分组组件 form-group START -->
  423 +<div class="form-group">
365 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 427 <div class="col-md-5">
369 428 <input type="text" class="form-control" name="upInTimer" value="{{map.upInTimer}}" id="upInTimerInput"
370 429 placeholder="请输入上行进场时间">
371 430 </div>
372 431 </div>
373 432 <!-- 上行进场时间 END -->
374   -</div>
375   -<!-- 表单分组组件 form-group END -->
376   -
377   -<!-- 表单分组组件 form-group START -->
378   -<div class="form-group">
379 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 436 <div class="col-md-5">
383 437 <input type="text" class="form-control" name="upOutTimer" value="{{map.upOutTimer}}" id="upOutTimerInput"
384 438 placeholder="请输入上行出场时间">
385 439 </div>
386 440 </div>
387 441 <!-- 上行出场时间 END -->
  442 +</div>
  443 +<!-- 表单分组组件 form-group END -->
  444 +
388 445  
  446 +<!-- 表单分组组件 form-group START -->
  447 +<div class="form-group">
389 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 451 <div class="col-md-5">
393 452 <input type="text" class="form-control" name="downInTimer" value="{{map.downInTimer}}" id="downInTimerInput"
394 453 placeholder="请输入下行进场时间">
... ... @@ -397,8 +456,8 @@
397 456 <!-- 下行进场时间 END -->
398 457  
399 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 461 <div class="col-md-5">
403 462 <input type="text" class="form-control" name="downOutTimer" value="{{map.downOutTimer}}" id="downOutTimerInput"
404 463 placeholder="请输入下行出场时间">
... ... @@ -408,11 +467,12 @@
408 467 </div>
409 468 <!-- 表单分组组件 form-group END -->
410 469  
  470 +
411 471 <!-- 表单分组组件 form-group START -->
412 472 <div class="form-group">
413 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 476 <div class="col-md-5">
417 477 <input type="text" class="form-control" name="upInMileage" value="{{map.upInMileage}}" id="upInlcInput"
418 478 placeholder="请输入上行进场里程">
... ... @@ -421,71 +481,51 @@
421 481 <!-- 上行进场里程 END -->
422 482  
423 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 486 <div class="col-md-5">
427 487 <input type="text" class="form-control" name="upOutMileage" value="{{map.upOutMileage}}" id="upOutlcInput"
428 488 placeholder="请输入上行出场里程">
429 489 </div>
430 490 </div>
431 491 <!-- 上行出场里程 END -->
  492 +</div>
  493 +<!-- 表单分组组件 form-group END -->
432 494  
  495 +<!-- 表单分组组件 form-group START -->
  496 +<div class="form-group">
433 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 500 <div class="col-md-5">
437 501 <input type="text" class="form-control" name="downInMileage" value="{{map.downInMileage}}" id="downInlcInput"
438 502 placeholder="请输入下行进场里程">
439 503 </div>
440 504 </div>
441 505 <!-- 下行进场里程 END -->
442   -</div>
443   -<!-- 表单分组组件 form-group END -->
444   -
445   -<!-- 表单分组组件 form-group START -->
446   -<div class="form-group">
  506 +
447 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 510 <div class="col-md-5">
451 511 <input type="text" class="form-control" name="downOutMileage" value="{{map.downOutMileage}}" id="downOutlcInput"
452 512 placeholder="请输入下行出场里程">
453 513 </div>
454 514 </div>
455 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 516 </div>
477 517 <!-- 表单分组组件 form-group END -->
478   -
  518 +
479 519  
480 520 <!-- 表单分组组件 form-group START -->
481 521 <div class="form-group">
482 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 526 <input type="text" value="" name="bxrc" id="state_tagsinput" style="display: none;">
487 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 529 <option value="">请选择工休类型...</option>
490 530 <option value="六工一休">六工一休</option>
491 531 <option value="五工一休">五工一休</option>
... ... @@ -498,7 +538,10 @@
498 538 </select>
499 539 </div>
500 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 545 </div>
503 546 <div class="margin-top-10">
504 547 <a href="javascript:;" class="btn red" id="state_tagsinput_add">添加</a>
... ... @@ -506,6 +549,17 @@
506 549 </div>
507 550 </div>
508 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 563 </div>
510 564 <!-- 表单分组组件 form-group END -->
511 565 </script>
... ... @@ -513,14 +567,14 @@
513 567 <script type="text/html" id="bctype_tempconfig">
514 568 <h4 class="form-section"> 时刻表与线路名称 </h4>
515 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 572 <div class="col-md-7">
519 573 <p class="form-control-static" data-display="skbName"> </p>
520 574 </div>
521 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 578 <div class="col-md-4">
525 579 <p class="form-control-static" data-display="lineName"> </p>
526 580 </div>
... ... @@ -529,25 +583,18 @@
529 583 <h4 class="form-section"> 参数详情 </h4>
530 584 <!-- 表单分组组件 form-group START -->
531 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 586 <!-- 线路规划类型 (* 必填项) END -->
540 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 590 <div class="col-md-4">
544 591 <p class="form-control-static" data-display="startStationFirstTime"> </p>
545 592 </div>
546 593 </div>
547 594 <!-- 起始站首班时间 (* 必填项) END -->
548 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 598 <div class="col-md-4">
552 599 <p class="form-control-static" data-display="startStationEndTime"> </p>
553 600 </div>
... ... @@ -559,53 +606,58 @@
559 606 <!-- 表单分组组件 form-group START -->
560 607 <div class="form-group">
561 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 611 <div class="col-md-4">
565 612 <p class="form-control-static" data-display="endStationFirstTime"> </p>
566 613 </div>
567 614 </div>
568 615 <!-- 终点站首班时间 (* 必填项) END -->
569 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 619 <div class="col-md-4">
573 620 <p class="form-control-static" data-display="endStationEndTime"> </p>
574 621 </div>
575 622 </div>
576 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 624 </div>
586 625 <!-- 表单分组组件 form-group END -->
587 626  
588 627 <!-- 表单分组组件 form-group START -->
589 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 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 640 <div class="col-md-4">
594 641 <p class="form-control-static" data-display="earlyEndTime"> </p>
595 642 </div>
596 643 </div>
597 644 <!-- 早高峰结束时间 (* 必填项) END -->
  645 +</div>
  646 +<!-- 表单分组组件 form-group END -->
  647 +
  648 +<!-- 表单分组组件 form-group START -->
  649 +<div class="form-group">
598 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 653 <div class="col-md-4">
602 654 <p class="form-control-static" data-display="lateStartTime"> </p>
603 655 </div>
604 656 </div>
605 657 <!-- 晚高峰开始时间(* 必填项) END -->
606 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 661 <div class="col-md-4">
610 662 <p class="form-control-static" data-display="lateEndTime"> </p>
611 663 </div>
... ... @@ -614,86 +666,102 @@
614 666 </div>
615 667 <!-- 表单分组组件 form-group END -->
616 668  
617   -
618 669 <!-- 表单分组组件 form-group START -->
619 670 <div class="form-group">
620 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 674 <div class="col-md-4">
624 675 <p class="form-control-static" data-display="upTravelTime"> </p>
625 676 </div>
626 677 </div>
627 678 <!-- 上行行驶时间(* 必填项) END -->
628 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 682 <div class="col-md-4">
632 683 <p class="form-control-static" data-display="downTravelTime"> </p>
633 684 </div>
634 685 </div>
635 686 <!-- 下行行驶时间(* 必填项) END -->
  687 +</div>
  688 +<!-- 表单分组组件 form-group END -->
  689 +
  690 +<!-- 表单分组组件 form-group START -->
  691 +<div class="form-group">
636 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 695 <div class="col-md-4">
640 696 <p class="form-control-static" data-display="upMileage"> </p>
641 697 </div>
642 698 </div>
643 699 <!-- 上行行驶里程(* 必填项) END-->
644   -</div>
645   -<!-- 表单分组组件 form-group END -->
646   -
647   -<!-- 表单分组组件 form-group START -->
648   -<div class="form-group">
649 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 703 <div class="col-md-4">
653 704 <p class="form-control-static" data-display="downMileage"> </p>
654 705 </div>
655 706 </div>
656 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 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 718 </div>
663 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 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 726 </div>
671 727 </div>
672   - <!-- 下行停站间隙(* 必填项) END -->
  728 + <!-- 高峰下行停站间隙(* 必填项) END -->
673 729 </div>
674 730 <!-- 表单分组组件 form-group END -->
675 731  
676 732 <!-- 表单分组组件 form-group START -->
677 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 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 747 </div>
684 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 761 </div>
693   - <!-- 最小停站间隙(* 必填项) END -->
694 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 765 <div class="col-md-7">
698 766 <p class="form-control-static" data-display="carPark"> </p>
699 767 </div>
... ... @@ -704,58 +772,83 @@
704 772  
705 773 <!-- 表单分组组件 form-group START -->
706 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 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 798 <div class="col-md-6">
711 799 <p class="form-control-static" data-display="earlyUpTime"> </p>
712 800 </div>
713 801 </div>
714 802 <!-- 早高峰上行时间 END -->
715 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 806 <div class="col-md-4">
719 807 <p class="form-control-static" data-display="earlyDownTime"> </p>
720 808 </div>
721 809 </div>
722 810 <!-- 早高峰下行时间 END -->
  811 +</div>
  812 +<!-- 表单分组组件 form-group END -->
  813 +
  814 +<!-- 表单分组组件 form-group START -->
  815 +<div class="form-group">
723 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 819 <div class="col-md-4">
727 820 <p class="form-control-static" data-display="lateUpTime"> </p>
728 821 </div>
729 822 </div>
730 823 <!-- 晚高峰上行时间 END -->
731   -</div>
732   -<!-- 表单分组组件 form-group END -->
733   -
734   -<!-- 表单分组组件 form-group START -->
735   -<div class="form-group">
736 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 827 <div class="col-md-4">
740 828 <p class="form-control-static" data-display="lateDownTime"> </p>
741 829 </div>
742 830 </div>
743 831 <!-- 晚高峰下行时间 END -->
  832 +</div>
  833 +<!-- 表单分组组件 form-group END -->
  834 +
  835 +<!-- 表单分组组件 form-group START -->
  836 +<div class="form-group">
744 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 840 <div class="col-md-4">
748 841 <p class="form-control-static" data-display="troughUpTime"> </p>
749 842 </div>
750 843 </div>
751 844 <!-- 低谷上行时间 END -->
752 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 848 <div class="col-md-4">
756 849 <p class="form-control-static" data-display="troughDownTime"> </p>
757 850 </div>
758   - </div>
  851 + </div>
759 852 <!-- 低谷下行时间 END -->
760 853 </div>
761 854 <!-- 表单分组组件 form-group END -->
... ... @@ -763,24 +856,37 @@
763 856 <!-- 表单分组组件 form-group START -->
764 857 <div class="form-group">
765 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 861 <div class="col-md-4">
769 862 <p class="form-control-static" data-display="qjUpTime"> </p>
770 863 </div>
771 864 </div>
772 865 <!-- 区间上行时间 END -->
773 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 869 <div class="col-md-4">
777 870 <p class="form-control-static" data-display="qjDownTime"> </p>
778 871 </div>
779 872 </div>
780 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 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 890 <div class="col-md-4">
785 891 <p class="form-control-static" data-display="kfsj"> </p>
786 892 </div>
... ... @@ -792,53 +898,58 @@
792 898 <!-- 表单分组组件 form-group START -->
793 899 <div class="form-group">
794 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 903 <div class="col-md-4">
798 904 <p class="form-control-static" data-display="workeLunch"> </p>
799 905 </div>
800 906 </div>
801 907 <!-- 工作餐午餐时间 END -->
802 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 911 <div class="col-md-4">
806 912 <p class="form-control-static" data-display="workeDinner"> </p>
807 913 </div>
808 914 </div>
809 915 <!-- 空放行驶时间 END -->
  916 +</div>
  917 +<!-- 表单分组组件 form-group END -->
  918 +
  919 +<!-- 表单分组组件 form-group START -->
  920 +<div class="form-group">
810 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 924 <div class="col-md-4">
814 925 <p class="form-control-static" data-display="upInTimer"> </p>
815 926 </div>
816 927 </div>
817 928 <!-- 上行进场时间 END -->
818   -</div>
819   -<!-- 表单分组组件 form-group END -->
820   -
821   -<!-- 表单分组组件 form-group START -->
822   -<div class="form-group">
823 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 932 <div class="col-md-4">
827 933 <p class="form-control-static" data-display="upOutTimer"> </p>
828 934 </div>
829 935 </div>
830 936 <!-- 上行出场时间 END -->
  937 +</div>
  938 +<!-- 表单分组组件 form-group END -->
  939 +
  940 +<!-- 表单分组组件 form-group START -->
  941 +<div class="form-group">
831 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 945 <div class="col-md-4">
835 946 <p class="form-control-static" data-display="downInTimer"> </p>
836 947 </div>
837 948 </div>
838 949 <!-- 下行进场时间 END -->
839 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 953 <div class="col-md-4">
843 954 <p class="form-control-static" data-display="downOutTimer"> </p>
844 955 </div>
... ... @@ -850,66 +961,59 @@
850 961 <!-- 表单分组组件 form-group START -->
851 962 <div class="form-group">
852 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 966 <div class="col-md-4">
856 967 <p class="form-control-static" data-display="upInMileage"> </p>
857 968 </div>
858 969 </div>
859 970 <!-- 上行进场里程 END -->
860 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 974 <div class="col-md-4">
864 975 <p class="form-control-static" data-display="upOutMileage"> </p>
865 976 </div>
866 977 </div>
867 978 <!-- 上行出场里程 END -->
  979 +</div>
  980 +<!-- 表单分组组件 form-group END -->
  981 +
  982 +<!-- 表单分组组件 form-group START -->
  983 +<div class="form-group">
868 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 987 <div class="col-md-4">
872 988 <p class="form-control-static" data-display="downInMileage"> </p>
873 989 </div>
874 990 </div>
875 991 <!-- 下行进场里程 END -->
876   -</div>
877   -<!-- 表单分组组件 form-group END -->
878   -
879   -<!-- 表单分组组件 form-group START -->
880   -<div class="form-group">
881 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 995 <div class="col-md-4">
885 996 <p class="form-control-static" data-display="downOutMileage"> </p>
886 997 </div>
887 998 </div>
888 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 1006 <!-- 班型与人次 START -->
898 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 1010 <p class="form-control-static" data-display="bxrc"> </p>
902 1011 </div>
903 1012 </div>
904 1013 <!-- 班型与人次 END -->
905   -</div>
906   -<!-- 表单分组组件 form-group END -->
907   -
908   -<!-- 表单分组组件 form-group START -->
909   -<div class="form-group">
910 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 1017 <div class="col-md-4">
914 1018 <p class="form-control-static" data-display="clzs"> </p>
915 1019 </div>
... ...
src/main/resources/static/pages/base/timesmodel/tepms/carnum_temp.html
1 1 <script type="text/html" id = "carnum_temp">
2 2 <!-- 表单分组组件 form-group START -->
3 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 4 <!-- 起始站首班时间 (* 必填项) START -->
19   - <div class="col-md-4">
  5 + <div class="col-md-6">
20 6 <label class="control-label col-md-5">
21 7 <span class="required"> * </span> 起始站首班时间:
22 8 </label>
... ... @@ -27,7 +13,7 @@
27 13 </div>
28 14 <!-- 起始站首班时间 (* 必填项) END -->
29 15 <!-- 起始站末班时间 (* 必填项) START -->
30   - <div class="col-md-4">
  16 + <div class="col-md-6">
31 17 <label class="control-label col-md-5">
32 18 <span class="required"> * </span> 起始站末班时间:
33 19 </label>
... ... @@ -43,7 +29,7 @@
43 29 <!-- 表单分组组件 form-group START -->
44 30 <div class="form-group">
45 31 <!-- 终点站首班时间 (* 必填项) START -->
46   - <div class="col-md-4">
  32 + <div class="col-md-6">
47 33 <label class="control-label col-md-5">
48 34 <span class="required"> * </span> 终点站首班时间:
49 35 </label>
... ... @@ -54,7 +40,7 @@
54 40 </div>
55 41 <!-- 终点站首班时间 (* 必填项) END -->
56 42 <!-- 终点站末班时间 (* 必填项) START -->
57   - <div class="col-md-4">
  43 + <div class="col-md-6">
58 44 <label class="control-label col-md-5">
59 45 <span class="required"> * </span> 终点站末班时间:
60 46 </label>
... ... @@ -64,8 +50,13 @@
64 50 </div>
65 51 </div>
66 52 <!-- 终点站末班时间 (* 必填项) END -->
  53 +</div>
  54 +<!-- 表单分组组件 form-group END -->
  55 +
  56 +<!-- 表单分组组件 form-group START -->
  57 +<div class="form-group">
67 58 <!-- 早高峰开始时间 (* 必填项) START -->
68   - <div class="col-md-4">
  59 + <div class="col-md-6">
69 60 <label class="control-label col-md-5">
70 61 <span class="required"> * </span> 早高峰开始时间:
71 62 </label>
... ... @@ -75,13 +66,8 @@
75 66 </div>
76 67 </div>
77 68 <!-- 早高峰开始时间 (* 必填项) END -->
78   -</div>
79   -<!-- 表单分组组件 form-group END -->
80   -
81   -<!-- 表单分组组件 form-group START -->
82   -<div class="form-group">
83 69 <!-- 早高峰结束时间 (* 必填项) START -->
84   - <div class="col-md-4">
  70 + <div class="col-md-6">
85 71 <label class="control-label col-md-5">
86 72 <span class="required"> * </span> 早高峰结束时间:
87 73 </label>
... ... @@ -91,8 +77,13 @@
91 77 </div>
92 78 </div>
93 79 <!-- 早高峰结束时间 (* 必填项) END -->
  80 +</div>
  81 +<!-- 表单分组组件 form-group END -->
  82 +
  83 +<!-- 表单分组组件 form-group START -->
  84 +<div class="form-group">
94 85 <!-- 晚高峰开始时间 (* 必填项) START -->
95   - <div class="col-md-4">
  86 + <div class="col-md-6">
96 87 <label class="control-label col-md-5">
97 88 <span class="required"> * </span> 晚高峰开始时间:
98 89 </label>
... ... @@ -103,7 +94,7 @@
103 94 </div>
104 95 <!-- 晚高峰开始时间 (* 必填项) END -->
105 96 <!-- 晚高峰结束 (* 必填项) START -->
106   - <div class="col-md-4">
  97 + <div class="col-md-6">
107 98 <label class="control-label col-md-5">
108 99 <span class="required"> * </span> 晚高峰结束时间:
109 100 </label>
... ... @@ -114,12 +105,12 @@
114 105 </div>
115 106 <!-- 晚高峰结束 (* 必填项) END -->
116 107 </div>
117   -<!-- 表单分组组件 form-group END -->
  108 + <!-- 表单分组组件 form-group END -->
118 109  
119 110 <!-- 表单分组组件 form-group START -->
120 111 <div class="form-group">
121 112 <!-- 早高峰前配车数 (* 必填项) START -->
122   - <div class="col-md-4">
  113 + <div class="col-md-6">
123 114 <label class="control-label col-md-5">
124 115 <span class="required"> * </span> 早高峰前配车数:
125 116 </label>
... ... @@ -130,7 +121,7 @@
130 121 </div>
131 122 <!-- 营运开始配车数 (* 必填项) END -->
132 123 <!-- 早高峰配车数 (* 必填项) START -->
133   - <div class="col-md-4">
  124 + <div class="col-md-6">
134 125 <label class="control-label col-md-5">
135 126 <span class="required"> * </span> 早高峰配车数&nbsp;&nbsp;&nbsp;:
136 127 </label>
... ... @@ -140,8 +131,13 @@
140 131 </div>
141 132 </div>
142 133 <!-- 早高峰配车数 (* 必填项) END -->
  134 +</div>
  135 + <!-- 表单分组组件 form-group END -->
  136 +
  137 +<!-- 表单分组组件 form-group START -->
  138 +<div class="form-group">
143 139 <!-- 高峰之间配车数(* 必填项) START -->
144   - <div class="col-md-4">
  140 + <div class="col-md-6">
145 141 <label class="control-label col-md-5">
146 142 <span class="required"> * </span> 高峰之间配车数:
147 143 </label>
... ... @@ -151,13 +147,8 @@
151 147 </div>
152 148 </div>
153 149 <!-- 高峰之间配车数 (* 必填项) END -->
154   -</div>
155   - <!-- 表单分组组件 form-group END -->
156   -
157   -<!-- 表单分组组件 form-group START -->
158   -<div class="form-group">
159 150 <!-- 晚高峰配车数 (* 必填项) START -->
160   - <div class="col-md-4">
  151 + <div class="col-md-6">
161 152 <label class="control-label col-md-5">
162 153 <span class="required"> * </span> 晚高峰配车数&nbsp;&nbsp;&nbsp;:
163 154 </label>
... ... @@ -167,8 +158,13 @@
167 158 </div>
168 159 </div>
169 160 <!-- 晚高峰配车数 (* 必填项) END -->
  161 +</div>
  162 +<!-- 表单分组组件 form-group END -->
  163 +
  164 +<!-- 表单分组组件 form-group START -->
  165 +<div class="form-group">
170 166 <!-- 晚高峰后配车数 (* 必填项) START -->
171   - <div class="col-md-4">
  167 + <div class="col-md-6">
172 168 <label class="control-label col-md-5">
173 169 <span class="required"> * </span> 晚高峰后配车数:
174 170 </label>
... ... @@ -178,8 +174,27 @@
178 174 </div>
179 175 </div>
180 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 196 <!-- 上行行驶时间(* 必填项) START -->
182   - <div class="col-md-4">
  197 + <div class="col-md-6">
183 198 <label class="control-label col-md-5">
184 199 <span class="required"> * </span> 上行行驶时间&nbsp;&nbsp;&nbsp;:
185 200 </label>
... ... @@ -189,13 +204,8 @@
189 204 </div>
190 205 </div>
191 206 <!-- 上行行驶时间 (* 必填项) END -->
192   -</div>
193   -<!-- 表单分组组件 form-group END -->
194   -
195   -<!-- 表单分组组件 form-group START -->
196   -<div class="form-group">
197 207 <!-- 下行行驶时间 (* 必填项) START -->
198   - <div class="col-md-4">
  208 + <div class="col-md-6">
199 209 <label class="control-label col-md-5">
200 210 <span class="required"> * </span> 下行行驶时间&nbsp;&nbsp;&nbsp;:
201 211 </label>
... ... @@ -205,8 +215,13 @@
205 215 </div>
206 216 </div>
207 217 <!-- 下行行驶时间(* 必填项) END -->
  218 +</div>
  219 +<!-- 表单分组组件 form-group END -->
  220 +
  221 +<!-- 表单分组组件 form-group START -->
  222 +<div class="form-group">
208 223 <!-- 上行里程(* 必填项) START -->
209   - <div class="col-md-4">
  224 + <div class="col-md-6">
210 225 <label class="control-label col-md-5">
211 226 <span class="required"> * </span> 上行行驶里程&nbsp;&nbsp;&nbsp;:
212 227 </label>
... ... @@ -217,7 +232,7 @@
217 232 </div>
218 233 <!-- 上行里程 (* 必填项) END -->
219 234 <!-- 下行里程 (* 必填项) START -->
220   - <div class="col-md-4">
  235 + <div class="col-md-6">
221 236 <label class="control-label col-md-5">
222 237 <span class="required"> * </span> 下行行驶里程&nbsp;&nbsp;&nbsp;:
223 238 </label>
... ... @@ -230,81 +245,118 @@
230 245 </div>
231 246 <!-- 表单分组组件 form-group END -->
232 247  
  248 +
233 249 <!-- 表单分组组件 form-group START -->
234 250 <div class="form-group">
235 251 <!-- 上行停站间隙 (* 必填项) START -->
236   - <div class="col-md-4">
  252 + <div class="col-md-6">
237 253 <label class="control-label col-md-5">
238 254 <span class="required"> * </span> 上行停站间隙&nbsp;&nbsp;&nbsp;:
239 255 </label>
240 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 258 placeholder="请输入上行停站间隙">
243 259 </div>
244 260 </div>
245 261 <!-- 上行停站间隙 (* 必填项) END -->
246   -
247 262 <!-- 下行停站间隙 (* 必填项) START -->
248   - <div class="col-md-4">
  263 + <div class="col-md-6">
249 264 <label class="control-label col-md-5">
250 265 <span class="required"> * </span> 下行停站间隙&nbsp;&nbsp;&nbsp;:
251 266 </label>
252 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 269 placeholder="请输入下行停站间隙">
255 270 </div>
256 271 </div>
257 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 273 </div>
270 274 <!-- 表单分组组件 form-group END -->
271 275  
272 276 <!-- 表单分组组件 form-group START -->
273 277 <div class="form-group">
274   - <!-- 最小停站间隙(* 必填项) START -->
275   - <div class="col-md-4">
  278 + <!-- 高峰停站间隙(* 必填项) START -->
  279 + <div class="col-md-6">
276 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 282 </label>
279 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 285 </div>
282 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 304 <!-- 停车场(* 必填项) START -->
285   - <div class="col-md-4">
  305 + <div class="col-md-6">
286 306 <label class="control-label col-md-5">停车场&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</label>
287 307 <div class="col-md-5">
288 308 <select name="carPark" class="form-control" id="carParkSelect" style="width:100%"></select>
289 309 </div>
290 310 </div>
291 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 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 318 </div>
299 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 344 </div>
302 345 <!-- 表单分组组件 form-group END -->
303 346  
304 347 <!-- 表单分组组件 form-group START -->
305 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 358 <!-- 早高峰下行时间(* 必填项) START -->
307   - <div class="col-md-4">
  359 + <div class="col-md-6">
308 360 <label class="control-label col-md-5">早高峰下行时间:</label>
309 361 <div class="col-md-5">
310 362 <input type="text" class="form-control" name="earlyDownTime" value="{{map.earlyDownTime}}" id="earlyDownTimeInput"
... ... @@ -312,8 +364,13 @@
312 364 </div>
313 365 </div>
314 366 <!-- 早高峰下行时间(* 必填项) END -->
  367 +</div>
  368 +<!-- 表单分组组件 form-group END -->
  369 +
  370 +<!-- 表单分组组件 form-group START -->
  371 +<div class="form-group">
315 372 <!-- 晚高峰上行时间 (* 必填项) START -->
316   - <div class="col-md-4">
  373 + <div class="col-md-6">
317 374 <label class="control-label col-md-5">晚高峰上行时间:</label>
318 375 <div class="col-md-5">
319 376 <input type="text" class="form-control" name="lateUpTime" value="{{map.lateUpTime}}" id="lateUpTimeInput"
... ... @@ -322,7 +379,7 @@
322 379 </div>
323 380 <!-- 晚高峰上行时间(* 必填项) END -->
324 381 <!-- 晚高峰下行时间 (* 必填项) START -->
325   - <div class="col-md-4">
  382 + <div class="col-md-6">
326 383 <label class="control-label col-md-5">晚高峰下行时间:</label>
327 384 <div class="col-md-5">
328 385 <input type="text" class="form-control" name="lateDownTime" value="{{map.lateDownTime}}" id="lateDownTimeInput"
... ... @@ -333,10 +390,11 @@
333 390 </div>
334 391 <!-- 表单分组组件 form-group END -->
335 392  
  393 +
336 394 <!-- 表单分组组件 form-group START -->
337 395 <div class="form-group">
338 396 <!-- 低谷上行时间 START -->
339   - <div class="col-md-4">
  397 + <div class="col-md-6">
340 398 <label class="control-label col-md-5">低谷上行时间&nbsp;&nbsp;&nbsp;:</label>
341 399 <div class="col-md-5">
342 400 <input type="text" class="form-control" name="troughUpTime" value="{{map.troughUpTime}}" id="troughUpTimeInput"
... ... @@ -345,7 +403,7 @@
345 403 </div>
346 404 <!-- 低谷上行时间 END -->
347 405 <!-- 低谷下行时间 START -->
348   - <div class="col-md-4">
  406 + <div class="col-md-6">
349 407 <label class="control-label col-md-5">低谷下行时间&nbsp;&nbsp;&nbsp;:</label>
350 408 <div class="col-md-5">
351 409 <input type="text" class="form-control" name="troughDownTime" value="{{map.troughDownTime}}" id="troughDownTimeInput"
... ... @@ -353,8 +411,14 @@
353 411 </div>
354 412 </div>
355 413 <!-- 低谷下行时间 END -->
  414 +
  415 +</div>
  416 +<!-- 表单分组组件 form-group END -->
  417 +
  418 +<!-- 表单分组组件 form-group START -->
  419 +<div class="form-group">
356 420 <!-- 区间上行时间 START -->
357   - <div class="col-md-4">
  421 + <div class="col-md-6">
358 422 <label class="control-label col-md-5">区间上行时间&nbsp;&nbsp;&nbsp;:</label>
359 423 <div class="col-md-5">
360 424 <input type="text" class="form-control" name="qjUpTime" id="qjUpTimeInput"
... ... @@ -362,13 +426,8 @@
362 426 </div>
363 427 </div>
364 428 <!-- 区间上行时间 END -->
365   -</div>
366   -<!-- 表单分组组件 form-group END -->
367   -
368   -<!-- 表单分组组件 form-group START -->
369   -<div class="form-group">
370 429 <!-- 区间下行时间 START -->
371   - <div class="col-md-4">
  430 + <div class="col-md-6">
372 431 <label class="control-label col-md-5">区间下行时间&nbsp;&nbsp;&nbsp;:</label>
373 432 <div class="col-md-5">
374 433 <input type="text" class="form-control" name="qjDownTime" id="qjDownTimeInput"
... ... @@ -376,17 +435,13 @@
376 435 </div>
377 436 </div>
378 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 443 <!-- 工作餐午餐时间 START -->
389   - <div class="col-md-4">
  444 + <div class="col-md-6">
390 445 <label class="control-label col-md-5">工作餐午餐时间:</label>
391 446 <div class="col-md-5">
392 447 <input type="text" class="form-control" name="workeLunch" value="{{map.workeLunch}}" id="workeLunchInput"
... ... @@ -394,13 +449,8 @@
394 449 </div>
395 450 </div>
396 451 <!-- 工作餐午餐时间 END -->
397   -</div>
398   -<!-- 表单分组组件 form-group END -->
399   -
400   -<!-- 表单分组组件 form-group START -->
401   -<div class="form-group">
402 452 <!-- 工作餐晚餐时间 START -->
403   - <div class="col-md-4">
  453 + <div class="col-md-6">
404 454 <label class="control-label col-md-5">工作餐晚餐时间:</label>
405 455 <div class="col-md-5">
406 456 <input type="text" class="form-control" name="workeDinner" value="{{map.workeDinner}}" id="workeDinnerInput"
... ... @@ -408,8 +458,13 @@
408 458 </div>
409 459 </div>
410 460 <!-- 工作餐晚餐时间 END -->
  461 +</div>
  462 +<!-- 表单分组组件 form-group END -->
  463 +
  464 +<!-- 表单分组组件 form-group START -->
  465 +<div class="form-group">
411 466 <!-- 上行进场时间 START -->
412   - <div class="col-md-4">
  467 + <div class="col-md-6">
413 468 <label class="control-label col-md-5">上行进场时间&nbsp;&nbsp;&nbsp;:</label>
414 469 <div class="col-md-5">
415 470 <input type="text" class="form-control" name="upInTimer" value="{{map.upInTimer}}" id="upInTimerInput"
... ... @@ -418,7 +473,7 @@
418 473 </div>
419 474 <!-- 上行进场时间 END -->
420 475 <!-- 上行出场时间 START -->
421   - <div class="col-md-4">
  476 + <div class="col-md-6">
422 477 <label class="control-label col-md-5">上行出场时间&nbsp;&nbsp;&nbsp;:</label>
423 478 <div class="col-md-5">
424 479 <input type="text" class="form-control" name="upOutTimer" value="{{map.upOutTimer}}" id="upOutTimerInput"
... ... @@ -432,7 +487,7 @@
432 487 <!-- 表单分组组件 form-group START -->
433 488 <div class="form-group">
434 489 <!-- 下行进场时间 START -->
435   - <div class="col-md-4">
  490 + <div class="col-md-6">
436 491 <label class="control-label col-md-5">下行进场时间&nbsp;&nbsp;&nbsp;:</label>
437 492 <div class="col-md-5">
438 493 <input type="text" class="form-control" name="downInTimer" value="{{map.downInTimer}}" id="downInTimerInput"
... ... @@ -441,7 +496,7 @@
441 496 </div>
442 497 <!-- 下行进场时间 END -->
443 498 <!-- 下行出场时间 START -->
444   - <div class="col-md-4">
  499 + <div class="col-md-6">
445 500 <label class="control-label col-md-5">下行出场时间&nbsp;&nbsp;&nbsp;:</label>
446 501 <div class="col-md-5">
447 502 <input type="text" class="form-control" name="downOutTimer" value="{{map.downOutTimer}}" id="downOutTimerInput"
... ... @@ -449,8 +504,13 @@
449 504 </div>
450 505 </div>
451 506 <!-- 下行出场时间 END -->
  507 +</div>
  508 +<!-- 表单分组组件 form-group END -->
  509 +
  510 +<!-- 表单分组组件 form-group START -->
  511 +<div class="form-group">
452 512 <!-- 上行进场里程 START -->
453   - <div class="col-md-4">
  513 + <div class="col-md-6">
454 514 <label class="control-label col-md-5">上行进场里程&nbsp;&nbsp;&nbsp;:</label>
455 515 <div class="col-md-5">
456 516 <input type="text" class="form-control" name="upInMileage" value="{{map.upInMileage}}" id="upInlcInput"
... ... @@ -458,13 +518,8 @@
458 518 </div>
459 519 </div>
460 520 <!-- 上行进场里程 END -->
461   -</div>
462   -<!-- 表单分组组件 form-group END -->
463   -
464   -<!-- 表单分组组件 form-group START -->
465   -<div class="form-group">
466 521 <!-- 上行出场里程 START -->
467   - <div class="col-md-4">
  522 + <div class="col-md-6">
468 523 <label class="control-label col-md-5">上行出场里程&nbsp;&nbsp;&nbsp;:</label>
469 524 <div class="col-md-5">
470 525 <input type="text" class="form-control" name="upOutMileage" value="{{map.upOutMileage}}" id="upOutlcInput"
... ... @@ -472,8 +527,13 @@
472 527 </div>
473 528 </div>
474 529 <!-- 上行出场里程 END -->
  530 +</div>
  531 +<!-- 表单分组组件 form-group END -->
  532 +
  533 +<!-- 表单分组组件 form-group START -->
  534 +<div class="form-group">
475 535 <!-- 下行进场里程 START -->
476   - <div class="col-md-4">
  536 + <div class="col-md-6">
477 537 <label class="control-label col-md-5">下行进场里程&nbsp;&nbsp;&nbsp;:</label>
478 538 <div class="col-md-5">
479 539 <input type="text" class="form-control" name="downInMileage" value="{{map.downInMileage}}" id="downInlcInput"
... ... @@ -482,7 +542,7 @@
482 542 </div>
483 543 <!-- 下行进场里程 END -->
484 544 <!-- 下行出场里程 START -->
485   - <div class="col-md-4">
  545 + <div class="col-md-6">
486 546 <label class="control-label col-md-5">下行出场里程&nbsp;&nbsp;&nbsp;:</label>
487 547 <div class="col-md-5">
488 548 <input type="text" class="form-control" name="downOutMileage" value="{{map.downOutMileage}}" id="downOutlcInput"
... ... @@ -496,7 +556,7 @@
496 556 <!-- 表单分组组件 form-group START -->
497 557 <div class="form-group">
498 558 <!-- 早晚例行保养 START -->
499   - <div class="col-md-4">
  559 + <div class="col-md-6">
500 560 <label class="control-label col-md-5">早晚例行保养&nbsp;&nbsp;&nbsp;:</label>
501 561 <div class="col-md-5">
502 562 <input type="text" class="form-control" name="lb" value="{{map.lb}}" id="lbInput"
... ... @@ -722,27 +782,27 @@
722 782 </div>
723 783 </div>
724 784 <!-- 下行停站间隙(* 必填项) END -->
725   - <!-- 最大停站间隙(* 必填项) START -->
  785 + <!-- 低谷停站间隙(* 必填项) START -->
726 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 788 <div class="col-md-4">
729 789 <p class="form-control-static" data-display="maxstopTime"> </p>
730 790 </div>
731 791 </div>
732   - <!-- 最大停站间隙(* 必填项) END -->
  792 + <!-- 低谷停站间隙(* 必填项) END -->
733 793 </div>
734 794 <!-- 表单分组组件 form-group END -->
735 795  
736 796 <!-- 表单分组组件 form-group START -->
737 797 <div class="form-group">
738   - <!-- 最小停站间隙(* 必填项) START -->
  798 + <!-- 高峰停站间隙(* 必填项) START -->
739 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 801 <div class="col-md-4">
742 802 <p class="form-control-static" data-display="mixstopTime"> </p>
743 803 </div>
744 804 </div>
745   - <!-- 最小停站间隙(* 必填项) END -->
  805 + <!-- 高峰停站间隙(* 必填项) END -->
746 806 <!-- 停车场 START -->
747 807 <div class="col-md-4">
748 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 365 font-size: 18px !important;
366 366 font-family: Microsoft Yahei !important;
367 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 485 \ No newline at end of file
... ...
src/main/resources/static/real_control_v2/fragments/north/nav/history_sch_maintain.html
1 1 <div class="uk-modal ct_move_modal" id="history-sch-maintain-modal">
2 2 <div class="uk-modal-dialog" style="width: 1180px;">
3 3 <a href="" class="uk-modal-close uk-close"></a>
  4 + <div class="uk-modal-header">
4 5 <h2>历史路单维护</h2>
  6 + </div>
5 7  
6 8 <div style="padding-left: 12px;margin: 20px 0">
7 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 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 28 "event": "history_sch_maintain"
29 29 },
30 30 {
  31 + "id": 1.41,
  32 + "text": "班次修正日志",
  33 + "event": "sch_edit_info"
  34 + },
  35 + {
31 36 "id": 1.5,
32 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 169 function showUpdateDescription() {
170 170 //更新说明
171 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 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 231 },
232 232 data_move_and_verification: function () {
233 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  
... ...