Commit eaa0dfe3a4c67031f15da213bab7e34569340d6e

Authored by 潘钊
2 parents 2cebdc7d 7f1b45f6

Merge branch 'minhang' of http://222.66.0.204:8090/panzhaov5/bsth_control into minhang

src/main/java/com/bsth/entity/oil/Ylxxb.java
@@ -35,11 +35,11 @@ public class Ylxxb { @@ -35,11 +35,11 @@ public class Ylxxb {
35 private Date xgrq; 35 private Date xgrq;
36 private String xgr; 36 private String xgr;
37 private String fromgsdm; 37 private String fromgsdm;
38 - private int nylx; 38 + private Integer nylx;
39 @Transient 39 @Transient
40 private String ldgh; 40 private String ldgh;
41 //0为接口数据,1为手工输入 41 //0为接口数据,1为手工输入
42 - private int jylx=0; 42 + private Integer jylx=0;
43 @Transient 43 @Transient
44 private String gsname; 44 private String gsname;
45 @Transient 45 @Transient
src/main/java/com/bsth/repository/oil/YlxxbRepository.java
@@ -27,4 +27,12 @@ public interface YlxxbRepository extends BaseRepository<Ylxxb, Integer>{ @@ -27,4 +27,12 @@ public interface YlxxbRepository extends BaseRepository<Ylxxb, Integer>{
27 @Query(value="SELECT * FROM bsth_c_ylxxb where to_days(?1)=to_days(yyrq) and nbbm =?2 and jylx=1",nativeQuery=true) 27 @Query(value="SELECT * FROM bsth_c_ylxxb where to_days(?1)=to_days(yyrq) and nbbm =?2 and jylx=1",nativeQuery=true)
28 List<Ylxxb> obtainYlxx2(String rq,String nbbm); 28 List<Ylxxb> obtainYlxx2(String rq,String nbbm);
29 29
  30 + @Transactional
  31 + @Modifying
  32 + @Query(value="select * from bsth_c_ylxxb s where s.nbbm = ?1 and "
  33 + + "to_days(s.yyrq) = to_days(?2)",nativeQuery=true)
  34 + List<Ylxxb> queryListYlxxb(String clZbh,String date);
  35 +
  36 +
  37 +
30 } 38 }
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
@@ -39,12 +39,12 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI @@ -39,12 +39,12 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
39 + " s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 group by clZbh,jGh,jName") 39 + " s.xlBm = ?1 and DATE_FORMAT(s.scheduleDate,'%Y-%m-%d') = ?2 group by clZbh,jGh,jName")
40 List<Map<String, Object>> dailyInfo(String line,String date); 40 List<Map<String, Object>> dailyInfo(String line,String date);
41 41
42 - @Query(value="select t.car_code,d.sender,d.txt_content,d.timestamp,0 as xlbm from ("  
43 - + " select equipment_code,car_code from bsth_c_cars where id in(" 42 + @Query(value="select t.inside_code,d.sender,d.txt_content,d.timestamp,0 as xlbm from ("
  43 + + " select equipment_code,inside_code from bsth_c_cars where id in("
44 + " select cl from bsth_c_s_ccinfo where xl in ( " 44 + " select cl from bsth_c_s_ccinfo where xl in ( "
45 + " select id from bsth_c_line where line_code=?1 ))) t" 45 + " select id from bsth_c_line where line_code=?1 ))) t"
46 + " left join bsth_v_directive_60 d on t.equipment_code=d.device_id " 46 + " left join bsth_v_directive_60 d on t.equipment_code=d.device_id "
47 - + " where d.timestamp >=?2 and d.timestamp <=?3 and t.car_code like %?4% ",nativeQuery=true) 47 + + " where d.timestamp >=?2 and d.timestamp <=?3 and t.inside_code like %?4% ",nativeQuery=true)
48 List<Object[]> historyMessage(String line,long d,long t,String code); 48 List<Object[]> historyMessage(String line,long d,long t,String code);
49 49
50 @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,count(*) as cs " 50 @Query(value="SELECT r.xl_name,r.lp_name,r.cl_zbh,count(*) as cs "
@@ -74,7 +74,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI @@ -74,7 +74,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
74 @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and sflj != 0") 74 @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and sflj != 0")
75 int findLjbc(String jName,String clZbh,String lpName); 75 int findLjbc(String jName,String clZbh,String lpName);
76 76
77 - @Query(value="SELECT c.company,r.request_code,FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d %T'),c.inside_code FROM bsth_v_report_80 r LEFT JOIN bsth_c_cars c ON c.equipment_code = r.device_id where FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d') = ?2 and r.line_id = ?1 and c.inside_code = ?3",nativeQuery=true) 77 + @Query(value="SELECT c.company,r.request_code,FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d %T'),c.inside_code FROM bsth_v_report_80 r LEFT JOIN bsth_c_cars c ON c.equipment_code = r.device_id where FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d') = ?2 and r.line_id = ?1 and c.inside_code like %?3%",nativeQuery=true)
78 List<Object[]> account(String line,String date,String code); 78 List<Object[]> account(String line,String date,String code);
79 79
80 @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and s.scheduleDate >= str_to_date(?2,'%Y-%m-%d') " 80 @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and s.scheduleDate >= str_to_date(?2,'%Y-%m-%d') "
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
@@ -15,6 +15,7 @@ import com.bsth.data.schedule.ScheduleComparator; @@ -15,6 +15,7 @@ import com.bsth.data.schedule.ScheduleComparator;
15 import com.bsth.entity.Cars; 15 import com.bsth.entity.Cars;
16 import com.bsth.entity.Line; 16 import com.bsth.entity.Line;
17 import com.bsth.entity.Personnel; 17 import com.bsth.entity.Personnel;
  18 +import com.bsth.entity.oil.Ylxxb;
