Commit 7a72d561867ec81f84e2be373d317fb45574ed2a

Authored by 潘钊
1 parent f0a0253e

update

src/main/java/com/bsth/controller/realcontrol/LineConfigController.java
... ... @@ -34,4 +34,9 @@ public class LineConfigController extends BaseController<LineConfig, Integer>{
34 34 public Map<String, Object> editStartOptTime(@RequestParam String time,@RequestParam String lineCode){
35 35 return lineConfigService.editStartOptTime(time, lineCode);
36 36 }
  37 +
  38 + @RequestMapping(value = "/editOutTimeType", method = RequestMethod.POST)
  39 + public Map<String, Object> editOutTimeType(@RequestParam String lineCode, @RequestParam int type){
  40 + return lineConfigService.editOutTimeType(lineCode, type);
  41 + }
37 42 }
... ...
src/main/java/com/bsth/data/gpsdata/GpsRealData.java
... ... @@ -63,7 +63,7 @@ public class GpsRealData implements CommandLineRunner{
63 63 @Override
64 64 public void run(String... arg0) throws Exception {
65 65 logger.info("gpsDataLoader,20,8");
66   - Application.mainServices.scheduleWithFixedDelay(gpsDataLoader, 20, 8, TimeUnit.SECONDS);
  66 + //Application.mainServices.scheduleWithFixedDelay(gpsDataLoader, 20, 8, TimeUnit.SECONDS);
67 67 }
68 68  
69 69 public static GpsEntity add(GpsEntity gps) {
... ...
src/main/java/com/bsth/data/match/Arrival2Schedule.java
... ... @@ -158,7 +158,6 @@ public class Arrival2Schedule implements ApplicationContextAware {
158 158  
159 159 //漂移判定
160 160 if(driftCheck(mr, arr)){
161   -
162 161 mr.sch.setFcsjActualAll(mr.ts);
163 162 //通知客户端
164 163 sendUtils.sendFcsj(mr.sch);
... ...
src/main/java/com/bsth/data/schedule/DayOfSchedule.java
... ... @@ -62,15 +62,11 @@ public class DayOfSchedule implements CommandLineRunner {
62 62 public static LinkedList<ScheduleRealInfo> pstBuffer;
63 63  
64 64 // 排序器
65   - private static ScheduleComparator.FCNO schNoComparator;
66   - //private static ScheduleComparator.FCSJ schFcsjComparator;
  65 + private static ScheduleComparator.FCSJ schFCSJComparator;
67 66  
68 67 @Autowired
69 68 LineConfigData lineConfigData;
70 69  
71   - /*@Autowired
72   - ScheduleRealInfoService scheduleRealService;*/
73   -
74 70 @Autowired
75 71 ScheduleRealInfoRepository schRepository;
76 72  
... ... @@ -90,7 +86,7 @@ public class DayOfSchedule implements CommandLineRunner {
90 86 nbbmScheduleMap = ArrayListMultimap.create();
91 87 id2SchedulMap = new HashMap<>();
92 88 pstBuffer = new LinkedList<>();
93   - schNoComparator = new ScheduleComparator.FCNO();
  89 + schFCSJComparator = new ScheduleComparator.FCSJ();
94 90 currSchDateMap = new HashMap<>();
95 91 nbbm2SEStationMap = TreeMultimap.create();
96 92 }
... ... @@ -167,11 +163,18 @@ public class DayOfSchedule implements CommandLineRunner {
167 163 //添加到缓存
168 164 putAll(list);
169 165  
170   - //计算“起点站应到”时间
171 166 Set<String> cars = searchAllCars(list);
  167 + //计算“起点站应到”时间
172 168 for(String nbbm : cars)
173 169 schAttrCalculator.calcQdzTimePlan(nbbmScheduleMap.get(nbbm));
174 170  
  171 + //是否是出站即出场
  172 + LineConfig conf = lineConfigData.get(lineCode);
  173 + if(conf.getOutConfig() == 2){
  174 + for(String nbbm : cars)
  175 + schAttrCalculator.connectOutSchedule(nbbmScheduleMap.get(nbbm));
  176 + }
  177 +
175 178 // 页面 翻班通知
176 179 sendUtils.shiftSchedule(lineCode);
177 180 } catch (Exception e) {
... ... @@ -290,6 +293,9 @@ public class DayOfSchedule implements CommandLineRunner {
290 293 logger.error("loadPlanSch... 计算终点时间失败...");
291 294 }
292 295 }
  296 + //计划里程为0,直接清空
  297 + if(sch.getJhlc() != null && sch.getJhlc() == 0)
  298 + sch.setJhlc(null);
293 299 }
294 300 } catch (Exception e) {
295 301 logger.error("", e);
... ... @@ -418,28 +424,6 @@ public class DayOfSchedule implements CommandLineRunner {
418 424 return next;
419 425 }
420 426  
421   - /**
422   - *
423   - * @Title: prveRealSch
424   - * @Description: TODO(获取上一个已实际发出的班次)
425   - */
426   -/* public ScheduleRealInfo prveSjfc(ScheduleRealInfo sch) {
427   - List<ScheduleRealInfo> list = nbbmScheduleMap.get(sch.getClZbh());
428   - // 排序
429   - Collections.sort(list, schNoComparator);
430   -
431   - ScheduleRealInfo prve = null;
432   -
433   - int i = list.indexOf(sch);
434   - for (; i >= 0; i--){
435   - if (list.get(i).getFcsjActual() != null){
436   - prve = list.get(i);
437   - break;
438   - }
439   - }
440   - return prve;
441   - }*/
442   -
443 427 public void put(ScheduleRealInfo sch) {
444 428 schAttrCalculator
445 429 .calcRealDate(sch)
... ... @@ -466,7 +450,7 @@ public class DayOfSchedule implements CommandLineRunner {
466 450 public List<ScheduleRealInfo> nextAll(ScheduleRealInfo sch) {
467 451 List<ScheduleRealInfo> list = nbbmScheduleMap.get(sch.getClZbh());
468 452 // 排序
469   - Collections.sort(list, schNoComparator);
  453 + Collections.sort(list, schFCSJComparator);
470 454  
471 455 List<ScheduleRealInfo> rs = new ArrayList<>();
472 456 ScheduleRealInfo temp;
... ... @@ -554,33 +538,6 @@ public class DayOfSchedule implements CommandLineRunner {
554 538 pstBuffer.add(sch);
555 539 }
556 540  
557   - /**
558   - *
559   - * @Title: outSch
560   - * @Description: TODO(出场班次)
561   - */
562   -/* public List<ScheduleRealInfo> outSch(String nbbm){
563   - List<ScheduleRealInfo> all = nbbmScheduleMap.get(nbbm)
564   - ,outList = new ArrayList<>();
565   -
566   - for(ScheduleRealInfo sch : all){
567   - if(sch.getBcType().equals("out"))
568   - outList.add(sch);
569   - }
570   - return outList;
571   - }
572   -
573   - public ScheduleRealInfo nextOut(String nbbm){
574   - List<ScheduleRealInfo> list = outSch(nbbm);
575   - Collections.sort(list, schNoComparator);
576   - ScheduleRealInfo sch = null;
577   - for(ScheduleRealInfo temp : list){
578   - if(temp.getFcsjActual() == null)
579   - sch = temp;
580   - }
581   -
582   - return sch;
583   - }*/
584 541  
585 542 /**
586 543 *
... ... @@ -590,7 +547,7 @@ public class DayOfSchedule implements CommandLineRunner {
590 547 public ScheduleRealInfo nextByBcType(String nbbm, String bcType){
591 548 List<ScheduleRealInfo> list = findByBcType(nbbm, bcType);
592 549  
593   - Collections.sort(list, schNoComparator);
  550 + Collections.sort(list, schFCSJComparator);
594 551 ScheduleRealInfo sch = null;
595 552 for(ScheduleRealInfo temp : list){
596 553 if(temp.getFcsjActual() == null)
... ...
src/main/java/com/bsth/data/schedule/SchAttrCalculator.java
... ... @@ -87,7 +87,7 @@ public class SchAttrCalculator {
87 87 * @Description: TODO(计算班次的起点应到时间,list 必须是同一辆车的班次)
88 88 */
89 89 public void calcQdzTimePlan(List<ScheduleRealInfo> list){
90   - Collections.sort(list, new ScheduleComparator.FCNO());
  90 + Collections.sort(list, new ScheduleComparator.FCSJ());
91 91  
92 92 int len = list.size();
93 93 if(len == 0)
... ... @@ -102,6 +102,34 @@ public class SchAttrCalculator {
102 102 prve = curr;
103 103 }
104 104 }
  105 +
  106 + /**
  107 + *
  108 + * @Title: connectOutSchedule
  109 + * @Description: TODO(关联出场班次)
  110 + */
  111 + public void connectOutSchedule(List<ScheduleRealInfo> list){
  112 + Collections.sort(list, new ScheduleComparator.FCSJ());
  113 +
  114 + int len = list.size();
  115 + if(len == 0)
  116 + return;
  117 +
  118 + ScheduleRealInfo prve = list.get(0), curr;
  119 + for(int i = 1; i < len; i ++){
  120 + curr = list.get(i);
  121 +
  122 + //出站即出场关联
  123 + if(prve.getBcType().equals("out") && prve.getJhlc() == null)
  124 + curr.setTwinsSch(prve);
  125 +
  126 + //进站即进场关联
  127 + if(curr.getBcType().equals("in") && curr.getJhlc() == null)
  128 + prve.setTwinsSch(curr);
  129 +
  130 + prve = curr;
  131 + }
  132 + }
105 133  
106 134 public SchAttrCalculator calcFcsjTime(ScheduleRealInfo sch) throws ParseException {
107 135 sch.setFcsjT(DateUtils.sdfyyyyMMddHHmm.parse(sch.getRealExecDate() + sch.getFcsj()).getTime());
... ...
src/main/java/com/bsth/data/schedule/ScheduleComparator.java
... ... @@ -14,12 +14,12 @@ import com.bsth.entity.realcontrol.ScheduleRealInfo;
14 14 */
15 15 public class ScheduleComparator {
16 16  
17   - public static class FCNO implements Comparator<ScheduleRealInfo>{
  17 +/* public static class FCNO implements Comparator<ScheduleRealInfo>{
18 18 @Override
19 19 public int compare(ScheduleRealInfo s1, ScheduleRealInfo s2) {
20 20 return s1.getFcno() - s2.getFcno();
21 21 }
22   - }
  22 + }*/
23 23  
24 24 public static class FCSJ implements Comparator<ScheduleRealInfo>{
25 25  
... ...
src/main/java/com/bsth/entity/realcontrol/LineConfig.java
... ... @@ -55,10 +55,10 @@ public class LineConfig {
55 55 /** 托管状态 */
56 56 private boolean trust;
57 57  
58   - /** 出场时间设置 0:真实出场(设备离开缓冲区时间) 1:请求出场时间 */
  58 + /** 出场时间设置 0:真实出场(设备离开缓冲区时间) 1:请求出场时间 2:出站即出场 */
59 59 private int outConfig;
60 60  
61   - /** 进场时间设置 0:真实进场(设备进入缓冲区时间) 1:请求进场时间 */
  61 + /** 进场时间设置 0:真实进场(设备进入缓冲区时间) 1:请求进场时间 2:出站即出场*/
62 62 private int inConfig;
63 63  
64 64 /** 短语模板 , 号分隔多个 */
... ...
src/main/java/com/bsth/entity/realcontrol/ScheduleRealInfo.java
... ... @@ -102,19 +102,10 @@ public class ScheduleRealInfo {
102 102 */
103 103 private String bcType;
104 104  
105   - /** 设备请求出场或进场时间(班次为 出场或进场 时,该字段可能有值)
106   - private Long devRequestTime;*/
107   -
108   - /** 停车场既首发站 */
109   - @Transient
110   - private boolean parkIsFirstStation;
111   - /** 首发站既停车场 */
112   - @Transient
113   - private boolean firstStationIsPark;
114   - /** 与其共享发车时间的进出场班次 */
  105 + /** 出站即出场 , 关联的进出场班次 */
115 106 @JsonIgnore
116 107 @Transient
117   - private ScheduleRealInfo twins;
  108 + private ScheduleRealInfo twinsSch;
118 109  
119 110 /** 创建人 */
120 111 @JsonIgnore
... ... @@ -539,35 +530,6 @@ public class ScheduleRealInfo {
539 530 }
540 531 }
541 532  
542   - /**
543   - * @throws ParseException
544   - *
545   - * @Title: syncTime
546   - * @Description: TODO(根据计发时间,计算待发时间和终点时间)
547   - * @param 设定文件
548   - * @return void 返回类型
549   - * @throws
550   -
551   - public void syncTime(){
552   - try{
553   - this.setDfsj(this.getFcsj());
554   - //发车时间戳
555   - this.setFcsjT(sdfyyyyMMddHHmm.parse(this.realExecDate + " " + this.getFcsj()).getTime());
556   - //待发时间戳
557   - this.setDfsjT(this.getFcsjT());
558   - //计算终点时间
559   - calcEndTime();
560   -
561   - if(this.fcsjActual != null)
562   - this.setFcsjActualAll(this.fcsjActual);
563   -
564   - if(this.zdsjActual != null)
565   - this.setZdsjActualAll(this.zdsjActual);
566   - }catch(Exception e){
567   - e.printStackTrace();
568   - }
569   - } */
570   -
571 533 public void calcEndTime(){
572 534 //计划终点时间
573 535 if(this.getBcsj() != null){
... ... @@ -671,21 +633,6 @@ public class ScheduleRealInfo {
671 633 calcStatus();
672 634 }
673 635  
674   - //和依赖班次同步发车时间
675   -/* public void synchroFcsj(){
676   - if(this.isFirstStationIsPark() || this.isParkIsFirstStation()){
677   - ScheduleRealInfo twinsSch = this.twins;
678   - if(null != twinsSch){
679   - //有关联的出场班次
680   - twinsSch.setFcsjActual(this.fcsjActual);
681   - twinsSch.setFcsjActualTime(this.fcsjActualTime);
682   - if(null != twinsSch.getSjfcModel())
683   - twinsSch.getSjfcModel().setPersonTime(this.fcsjActualTime);
684   - twinsSch.calcStatus();
685   - }
686   - }
687   - }*/
688   -
689 636 /**
690 637 *
691 638 * @Title: setFcsjActualAll
... ... @@ -718,19 +665,6 @@ public class ScheduleRealInfo {
718 665 }
719 666 }
720 667  
721   - //和依赖的进场班次同步终点时间
722   -/* public void synchroZdsj(){
723   - if(this.isFirstStationIsPark()){
724   - ScheduleRealInfo twinsSch = this.twins;
725   - if(null != twinsSch && twinsSch.getBcType().equals("in")){
726   - //有关联的进场班次
727   - twinsSch.setFcsjActual(this.zdsjActual);
728   - twinsSch.setFcsjActualTime(this.zdsjActualTime);
729   - twinsSch.calcStatus();
730   - }
731   - }
732   - }*/
733   -
734 668 public Long getSpId() {
735 669 return spId;
736 670 }
... ... @@ -755,9 +689,9 @@ public class ScheduleRealInfo {
755 689 if(StringUtils.isNotBlank(this.fcsjActual)){
756 690 this.status = 1;
757 691  
758   - //进出场班次并且没有终点时间
  692 + //进出场班次并且没有计划里程
759 693 if((this.bcType.equals("out") || this.bcType.equals("in"))
760   - && this.zdsj == null){
  694 + && this.jhlc == null){
761 695 this.status = 2;
762 696 }
763 697 }
... ... @@ -792,60 +726,12 @@ public class ScheduleRealInfo {
792 726 public void setScheduleDateStr(String scheduleDateStr) {
793 727 this.scheduleDateStr = scheduleDateStr;
794 728 }
795   -
796   - public boolean isParkIsFirstStation() {
797   - return parkIsFirstStation;
798   - }
799   -
800   - public void setParkIsFirstStation(boolean parkIsFirstStation) {
801   - this.parkIsFirstStation = parkIsFirstStation;
802   - }
803   -
804   -/* public ScheduleRealInfo getTwins() {
805   - return twins;
806   - }
807   -
808   - public void setTwins(ScheduleRealInfo twins) {
809   - this.twins = twins;
810   - }
811   -
812   - public boolean isFirstStationIsPark() {
813   - return firstStationIsPark;
814   - }
815   -
816   - public void setFirstStationIsPark(boolean firstStationIsPark) {
817   - this.firstStationIsPark = firstStationIsPark;
818   - }*/
819   -
820   -
821   - /*public boolean statusTostart(){
822   - return this.getFcsjActual() == null
823   - && this.getSjfcModel().getTime() != null;
824   - }
825   -
826   - public boolean statusToEnd(){
827   - return this.getZdsjActual() == null
828   - && this.getSjddModel().getTime() != null;
829   - }
830   -
831   - public void revokeRealOutgo() {
832   - //this.setStatus(0);
833   - this.setFcsjActual(null);
834   - this.setFcsjActualTime(null);
835   - if(null != this.getSjfcModel())
836   - this.getSjfcModel().resetNull();
837   - this.calcStatus();
838   - }*/
839 729  
840 730 public void clearFcsjActual(){
841 731 this.setFcsjActual(null);
842 732 this.setFcsjActualTime(null);
843 733 this.calcStatus();
844 734 }
845   -
846   -/* public boolean existDependent() {
847   - return this.isFirstStationIsPark() || this.parkIsFirstStation;
848   - }*/
849 735  
850 736 //清除实际终点时间
851 737 public void clearZdsjActual(){
... ... @@ -862,4 +748,12 @@ public class ScheduleRealInfo {
862 748 public void setOpDirectiveState(Integer opDirectiveState) {
863 749 this.opDirectiveState = opDirectiveState;
864 750 }
  751 +
  752 + public ScheduleRealInfo getTwinsSch() {
  753 + return twinsSch;
  754 + }
  755 +
  756 + public void setTwinsSch(ScheduleRealInfo twinsSch) {
  757 + this.twinsSch = twinsSch;
  758 + }
865 759 }
... ...
src/main/java/com/bsth/service/realcontrol/LineConfigService.java
... ... @@ -13,4 +13,6 @@ public interface LineConfigService extends BaseService&lt;LineConfig, Integer&gt;{
13 13  
14 14 Map<String, Object> editStartOptTime(String time, String lineCode);
15 15  
  16 + Map<String, Object> editOutTimeType(String lineCode, int type);
  17 +
16 18 }
... ...
src/main/java/com/bsth/service/realcontrol/impl/LineConfigServiceImpl.java
... ... @@ -64,4 +64,18 @@ public class LineConfigServiceImpl extends BaseServiceImpl&lt;LineConfig, Integer&gt;
64 64 rs.put("time", time);
65 65 return rs;
66 66 }
  67 +
  68 + @Override
  69 + public Map<String, Object> editOutTimeType(String lineCode, int type) {
  70 + Map<String, Object> rs = new HashMap<>();
  71 + LineConfig conf = lineConfigData.get(lineCode);
  72 +
  73 + conf.setOutConfig(type);
  74 + conf.setInConfig(type);
  75 + lineConfigData.set(conf);
  76 +
  77 + rs.put("status", ResponseCode.SUCCESS);
  78 + rs.put("type", type);
  79 + return rs;
  80 + }
67 81 }
... ...
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
... ... @@ -712,7 +712,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
712 712 }
713 713 else{
714 714 // 按发车时间排序
715   - Collections.sort(list, new ScheduleComparator.FCNO());
  715 + Collections.sort(list, new ScheduleComparator.FCSJ());
716 716  
717 717 // 以第一个实际发车/待发时间为起点,调整间隔
718 718 sch = list.get(0);
... ...
src/main/java/com/bsth/websocket/handler/SendUtils.java
... ... @@ -14,6 +14,7 @@ import org.springframework.stereotype.Component;
14 14  
15 15 import com.alibaba.fastjson.JSONObject;
16 16 import com.bsth.data.BasicData;
  17 +import com.bsth.data.LineConfigData;
17 18 import com.bsth.data.schedule.DayOfSchedule;
18 19 import com.bsth.entity.directive.D80;
19 20 import com.bsth.entity.realcontrol.ScheduleRealInfo;
... ... @@ -24,6 +25,9 @@ public class SendUtils{
24 25  
25 26 @Autowired
26 27 private RealControlSocketHandler socketHandler;
  28 +
  29 + @Autowired
  30 + LineConfigData lineConfigData;
27 31  
28 32 private static SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
29 33  
... ... @@ -33,17 +37,19 @@ public class SendUtils{
33 37 * @throws JsonProcessingException
34 38 * TODO(推送发车信息)
35 39 */
36   - public void sendFcsj(ScheduleRealInfo schedule) {
37   -
  40 + public void sendFcsj(ScheduleRealInfo sch) {
  41 + //处理出站即出场的班次
  42 + connectOutSchTime(sch);
  43 +
38 44 Map<String, Object> map = new HashMap<>();
39 45 map.put("fn", "faChe");
40   - map.put("t", schedule);
  46 + map.put("t", sch);
41 47 map.put("dataStr", sdf.format(new Date()));
42 48  
43 49 ObjectMapper mapper = new ObjectMapper();
44 50  
45 51 try {
46   - socketHandler.sendMessageToLine(schedule.getXlBm(), mapper.writeValueAsString(map));
  52 + socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map));
47 53 } catch (Exception e) {
48 54 logger.error("", e);
49 55 }
... ... @@ -77,11 +83,13 @@ public class SendUtils{
77 83 * @throws NumberFormatException @Title: sendFcsj @Description:
78 84 * TODO(推送到达终点时间) @param @param schedule 班次 @throws
79 85 */
80   - public void sendZdsj(ScheduleRealInfo schedule, ScheduleRealInfo nextSch, int finish) {
  86 + public void sendZdsj(ScheduleRealInfo sch, ScheduleRealInfo nextSch, int finish) {
  87 + //处理进站即进场的班次
  88 + connectInSchTime(sch);
81 89  
82 90 Map<String, Object> map = new HashMap<>();
83 91 map.put("fn", "zhongDian");
84   - map.put("t", schedule);
  92 + map.put("t", sch);
85 93 map.put("nt", nextSch);
86 94 map.put("finish", finish);
87 95 map.put("dataStr", sdf.format(new Date()));
... ... @@ -89,7 +97,7 @@ public class SendUtils{
89 97 ObjectMapper mapper = new ObjectMapper();
90 98  
91 99 try {
92   - socketHandler.sendMessageToLine(schedule.getXlBm(), mapper.writeValueAsString(map));
  100 + socketHandler.sendMessageToLine(sch.getXlBm(), mapper.writeValueAsString(map));
93 101 } catch (Exception e) {
94 102 logger.error("", e);
95 103 }
... ... @@ -141,5 +149,36 @@ public class SendUtils{
141 149 refreshSch(list);
142 150 }
143 151  
144   - //public void sendReportOutTime(ScheduleRealInfo sch)
  152 +
  153 + //出站即出场
  154 + public void connectOutSchTime(ScheduleRealInfo sch){
  155 + try{
  156 + ScheduleRealInfo twins = sch.getTwinsSch();
  157 + if(twins != null
  158 + && lineConfigData.get(sch.getXlBm()).getOutConfig() == 2){
  159 +
  160 + twins.setFcsjActualAll(sch.getFcsjActualTime());
  161 + //刷新关联的出场班次
  162 + refreshSch(twins);
  163 + }
  164 + }catch(Exception e){
  165 + logger.error("", e);
  166 + }
  167 + }
  168 +
  169 + //进站即出场
  170 + public void connectInSchTime(ScheduleRealInfo sch){
  171 + try{
  172 + ScheduleRealInfo twins = sch.getTwinsSch();
  173 + if(twins != null
  174 + && lineConfigData.get(sch.getXlBm()).getOutConfig() == 2){
  175 +
  176 + twins.setZdsjActualAll(sch.getZdsjActualTime());
  177 + //刷新关联的出场班次
  178 + refreshSch(twins);
  179 + }
  180 + }catch(Exception e){
  181 + logger.error("", e);
  182 + }
  183 + }
145 184 }
... ...
src/main/resources/static/pages/control/lineConfig/config.html
... ... @@ -211,23 +211,14 @@ butto.line-config-btn:active{
211 211 </div>
212 212 </section>
213 213  
214   - <!--<section>
215   - <h3>出场时间</h3>
216   -
217   - <div class="settings-row" >
218   - <p > 使用 <a href="javascript:;" data-type="select" id="outTimeType"></a> 作为出场班次的实际时间。</p>
219   - </div>
220   - </section>
221   --->
222   -<!--
223 214 <section>
224   - <h3>场时间</h3>
  215 + <h3>班次进出场时间</h3>
225 216  
226 217 <div class="settings-row" >
227   - <p > 使用 <a href="javascript:;" data-type="select" id="inTimeType"></a> 作为进场班次的实际时间。</p>
  218 + <p > 使用 <a href="javascript:;" data-type="select" id="outTimeType"></a> 时间作为出场班次的实际时间。</p>
228 219 </div>
229 220 </section>
230   --->
  221 +
231 222 </form>
232 223 </script>
233 224  
... ... @@ -305,7 +296,6 @@ butto.line-config-btn:active{
305 296 //运营开始时间
306 297 $('#startOptTimeLink').editable({
307 298 type: 'time',
308   - title:'修改线路运营开始时间',
309 299 placement: 'right',
310 300 display: false,
311 301 validate: function(value){
... ... @@ -316,42 +306,41 @@ butto.line-config-btn:active{
316 306 })
317 307 .on('save', function(e, params) {
318 308 var index = showLoad('提交数据...');
319   - var lineCode = $('.line_config_tree li.selected').data('code');
320   - $post('/lineConfig/editTime', {lineCode: lineCode, time: params.newValue}
  309 + $post('/lineConfig/editTime', {lineCode: getLineCode(), time: params.newValue}
321 310 ,function(rs){
322 311 layer.close(index);
323 312 $('#startOptTimeLink').text(rs.time);
324 313 });
325 314 });
326 315  
327   -/* //出场时间类型
  316 + //进出场时间类型
328 317 $('#outTimeType').editable({
329 318 value: conf.outConfig,
330 319 inputclass: 'form-control',
331 320 placement: 'right',
332 321 source: [{
333 322 value: 0,
334   - text: '离开缓冲区时间'
  323 + text: 'gps出场'
335 324 }, {
336 325 value: 1,
337   - text: '请求出场时间'
338   - }]
339   - });
340   -
341   - //进场时间类型
342   - $('#inTimeType').editable({
343   - value: conf.inConfig,
344   - inputclass: 'form-control',
345   - placement: 'right',
346   - source: [{
347   - value: 0,
348   - text: '离开缓冲区时间'
  326 + text: '请求出场'
349 327 }, {
350   - value: 1,
351   - text: '请求进场时间'
  328 + value: 2,
  329 + text: '出站即出场'
352 330 }]
353   - }); */
354   -
  331 + })
  332 + .on('save', function(e, params) {
  333 + var index = showLoad('提交数据...');
  334 + $post('/lineConfig/editOutTimeType', {lineCode: lineCode, type: params.newValue}
  335 + ,function(rs){
  336 + layer.close(index);
  337 + $('#outTimeType').val(rs.type);
  338 + });
  339 + });
  340 + }
  341 +
  342 + function getLineCode(){
  343 + return $('.line_config_tree li.selected').data('code');
355 344 }
356 345 }();
357 346 </script>
358 347 \ No newline at end of file
... ...