18 import com.bsth.entity.realcontrol.ChildTaskPlan; 19 import com.bsth.entity.realcontrol.ChildTaskPlan;
19 import com.bsth.entity.realcontrol.LineConfig; 20 import com.bsth.entity.realcontrol.LineConfig;
20 import com.bsth.entity.realcontrol.ScheduleRealInfo; 21 import com.bsth.entity.realcontrol.ScheduleRealInfo;
@@ -25,6 +26,7 @@ import com.bsth.entity.schedule.GuideboardInfo; @@ -25,6 +26,7 @@ import com.bsth.entity.schedule.GuideboardInfo;
25 import com.bsth.entity.sys.DutyEmployee; 26 import com.bsth.entity.sys.DutyEmployee;
26 import com.bsth.entity.sys.SysUser; 27 import com.bsth.entity.sys.SysUser;
27 import com.bsth.repository.LineRepository; 28 import com.bsth.repository.LineRepository;
  29 +import com.bsth.repository.oil.YlxxbRepository;
28 import com.bsth.repository.realcontrol.ChildTaskPlanRepository; 30 import com.bsth.repository.realcontrol.ChildTaskPlanRepository;
29 import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; 31 import com.bsth.repository.realcontrol.ScheduleRealInfoRepository;
30 import com.bsth.repository.realcontrol.SvgAttributeRepository; 32 import com.bsth.repository.realcontrol.SvgAttributeRepository;
@@ -99,6 +101,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -99,6 +101,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
99 101
100 @Autowired 102 @Autowired
101 DutyEmployeeService dutyEmployeeService; 103 DutyEmployeeService dutyEmployeeService;
  104 +
  105 + @Autowired
  106 + YlxxbRepository ylxxbRepository;
102 107
103 Logger logger = LoggerFactory.getLogger(this.getClass()); 108 Logger logger = LoggerFactory.getLogger(this.getClass());
104 109
@@ -502,6 +507,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -502,6 +507,8 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
502 507
503 map = new HashMap<String, Object>(); 508 map = new HashMap<String, Object>();
504 try { 509 try {
  510 + scheduleRealInfo.setjName(scheduleRealInfo.getjGh()+scheduleRealInfo.getjName());
  511 + scheduleRealInfo.setsName(scheduleRealInfo.getsGh()+scheduleRealInfo.getsName());
505 map = rru.getMapValue(scheduleRealInfo); 512 map = rru.getMapValue(scheduleRealInfo);
506 String zdsj = scheduleRealInfo.getZdsj(); 513 String zdsj = scheduleRealInfo.getZdsj();
507 String zdsjActual = scheduleRealInfo.getZdsjActual(); 514 String zdsjActual = scheduleRealInfo.getZdsjActual();
@@ -2433,6 +2440,25 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2433,6 +2440,25 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2433 try { 2440 try {
2434 scheduleRealInfo.setBcs(xyz); 2441 scheduleRealInfo.setBcs(xyz);
2435 xyz++; 2442 xyz++;
  2443 + Set<ChildTaskPlan> cs = scheduleRealInfo.getcTasks();
  2444 + Double sjlc=0.0;
  2445 + if(!cs.isEmpty()){
  2446 + Iterator<ChildTaskPlan> it = cs.iterator();
  2447 + while(it.hasNext()){
  2448 + ChildTaskPlan c = it.next();
  2449 + if(!c.isDestroy()){
  2450 + sjlc += c.getMileage()==null?0:c.getMileage();
  2451 + }
  2452 +
  2453 + }
  2454 + }else{
  2455 + if(scheduleRealInfo.getStatus() != -1){
  2456 + sjlc =scheduleRealInfo.getJhlc();
  2457 + }
  2458 + }
  2459 + scheduleRealInfo.setjName(scheduleRealInfo.getjGh()+scheduleRealInfo.getjName());
  2460 + scheduleRealInfo.setsName(scheduleRealInfo.getsGh()+scheduleRealInfo.getsName());
  2461 + scheduleRealInfo.setSjlc(format.format(sjlc));
2436 map = rru.getMapValue(scheduleRealInfo); 2462 map = rru.getMapValue(scheduleRealInfo);
2437 String zdsj = scheduleRealInfo.getZdsj(); 2463 String zdsj = scheduleRealInfo.getZdsj();
2438 String zdsjActual = scheduleRealInfo.getZdsjActual(); 2464 String zdsjActual = scheduleRealInfo.getZdsjActual();
@@ -2457,8 +2483,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2457,8 +2483,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2457 } 2483 }
2458 } 2484 }
2459 2485
  2486 +
  2487 + List<Ylxxb> listYlxxb=ylxxbRepository.queryListYlxxb( clZbh, date);
  2488 + Double jzl=0.0;
  2489 + for(int t=0;t<listYlxxb.size();t++){
  2490 + Ylxxb y=listYlxxb.get(t);
  2491 + jzl += y.getJzl();
  2492 + }
  2493 +
2460 //计算里程和班次数,并放入Map里 2494 //计算里程和班次数,并放入Map里
2461 map = new HashMap<String, Object>(); 2495 map = new HashMap<String, Object>();
  2496 + map.put("jzl", jzl);
2462 map.put("jhlc", format.format(jhlc+jcclc)); 2497 map.put("jhlc", format.format(jhlc+jcclc));
2463 map.put("yygljh", format.format(jhlc)); 2498 map.put("yygljh", format.format(jhlc));
2464 map.put("ssgl", format.format(remMileage)); 2499 map.put("ssgl", format.format(remMileage));
@@ -2632,7 +2667,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2632,7 +2667,9 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2632 while(it.hasNext()){ 2667 while(it.hasNext()){
2633 ChildTaskPlan c = it.next(); 2668 ChildTaskPlan c = it.next();
2634 if(c.getRemarks()!=null && c.getRemarks().length()>0){ 2669 if(c.getRemarks()!=null && c.getRemarks().length()>0){
2635 - remarks += c.getRemarks(); 2670 + if(remarks.indexOf(c.getRemarks())==-1){
  2671 + remarks += c.getRemarks();
  2672 + }
2636 } 2673 }
2637 2674
2638 if(!c.isDestroy()){ 2675 if(!c.isDestroy()){
@@ -2664,7 +2701,13 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2664,7 +2701,13 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2664 String xlbm=s.getXlBm(); 2701 String xlbm=s.getXlBm();
2665 String fcrq=s.getScheduleDateStr(); 2702 String fcrq=s.getScheduleDateStr();
2666 2703
2667 - 2704 + List<Ylxxb> listYlxxb=ylxxbRepository.queryListYlxxb( s.getClZbh(), fcrq);
  2705 + Double jzl=0.0;
  2706 + for(int t=0;t<listYlxxb.size();t++){
  2707 + Ylxxb y=listYlxxb.get(t);
  2708 + jzl += y.getJzl();
  2709 + }
  2710 + map.put("jzl", jzl);
2668 map.put("xlName", s.getXlName()); 2711 map.put("xlName", s.getXlName());
2669 map.put("clZbh", s.getClZbh()); 2712 map.put("clZbh", s.getClZbh());
2670 map.put("fcsjActual", s.getFcsjActual()); 2713 map.put("fcsjActual", s.getFcsjActual());
src/main/java/com/bsth/service/schedule/impl/TTInfoDetailServiceImpl.java
@@ -280,7 +280,7 @@ public class TTInfoDetailServiceImpl extends BServiceImpl&lt;TTInfoDetail, Long&gt; im @@ -280,7 +280,7 @@ public class TTInfoDetailServiceImpl extends BServiceImpl&lt;TTInfoDetail, Long&gt; im
280 FcInfo fcInfo = new FcInfo(ttdid_str, bctype, fcsj, xldir, isfb); 280 FcInfo fcInfo = new FcInfo(ttdid_str, bctype, fcsj, xldir, isfb);
281 281
282 if (StringUtils.isNotEmpty(fzdname)) 282 if (StringUtils.isNotEmpty(fzdname))
283 - headarrays[c + 1] = fzdname; 283 + headarrays[c] = fzdname;
284 fcInfos.add(fcInfo); 284 fcInfos.add(fcInfo);
285 285
286 286
src/main/resources/static/pages/forms/mould/waybill_qingpu.xls
No preview for this file type
src/main/resources/static/pages/forms/statement/scheduleDaily.html
@@ -158,31 +158,31 @@ @@ -158,31 +158,31 @@
158 <td colspan="40">&nbsp;</td> 158 <td colspan="40">&nbsp;</td>
159 </tr> --> 159 </tr> -->
160 <tr> 160 <tr>
161 - <td colspan="2">班序</td> 161 + <td colspan="2">路牌</td>
162 <td colspan="2">车号</td> 162 <td colspan="2">车号</td>
163 <td>司早</td> 163 <td>司早</td>
164 <td>售早</td> 164 <td>售早</td>
165 <td>司晚</td> 165 <td>司晚</td>
166 <td>售晚</td> 166 <td>售晚</td>
167 - <td colspan="2">班序</td> 167 + <td colspan="2">路牌</td>
168 <td colspan="2">车号</td> 168 <td colspan="2">车号</td>
169 <td>司早</td> 169 <td>司早</td>
170 <td>售早</td> 170 <td>售早</td>
171 <td>司晚</td> 171 <td>司晚</td>
172 <td>售晚</td> 172 <td>售晚</td>
173 - <td colspan="2">班序</td> 173 + <td colspan="2">路牌</td>
174 <td colspan="2">车号</td> 174 <td colspan="2">车号</td>
175 <td>司早</td> 175 <td>司早</td>
176 <td>售早</td> 176 <td>售早</td>
177 <td>司晚</td> 177 <td>司晚</td>
178 <td>售晚</td> 178 <td>售晚</td>
179 - <td colspan="2">班序</td> 179 + <td colspan="2">路牌</td>
180 <td colspan="2">车号</td> 180 <td colspan="2">车号</td>
181 <td>司早</td> 181 <td>司早</td>
182 <td>售早</td> 182 <td>售早</td>
183 <td>司晚</td> 183 <td>司晚</td>
184 <td>售晚</td> 184 <td>售晚</td>
185 - <td colspan="2">班序</td> 185 + <td colspan="2">路牌</td>
186 <td colspan="2">车号</td> 186 <td colspan="2">车号</td>
187 <td>司早</td> 187 <td>司早</td>
188 <td>售早</td> 188 <td>售早</td>
src/main/resources/static/pages/forms/statement/waybill.html
@@ -307,8 +307,8 @@ @@ -307,8 +307,8 @@
307 {{each list as obj i}} 307 {{each list as obj i}}
308 <tr> 308 <tr>
309 <td>{{i+1}}</td> 309 <td>{{i+1}}</td>
310 - <td>{{obj.jName}}</td>  
311 - <td>{{obj.sName}}</td> 310 + <td>{{obj.jGh}}{{obj.jName}}</td>
  311 + <td>{{obj.sGh}}{{obj.sName}}</td>
312 <td>&nbsp;</td> 312 <td>&nbsp;</td>
313 <td>{{obj.qdzName}}</td> 313 <td>{{obj.qdzName}}</td>
314 <td>{{obj.zdzName}}</td> 314 <td>{{obj.zdzName}}</td>
src/main/resources/static/pages/forms/statement/waybillQp.html
@@ -252,7 +252,7 @@ @@ -252,7 +252,7 @@
252 </tr> 252 </tr>
253 <tr> 253 <tr>
254 <td colspan="2">出场存油 &nbsp;升</td> 254 <td colspan="2">出场存油 &nbsp;升</td>
255 - <td colspan="3">加注油量 &nbsp;升</td> 255 + <td colspan="3">加注油量 {{map.jzl}}升</td>
256 <td colspan="2">进场存油 &nbsp;升</td> 256 <td colspan="2">进场存油 &nbsp;升</td>
257 <td colspan="4">加注机油 &nbsp;升</td> 257 <td colspan="4">加注机油 &nbsp;升</td>
258 <td colspan="5">本日耗油 &nbsp;升</td> 258 <td colspan="5">本日耗油 &nbsp;升</td>
@@ -298,8 +298,8 @@ @@ -298,8 +298,8 @@
298 <tr> 298 <tr>
299 <td>{{i+1}}</td> 299 <td>{{i+1}}</td>
300 <td>{{obj.lpName}}</td> 300 <td>{{obj.lpName}}</td>
301 - <td>{{obj.jName}}</td>  
302 - <td>{{obj.sName}}</td> 301 + <td>{{obj.jGh}}{{obj.jName}}</td>
  302 + <td>{{obj.sGh}}{{obj.sName}}</td>
303 <td>&nbsp;</td> 303 <td>&nbsp;</td>
304 <td>{{obj.qdzName}}</td> 304 <td>{{obj.qdzName}}</td>
305 <td>{{obj.zdzName}}</td> 305 <td>{{obj.zdzName}}</td>
@@ -350,8 +350,8 @@ @@ -350,8 +350,8 @@
350 <td>{{map.ljgl}}</td> 350 <td>{{map.ljgl}}</td>
351 <td colspan="2">损失班次</td> 351 <td colspan="2">损失班次</td>
352 <td colspan="1">{{map.ssbc}}</td> 352 <td colspan="1">{{map.ssbc}}</td>
353 - <td colspan="3">运送公里</td>  
354 - <td colspan="2">{{map.ysgl}}</td> 353 + <td colspan="3"></td>
  354 + <td colspan="2"></td>
355 </tr> 355 </tr>
356 <tr> 356 <tr>
357 357
src/main/resources/static/pages/scheduleApp/module/core/ttInfoManage/detailedit/edit-detail.html
@@ -229,9 +229,12 @@ @@ -229,9 +229,12 @@
229 <input type="text" class="form-control" name="fcsj" 229 <input type="text" class="form-control" name="fcsj"
230 ng-model="ctrl.TimeTableDetailForSave.fcsj" 230 ng-model="ctrl.TimeTableDetailForSave.fcsj"
231 ng-pattern="ctrl.time_regex" 231 ng-pattern="ctrl.time_regex"
232 - /> 232 + required />
233 </div> 233 </div>
234 <!-- 隐藏块,显示验证信息 --> 234 <!-- 隐藏块,显示验证信息 -->
  235 + <div class="alert alert-danger well-sm" ng-show="myForm.fcsj.$error.required">
  236 + 发车时间必须填写
  237 + </div>
235 <div class="alert alert-danger well-sm" ng-show="myForm.fcsj.$error.pattern"> 238 <div class="alert alert-danger well-sm" ng-show="myForm.fcsj.$error.pattern">
236 时间格式错误,应该是格式hh:mm,如:06:39 239 时间格式错误,应该是格式hh:mm,如:06:39
237 </div> 240 </div>
@@ -289,7 +292,7 @@ @@ -289,7 +292,7 @@
289 dsparams="{{ {type: 'dic', param: 'ScheduleType' } | json }}" 292 dsparams="{{ {type: 'dic', param: 'ScheduleType' } | json }}"
290 iterobjname="item" 293 iterobjname="item"
291 iterobjexp="item.name" 294 iterobjexp="item.name"
292 - searchph="请选择营运状态..." 295 + searchph="请选择班次类型..."
293 searchexp="this.name" 296 searchexp="this.name"
294 required 297 required
295 > 298 >
src/main/resources/static/pages/scheduleApp/module/core/ttInfoManage/detailedit/edit-detail2.html
@@ -39,106 +39,123 @@ @@ -39,106 +39,123 @@
39 <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> 39 <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm">
40 <div class="form-body"> 40 <div class="form-body">
41 41
42 - <div class="form-group has-success has-feedback"> 42 + <div class="form-group">
43 <label class="col-md-3 control-label">方向:</label> 43 <label class="col-md-3 control-label">方向:</label>
44 - <div class="col-md-7"> 44 + <div class="col-md-5">
45 <sa-Radiogroup model="ctrl.TimeTableDetailForSave.xlDir" dicgroup="LineTrend" name="xlDir"></sa-Radiogroup> 45 <sa-Radiogroup model="ctrl.TimeTableDetailForSave.xlDir" dicgroup="LineTrend" name="xlDir"></sa-Radiogroup>
46 </div> 46 </div>
47 47
48 </div> 48 </div>
49 <div class="form-group"> 49 <div class="form-group">
50 <label class="col-md-3 control-label">起点站:</label> 50 <label class="col-md-3 control-label">起点站:</label>
51 - <div class="col-md-7">  
52 - <sa-Select3 model="ctrl.TimeTableDetailForSave"  
53 - name="qdz"  
54 - placeholder="请输拼音..."  
55 - dcvalue="{{ctrl.TimeTableDetailForSave.qdz.id}}" 51 + <div class="col-md-5">
  52 + <sa-Select5 name="qdz"
  53 + model="ctrl.TimeTableDetailForSave"
  54 + cmaps="{'qdz.id' : 'stationid'}"
56 dcname="qdz.id" 55 dcname="qdz.id"
57 icname="stationid" 56 icname="stationid"
58 - icnames="stationname"  
59 - datatype="zd"  
60 - dataassociate="true"  
61 - dataparam="{{ {'xlid': ctrl.xlid, 'xldir': ctrl.TimeTableDetailForSave.xlDir} | json }}"  
62 - mlp="true"  
63 - >  
64 - </sa-Select3> 57 + dsparams="{{ {type: 'ajax', param:{'xlid': ctrl.xlid, 'xldir': ctrl.TimeTableDetailForSave.xlDir}, atype:'zd' } | json }}"
  58 + iterobjname="item"
  59 + iterobjexp="item.stationname"
  60 + searchph="请输拼音..."
  61 + searchexp="this.stationname"
  62 + required >
  63 + </sa-Select5>
65 </div> 64 </div>
66 </div> 65 </div>
67 <div class="form-group"> 66 <div class="form-group">
68 <label class="col-md-3 control-label">终点站:</label> 67 <label class="col-md-3 control-label">终点站:</label>
69 - <div class="col-md-7">  
70 - <sa-Select3 model="ctrl.TimeTableDetailForSave"  
71 - name="zdz"  
72 - placeholder="请输拼音..."  
73 - dcvalue="{{ctrl.TimeTableDetailForSave.zdz.id}}" 68 + <div class="col-md-5">
  69 + <sa-Select5 name="zdz"
  70 + model="ctrl.TimeTableDetailForSave"
  71 + cmaps="{'zdz.id' : 'stationid'}"
74 dcname="zdz.id" 72 dcname="zdz.id"
75 icname="stationid" 73 icname="stationid"
76 - icnames="stationname"  
77 - datatype="zd"  
78 - dataassociate="true"  
79 - dataparam="{{ {'xlid': ctrl.xlid, 'xldir': ctrl.TimeTableDetailForSave.xlDir} | json }}"  
80 - mlp="true"  
81 - >  
82 - </sa-Select3> 74 + dsparams="{{ {type: 'ajax', param:{'xlid': ctrl.xlid, 'xldir': ctrl.TimeTableDetailForSave.xlDir}, atype:'zd' } | json }}"
  75 + iterobjname="item"
  76 + iterobjexp="item.stationname"
  77 + searchph="请输拼音..."
  78 + searchexp="this.stationname"
  79 + required >
  80 + </sa-Select5>
83 </div> 81 </div>
84 </div> 82 </div>
85 <div class="form-group"> 83 <div class="form-group">
86 <label class="col-md-3 control-label">停车场:</label> 84 <label class="col-md-3 control-label">停车场:</label>
87 - <div class="col-md-7">  
88 - <sa-Select3 model="ctrl.TimeTableDetailForSave"  
89 - name="tcc"  
90 - placeholder="请输拼音..."  
91 - dcvalue="{{ctrl.TimeTableDetailForSave.tcc.id}}" 85 + <div class="col-md-5">
  86 + <sa-Select5 name="tcc"
  87 + model="ctrl.TimeTableDetailForSave"
  88 + cmaps="{'tcc.id': 'id'}"
92 dcname="tcc.id" 89 dcname="tcc.id"
93 icname="id" 90 icname="id"
94 - icnames="parkName"  
95 - datatype="tcc"  
96 - mlp="true"  
97 - >  
98 - </sa-Select3> 91 + dsparams="{{ {type: 'ajax', param:{type: 'all'}, atype:'tcc' } | json }}"
  92 + iterobjname="item"
  93 + iterobjexp="item.parkName"
  94 + searchph="请输拼音..."
  95 + searchexp="this.parkName"
  96 + required >
  97 + </sa-Select5>
99 </div> 98 </div>
100 </div> 99 </div>
101 100
102 - <div class="form-group has-success has-feedback"> 101 + <div class="form-group">
103 <label class="col-md-3 control-label">发车时间:</label> 102 <label class="col-md-3 control-label">发车时间:</label>
104 - <div class="col-md-7">  
105 - <input type="text" class="form-control" 103 + <div class="col-md-5">
  104 + <input type="text" class="form-control" name="fcsj"
106 ng-model="ctrl.TimeTableDetailForSave.fcsj" 105 ng-model="ctrl.TimeTableDetailForSave.fcsj"
  106 + ng-pattern="ctrl.time_regex"
107 /> 107 />
108 </div> 108 </div>
  109 + <!-- 隐藏块,显示验证信息 -->
  110 + <div class="alert alert-danger well-sm" ng-show="myForm.fcsj.$error.pattern">
  111 + 时间格式错误,应该是格式hh:mm,如:06:39
  112 + </div>
109 113
110 </div> 114 </div>
111 <div class="form-group"> 115 <div class="form-group">
112 <label class="col-md-3 control-label">计划里程:</label> 116 <label class="col-md-3 control-label">计划里程:</label>
113 - <div class="col-md-7">  
114 - <input type="text" class="form-control" 117 + <div class="col-md-5">
  118 + <input type="text" class="form-control" name="jhlc"
115 ng-model="ctrl.TimeTableDetailForSave.jhlc" 119 ng-model="ctrl.TimeTableDetailForSave.jhlc"
  120 + ng-pattern="ctrl.float_regex"
116 /> 121 />
117 </div> 122 </div>
  123 + <!-- 隐藏块,显示验证信息 -->
  124 + <div class="alert alert-danger well-sm" ng-show="myForm.jhlc.$error.pattern">
  125 + 输入数字
  126 + </div>
118 127
119 </div> 128 </div>
120 <div class="form-group"> 129 <div class="form-group">
121 <label class="col-md-3 control-label">班次历时:</label> 130 <label class="col-md-3 control-label">班次历时:</label>
122 - <div class="col-md-7">  
123 - <input type="text" class="form-control" 131 + <div class="col-md-5">
  132 + <input type="text" class="form-control" name="bcsj"
124 ng-model="ctrl.TimeTableDetailForSave.bcsj" 133 ng-model="ctrl.TimeTableDetailForSave.bcsj"
  134 + ng-pattern="ctrl.number_regex"
125 /> 135 />
126 </div> 136 </div>
  137 + <!-- 隐藏块,显示验证信息 -->
  138 + <div class="alert alert-danger well-sm" ng-show="myForm.bcsj.$error.pattern">
  139 + 输入整数
  140 + </div>
127 141
128 </div> 142 </div>
129 - <div class="form-group has-success has-feedback"> 143 + <div class="form-group">
130 <label class="col-md-3 control-label">班次类型:</label> 144 <label class="col-md-3 control-label">班次类型:</label>
131 - <div class="col-md-7">  
132 - <sa-Select3 model="ctrl.TimeTableDetailForSave"  
133 - name="bcType"  
134 - placeholder="请选择班次类型..."  
135 - dcvalue="{{ctrl.TimeTableDetailForSave.bcType}}" 145 + <div class="col-md-5">
  146 + <sa-Select5 name="bcType"
  147 + model="ctrl.TimeTableDetailForSave"
  148 + cmaps="{'bcType': 'code'}"
136 dcname="bcType" 149 dcname="bcType"
137 icname="code" 150 icname="code"
138 - icnames="name"  
139 - datatype="ScheduleType"  
140 - >  
141 - </sa-Select3> 151 + dsparams="{{ {type: 'dic', param: 'ScheduleType' } | json }}"
  152 + iterobjname="item"
  153 + iterobjexp="item.name"
  154 + searchph="请选择班次类型..."
  155 + searchexp="this.name"
  156 + required
  157 + >
  158 + </sa-Select5>
142 </div> 159 </div>
143 160
144 </div> 161 </div>
src/main/resources/static/pages/scheduleApp/module/core/ttInfoManage/detailedit/timeTableDetailManage_old.js
@@ -283,6 +283,16 @@ angular.module(&#39;ScheduleApp&#39;).controller( @@ -283,6 +283,16 @@ angular.module(&#39;ScheduleApp&#39;).controller(
283 if (id) { 283 if (id) {
284 TTInfoDetail.get({id: id}, function(value) { 284 TTInfoDetail.get({id: id}, function(value) {
285 self.TimeTableDetailForSave = value; 285 self.TimeTableDetailForSave = value;
  286 + if (!self.TimeTableDetailForSave.qdz) {
  287 + self.TimeTableDetailForSave.qdz = {};
  288 + }
  289 + if (!self.TimeTableDetailForSave.zdz) {
  290 + self.TimeTableDetailForSave.zdz = {};
  291 + }
  292 + if (!self.TimeTableDetailForSave.tcc) {
  293 + self.TimeTableDetailForSave.tcc = {};
  294 + }
  295 +
286 self.title2 = 296 self.title2 =
287 self.xlname + "(" + self.ttname + ")" + "时刻表明细信息" + 297 self.xlname + "(" + self.ttname + ")" + "时刻表明细信息" +
288 "->路牌" + self.TimeTableDetailForSave.lp.lpName + 298 "->路牌" + self.TimeTableDetailForSave.lp.lpName +
@@ -299,6 +309,8 @@ angular.module(&#39;ScheduleApp&#39;).controller( @@ -299,6 +309,8 @@ angular.module(&#39;ScheduleApp&#39;).controller(
299 // delete $stateParams.id; 309 // delete $stateParams.id;
300 //} 310 //}
301 311
  312 + // TODO:
  313 +
302 if (self.TimeTableDetailForSave.tcc && !self.TimeTableDetailForSave.tcc.id) 314 if (self.TimeTableDetailForSave.tcc && !self.TimeTableDetailForSave.tcc.id)
303 delete self.TimeTableDetailForSave.tcc; 315 delete self.TimeTableDetailForSave.tcc;
304 if (self.TimeTableDetailForSave.qdz && !self.TimeTableDetailForSave.qdz.id) 316 if (self.TimeTableDetailForSave.qdz && !self.TimeTableDetailForSave.qdz.id)
@@ -344,6 +356,13 @@ angular.module(&#39;ScheduleApp&#39;).controller( @@ -344,6 +356,13 @@ angular.module(&#39;ScheduleApp&#39;).controller(
344 var self = this; 356 var self = this;
345 var TTInfoDetail = service.getQueryClass(); 357 var TTInfoDetail = service.getQueryClass();
346 358
  359 + // 时间正则表达式(格式hh:mm,如:06:39)
  360 + self.time_regex = /^(([0-1]\d)|(2[0-4])):[0-5]\d$/;
  361 + // 整数
  362 + self.number_regex = /^-?\d+$/;
  363 + // 小数
  364 + self.float_regex = /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/;
  365 +
347 // 欲保存的busInfo信息,绑定 366 // 欲保存的busInfo信息,绑定
348 self.TimeTableDetailForSave = new TTInfoDetail; 367 self.TimeTableDetailForSave = new TTInfoDetail;
349 self.TimeTableDetailForSave.tcc = {}; 368 self.TimeTableDetailForSave.tcc = {};