Commit 57b395ef107e15c99b641eb878c92f2b78039bde
Merge branch 'minhang' of http://222.66.0.204:8090/panzhaov5/bsth_control into minhang
# Conflicts: # src/main/resources/static/real_control_v2/mapmonitor/fragments/playback_v2/main.html
Showing
25 changed files
with
1153 additions
and
669 deletions
pom.xml
| @@ -237,6 +237,27 @@ | @@ -237,6 +237,27 @@ | ||
| 237 | <version>1.13</version> | 237 | <version>1.13</version> |
| 238 | </dependency> | 238 | </dependency> |
| 239 | 239 | ||
| 240 | + <dependency> | ||
| 241 | + <groupId>org.dbunit</groupId> | ||
| 242 | + <artifactId>dbunit</artifactId> | ||
| 243 | + <version>2.4.9</version> | ||
| 244 | + <scope>test</scope> | ||
| 245 | + | ||
| 246 | + <exclusions> | ||
| 247 | + <exclusion> | ||
| 248 | + <groupId>org.slf4j</groupId> | ||
| 249 | + <artifactId>slf4j-api</artifactId> | ||
| 250 | + </exclusion> | ||
| 251 | + </exclusions> | ||
| 252 | + </dependency> | ||
| 253 | + | ||
| 254 | + <dependency> | ||
| 255 | + <groupId>com.h2database</groupId> | ||
| 256 | + <artifactId>h2</artifactId> | ||
| 257 | + <version>1.2.132</version> | ||
| 258 | + <scope>test</scope> | ||
| 259 | + </dependency> | ||
| 260 | + | ||
| 240 | </dependencies> | 261 | </dependencies> |
| 241 | 262 | ||
| 242 | <dependencyManagement> | 263 | <dependencyManagement> |
src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
| @@ -369,8 +369,35 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | @@ -369,8 +369,35 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, | ||
| 369 | } | 369 | } |
| 370 | 370 | ||
| 371 | @RequestMapping(value="/statisticsDailyTj") | 371 | @RequestMapping(value="/statisticsDailyTj") |
| 372 | - public List<Map<String,Object>> statisticsDailyTj(@RequestParam String gsdm,@RequestParam String fgsdm, @RequestParam String line, @RequestParam String date, | ||
| 373 | - @RequestParam String date2,@RequestParam String xlName, @RequestParam String type){ | 372 | + public List<Map<String,Object>> statisticsDailyTj(@RequestParam Map<String, Object> map){ |
| 373 | + String gsdm=""; | ||
| 374 | + if(map.get("gsdm")!=null){ | ||
| 375 | + gsdm=map.get("gsdm").toString(); | ||
| 376 | + } | ||
| 377 | + String fgsdm=""; | ||
| 378 | + if(map.get("fgsdm")!=null){ | ||
| 379 | + fgsdm=map.get("fgsdm").toString(); | ||
| 380 | + } | ||
| 381 | + String line=""; | ||
| 382 | + if(map.get("line")!=null){ | ||
| 383 | + line=map.get("line").toString(); | ||
| 384 | + } | ||
| 385 | + String date=""; | ||
| 386 | + if(map.get("date")!=null){ | ||
| 387 | + date=map.get("date").toString(); | ||
| 388 | + } | ||
| 389 | + String date2=""; | ||
| 390 | + if(map.get("date2")!=null){ | ||
| 391 | + date2=map.get("date2").toString(); | ||
| 392 | + } | ||
| 393 | + String xlName=""; | ||
| 394 | + if(map.get("xlName")!=null){ | ||
| 395 | + xlName=map.get("xlName").toString(); | ||
| 396 | + } | ||
| 397 | + String type=""; | ||
| 398 | + if(map.get("type")!=null){ | ||
| 399 | + type=map.get("type").toString(); | ||
| 400 | + } | ||
| 374 | return scheduleRealInfoService.statisticsDailyTj(gsdm,fgsdm,line, date,date2, xlName, type); | 401 | return scheduleRealInfoService.statisticsDailyTj(gsdm,fgsdm,line, date,date2, xlName, type); |
| 375 | } | 402 | } |
| 376 | 403 |
src/main/java/com/bsth/data/schedule/thread/CalcOilThread.java
| 1 | package com.bsth.data.schedule.thread; | 1 | package com.bsth.data.schedule.thread; |
| 2 | 2 | ||
| 3 | +import com.bsth.service.oil.DlbService; | ||
| 3 | import com.bsth.data.safe_driv.SafeDrivCenter; | 4 | import com.bsth.data.safe_driv.SafeDrivCenter; |
| 4 | import com.bsth.service.oil.YlbService; | 5 | import com.bsth.service.oil.YlbService; |
| 5 | import org.slf4j.Logger; | 6 | import org.slf4j.Logger; |
| @@ -16,7 +17,8 @@ public class CalcOilThread extends Thread{ | @@ -16,7 +17,8 @@ public class CalcOilThread extends Thread{ | ||
| 16 | 17 | ||
| 17 | @Autowired | 18 | @Autowired |
| 18 | YlbService ylbService; | 19 | YlbService ylbService; |
| 19 | - | 20 | + @Autowired |
| 21 | + DlbService dlbService; | ||
| 20 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 22 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 21 | 23 | ||
| 22 | @Override | 24 | @Override |
| @@ -24,6 +26,7 @@ public class CalcOilThread extends Thread{ | @@ -24,6 +26,7 @@ public class CalcOilThread extends Thread{ | ||
| 24 | try{ | 26 | try{ |
| 25 | logger.info("开始计算路单里程加注量...."); | 27 | logger.info("开始计算路单里程加注量...."); |
| 26 | ylbService.obtainDsq(); | 28 | ylbService.obtainDsq(); |
| 29 | + dlbService.obtainDsq(); | ||
| 27 | logger.info("计算路单里程加注量结束!"); | 30 | logger.info("计算路单里程加注量结束!"); |
| 28 | 31 | ||
| 29 | //清除安全驾驶数据 先临时蹭这个线程 | 32 | //清除安全驾驶数据 先临时蹭这个线程 |
src/main/java/com/bsth/service/oil/DlbService.java
| @@ -18,4 +18,6 @@ public interface DlbService extends BaseService<Dlb, Integer>{ | @@ -18,4 +18,6 @@ public interface DlbService extends BaseService<Dlb, Integer>{ | ||
| 18 | Map<String, Object> sumYlb(Map<String, Object> map); | 18 | Map<String, Object> sumYlb(Map<String, Object> map); |
| 19 | 19 | ||
| 20 | Map<String, Object> saveDlbList(Map<String, Object> map) throws Exception; | 20 | Map<String, Object> saveDlbList(Map<String, Object> map) throws Exception; |
| 21 | + | ||
| 22 | + String obtainDsq() throws Exception; | ||
| 21 | } | 23 | } |
src/main/java/com/bsth/service/oil/impl/DlbServiceImpl.java
| @@ -6,6 +6,7 @@ import java.text.DecimalFormat; | @@ -6,6 +6,7 @@ import java.text.DecimalFormat; | ||
| 6 | import java.text.ParseException; | 6 | import java.text.ParseException; |
| 7 | import java.text.SimpleDateFormat; | 7 | import java.text.SimpleDateFormat; |
| 8 | import java.util.ArrayList; | 8 | import java.util.ArrayList; |
| 9 | +import java.util.Calendar; | ||
| 9 | import java.util.Date; | 10 | import java.util.Date; |
| 10 | import java.util.HashMap; | 11 | import java.util.HashMap; |
| 11 | import java.util.Iterator; | 12 | import java.util.Iterator; |
| @@ -70,8 +71,144 @@ public class DlbServiceImpl extends BaseServiceImpl<Dlb,Integer> implements DlbS | @@ -70,8 +71,144 @@ public class DlbServiceImpl extends BaseServiceImpl<Dlb,Integer> implements DlbS | ||
| 70 | JdbcTemplate jdbcTemplate; | 71 | JdbcTemplate jdbcTemplate; |
| 71 | 72 | ||
| 72 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 73 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 74 | + | ||
| 75 | + @Transactional | ||
| 76 | + @Override | ||
| 77 | + public String obtainDsq() throws Exception{ | ||
| 78 | + String result = "failure"; | ||
| 79 | + List<Cars> carsList=carsRepository.findCars(); | ||
| 80 | + Map<String, Boolean> carsMap=new HashMap<String, Boolean>(); | ||
| 81 | + for (int i = 0; i < carsList.size(); i++) { | ||
| 82 | + Cars c=carsList.get(i); | ||
| 83 | + carsMap.put(c.getInsideCode(), c.getSfdc()); | ||
| 84 | + } | ||
| 85 | + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); | ||
| 86 | + Date dNow = new Date(); //当前时间 | ||
| 87 | + Date dBefore = new Date(); | ||
| 88 | + Calendar calendar = Calendar.getInstance(); //得到日历 | ||
| 89 | + calendar.setTime(dNow);//把当前时间赋给日历 | ||
| 90 | + calendar.add(Calendar.DAY_OF_MONTH, -1); //设置为前一天 | ||
| 91 | + dBefore = calendar.getTime(); //得到前一天的时间 | ||
| 92 | + String rq=sdf.format(dBefore); | ||
| 93 | + String line=""; | ||
| 94 | + //保留两位小数 | ||
| 95 | + DecimalFormat df = new DecimalFormat("#.00"); | ||
| 96 | + // TODO Auto-generated method stub | ||
| 97 | + Map<String, Object> newMap=new HashMap<String,Object>(); | ||
| 98 | + //当天DLB信息 | ||
| 99 | + List<Dlb> dlList=repository.obtainDl(rq, "", "", line, "", "nbbm"); | ||
| 100 | + //当天YLXXB信息 | ||
| 101 | + List<Ylxxb> ylxxList=ylxxbRepository.obtainYlxx(rq,1,""); | ||
| 102 | + //当天加电信息表 | ||
| 103 | + List<Jdl> jdlList=jdlRepository.JdlList(rq); | ||
| 104 | + //前一天所有车辆最后进场班次信息 | ||
| 105 | + List<Dlb> dlListBe=repository.obtainYlbefore(rq, "", "", "", ""); | ||
| 106 | + List<Cdl> cdyList=cdlRepository.obtainCdl(); | ||
| 107 | + //从排班表中计算出行驶的总里程 | ||
| 108 | + List<Map<String,Object>> listpb=scheduleRealInfoService.yesterdayDataList(line,rq,"","","",""); | ||
| 109 | + List<Ylb> addList=new ArrayList<Ylb>(); | ||
| 110 | + List<Ylb> updateList=new ArrayList<Ylb>(); | ||
| 111 | + for(int x=0;x<listpb.size();x++){ | ||
| 112 | + String type="add"; | ||
| 113 | + boolean sfdc=false; | ||
| 114 | + Map<String, Object> map=listpb.get(x); | ||
| 115 | + if (carsMap.get(map.get("clZbh").toString())!=null) { | ||
| 116 | + sfdc= carsMap.get(map.get("clZbh").toString()); | ||
| 117 | + }else{ | ||
| 118 | + sfdc=false; | ||
| 119 | + } | ||
| 120 | + if(sfdc){ | ||
| 121 | + //判断驾驶员驾驶的该车辆是否已经存入了(查出的结果集中日期是相同的,根据驾驶员、内部编号、线路编码判断) | ||
| 122 | + Dlb t=new Dlb(); | ||
| 123 | + for(int k=0;k<dlList.size();k++){ | ||
| 124 | + Dlb t1=dlList.get(k); | ||
| 125 | + if(t1.getNbbm().equals(map.get("clZbh").toString()) | ||
| 126 | + &&t1.getJsy().equals(map.get("jGh").toString()) | ||
| 127 | + &&t1.getXlbm().equals(map.get("xlBm").toString())) | ||
| 128 | + { | ||
| 129 | + t=t1; | ||
| 130 | + type="update"; | ||
| 131 | + } | ||
| 132 | + } | ||
| 133 | + try { | ||
| 134 | + //当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量 | ||
| 135 | + Double jzl=0.0; | ||
| 136 | + if(map.get("seqNumber").toString().equals("1")){ | ||
| 137 | + boolean fage=true; | ||
| 138 | + for (int i = 0; i < dlListBe.size(); i++) { | ||
| 139 | + Dlb dlb=dlListBe.get(i); | ||
| 140 | + if(map.get("clZbh").toString().equals(dlb.getNbbm())){ | ||
| 141 | + t.setCzcd(dlb.getJzcd()); | ||
| 142 | + fage=false; | ||
| 143 | + break; | ||
| 144 | + } | ||
| 145 | + } | ||
| 146 | + if(fage){ | ||
| 147 | + for (int y = 0; y < cdyList.size(); y++) { | ||
| 148 | + Cdl cdl=cdyList.get(y); | ||
| 149 | + if(map.get("clZbh").toString().equals(cdl.getNbbm())){ | ||
| 150 | + t.setCzcd(cdl.getClcd()==null?0:cdl.getClcd()); | ||
| 151 | + fage=false; | ||
| 152 | + break; | ||
| 153 | + } | ||
| 154 | + } | ||
| 155 | + } | ||
| 156 | + if(fage){ | ||
| 157 | + t.setCzcd(0.0); | ||
| 158 | + } | ||
| 159 | + | ||
| 160 | + //手动导入没有驾驶员工号 | ||
| 161 | + for (int i = 0; i < jdlList.size(); i++) { | ||
| 162 | + Jdl jdl=jdlList.get(i); | ||
| 163 | + if(map.get("clZbh").toString().equals(jdl.getNbbm()) ){ | ||
| 164 | + jzl+=jdl.getJdl(); | ||
| 165 | + } | ||
| 166 | + } | ||
| 167 | + } | ||
| 168 | + | ||
| 169 | + | ||
| 170 | + //把当天的YLXXB的加注量设置为当天YLB的加注量(根据车号,驾驶员判断) | ||
| 171 | + for(int j=0;j<ylxxList.size();j++){ | ||
| 172 | + Ylxxb ylxxb= ylxxList.get(j); | ||
| 173 | + if(map.get("clZbh").toString().equals(ylxxb.getNbbm()) &&map.get("jGh").toString().equals(ylxxb.getJsy())){ | ||
| 174 | + jzl+=ylxxb.getJzl(); | ||
| 175 | + } | ||
| 176 | + } | ||
| 177 | + | ||
| 178 | + t.setCdl(jzl); | ||
| 179 | + if(type.equals("add")){ | ||
| 180 | + t.setHd(jzl); | ||
| 181 | + t.setJzcd(t.getCzcd()); | ||
| 182 | + } | ||
| 183 | + | ||
| 184 | + t.setNbbm(map.get("clZbh").toString()); | ||
| 185 | + t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); | ||
| 186 | + t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | ||
| 187 | + t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); | ||
| 188 | + t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | ||
| 189 | + t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); | ||
| 190 | + t.setFgsdm(map.get("bCompany")==null?"":map.get("bCompany").toString()); | ||
| 191 | + t.setJhsj(map.get("fcsj")==null?"":map.get("fcsj").toString()); | ||
| 192 | + t.setRq(sdf.parse(rq)); | ||
| 193 | + t.setCreatetime(new Date()); | ||
| 194 | + /*if(type.equals("add")){ | ||
| 195 | + addList.add(t); | ||
| 196 | + }else{ | ||
| 197 | + updateList.add(t); | ||
| 198 | + }*/ | ||
| 199 | + repository.save(t); | ||
| 200 | + newMap.put("status", ResponseCode.SUCCESS); | ||
| 201 | + } catch (ParseException e) { | ||
| 202 | + // TODO Auto-generated catch block | ||
| 203 | + newMap.put("status", ResponseCode.ERROR); | ||
| 204 | + e.printStackTrace(); | ||
| 205 | + } | ||
| 206 | + } | ||
| 207 | + } | ||
| 208 | + return result; | ||
| 209 | + } | ||
| 73 | /** | 210 | /** |
| 74 | - * 获取进存油信息 | 211 | + * 获取进存电信息 |
| 75 | * @Transactional 回滚事物 | 212 | * @Transactional 回滚事物 |
| 76 | */ | 213 | */ |
| 77 | @Transactional | 214 | @Transactional |
src/main/java/com/bsth/service/oil/impl/YlbServiceImpl.java
| @@ -172,7 +172,7 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | @@ -172,7 +172,7 @@ public class YlbServiceImpl extends BaseServiceImpl<Ylb,Integer> implements YlbS | ||
| 172 | t.setJzl(jzl);*/ | 172 | t.setJzl(jzl);*/ |
| 173 | t.setNbbm(map.get("clZbh").toString()); | 173 | t.setNbbm(map.get("clZbh").toString()); |
| 174 | t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); | 174 | t.setJsy(map.get("jGh")==null?"":map.get("jGh").toString()); |
| 175 | - t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(df.format(Double.parseDouble(map.get("totalKilometers").toString())))); | 175 | + t.setZlc(map.get("totalKilometers")==null?0.0:Double.parseDouble(map.get("totalKilometers").toString())); |
| 176 | t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); | 176 | t.setXlbm(map.get("xlBm")==null?"":map.get("xlBm").toString()); |
| 177 | t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); | 177 | t.setJcsx(Integer.parseInt(map.get("seqNumber").toString())); |
| 178 | t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); | 178 | t.setSsgsdm(map.get("company")==null?"":map.get("company").toString()); |
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
| @@ -581,62 +581,20 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -581,62 +581,20 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 581 | List<Iterator<?>> list = new ArrayList<Iterator<?>>(); | 581 | List<Iterator<?>> list = new ArrayList<Iterator<?>>(); |
| 582 | List<ScheduleRealInfo> scheduleRealInfos = scheduleRealInfoRepository.queryListWaybill(jName, clZbh, lpName, date, line); | 582 | List<ScheduleRealInfo> scheduleRealInfos = scheduleRealInfoRepository.queryListWaybill(jName, clZbh, lpName, date, line); |
| 583 | List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>(); | 583 | List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>(); |
| 584 | - | 584 | +// List<ScheduleRealInfo> scheduleRealInfos=scheduleRealInfoRepository.queryListWaybillXcld(jName, clZbh, lpName, date, line); |
| 585 | + List<ScheduleRealInfo> lists=new ArrayList<ScheduleRealInfo>(); | ||
| 586 | + for (int i = 0; i < scheduleRealInfos.size(); i++) { | ||
| 587 | + ScheduleRealInfo s=scheduleRealInfos.get(i); | ||
| 588 | + if(s.getZdsjActual()!=null){ | ||
| 589 | + lists.add(s); | ||
| 590 | + } | ||
| 591 | + } | ||
| 585 | DecimalFormat format = new DecimalFormat("0.00"); | 592 | DecimalFormat format = new DecimalFormat("0.00"); |
| 586 | // int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); | 593 | // int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); |
| 587 | // int ljbc = scheduleRealInfoRepository.findLjbc(jName, clZbh, lpName); | 594 | // int ljbc = scheduleRealInfoRepository.findLjbc(jName, clZbh, lpName); |
| 588 | - int jhbc = 0, cjbc = 0, ljbc = 0; | ||
| 589 | - double jhlc = 0, yygl = 0, ksgl = 0, tempJhlc = 0; | ||
| 590 | - float addMileage = 0l, remMileage = 0l; | ||
| 591 | 595 | ||
| 592 | Map<String, Object> map; | 596 | Map<String, Object> map; |
| 593 | for (ScheduleRealInfo scheduleRealInfo : scheduleRealInfos) { | 597 | for (ScheduleRealInfo scheduleRealInfo : scheduleRealInfos) { |
| 594 | - if (scheduleRealInfo != null) { | ||
| 595 | - //计算计划里程(主任务过滤掉临加班次),烂班里程,临加里程,计划班次,烂班班次,增加班次 | ||
| 596 | - if (scheduleRealInfo != null) { | ||
| 597 | - //计划里程(主任务过滤掉临加班次), | ||
| 598 | - //烂班里程(主任务烂班), | ||
| 599 | - //临加里程(主任务临加), | ||
| 600 | - //计划班次,烂班班次,增加班次 | ||
| 601 | - tempJhlc = scheduleRealInfo.getJhlc() == null ? 0 : scheduleRealInfo.getJhlc(); | ||
| 602 | - if (scheduleRealInfo.isSflj()) { | ||
| 603 | - ljbc++; | ||
| 604 | - } else { | ||
| 605 | - jhlc += tempJhlc; | ||
| 606 | - jhbc++; | ||
| 607 | - if (scheduleRealInfo.getStatus() == -1) { | ||
| 608 | - remMileage += tempJhlc; | ||
| 609 | - cjbc++; | ||
| 610 | - } | ||
| 611 | - } | ||
| 612 | - Set<ChildTaskPlan> childTaskPlans = scheduleRealInfo.getcTasks(); | ||
| 613 | - //计算营运里程,空驶里程 | ||
| 614 | - if (childTaskPlans.isEmpty()) { | ||
| 615 | - if (scheduleRealInfo.getBcType().equals("in") || scheduleRealInfo.getBcType().equals("out") | ||
| 616 | - ) { | ||
| 617 | - ksgl += tempJhlc; | ||
| 618 | - } else { | ||
| 619 | - yygl += tempJhlc; | ||
| 620 | - } | ||
| 621 | - } else { | ||
| 622 | - Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); | ||
| 623 | - while (it.hasNext()) { | ||
| 624 | - ChildTaskPlan childTaskPlan = it.next(); | ||
| 625 | - if (childTaskPlan.getMileageType().equals("empty")) { | ||
| 626 | - if (scheduleRealInfo.isSflj()) { | ||
| 627 | - addMileage += tempJhlc; | ||
| 628 | - } | ||
| 629 | - ksgl += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 630 | - } else { | ||
| 631 | - if (scheduleRealInfo.isSflj()) { | ||
| 632 | - addMileage += tempJhlc; | ||
| 633 | - } | ||
| 634 | - yygl += childTaskPlan.getMileage() == null ? 0 : childTaskPlan.getMileage(); | ||
| 635 | - } | ||
| 636 | - } | ||
| 637 | - } | ||
| 638 | - } | ||
| 639 | - | ||
| 640 | map = new HashMap<String, Object>(); | 598 | map = new HashMap<String, Object>(); |
| 641 | try { | 599 | try { |
| 642 | scheduleRealInfo.setjName(scheduleRealInfo.getjGh() + scheduleRealInfo.getjName()); | 600 | scheduleRealInfo.setjName(scheduleRealInfo.getjGh() + scheduleRealInfo.getjName()); |
| @@ -661,21 +619,23 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -661,21 +619,23 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 661 | } catch (Exception e) { | 619 | } catch (Exception e) { |
| 662 | e.printStackTrace(); | 620 | e.printStackTrace(); |
| 663 | } | 621 | } |
| 664 | - } | ||
| 665 | } | 622 | } |
| 666 | 623 | ||
| 667 | //计算里程和班次数,并放入Map里 | 624 | //计算里程和班次数,并放入Map里 |
| 668 | map = new HashMap<String, Object>(); | 625 | map = new HashMap<String, Object>(); |
| 669 | - map.put("jhlc", format.format(jhlc)); | ||
| 670 | - map.put("remMileage", format.format(remMileage)); | ||
| 671 | - map.put("addMileage", format.format(addMileage)); | ||
| 672 | - map.put("yygl", format.format(yygl)); | ||
| 673 | - map.put("ksgl", format.format(ksgl)); | ||
| 674 | - map.put("realMileage", format.format(yygl + ksgl)); | ||
| 675 | - map.put("jhbc", jhbc); | ||
| 676 | - map.put("cjbc", cjbc); | ||
| 677 | - map.put("ljbc", ljbc); | ||
| 678 | - map.put("sjbc", jhbc - cjbc + ljbc); | 626 | + map.put("jhlc", culateMieageService.culateJhgl(scheduleRealInfos)); |
| 627 | + map.put("remMileage",culateMieageService.culateLbgl(lists)); | ||
| 628 | + map.put("addMileage", culateMieageService.culateLjgl(lists)); | ||
| 629 | + double yygl=Arith.add(culateMieageService.culateSjgl(lists),culateMieageService.culateLjgl(lists)); | ||
| 630 | + map.put("yygl", yygl); | ||
| 631 | + double ksgl=Arith.add(culateMieageService.culateKsgl(lists),culateMieageService.culateJccgl(lists)); | ||
| 632 | + map.put("ksgl",ksgl); | ||
| 633 | + map.put("realMileage", Arith.add(yygl ,ksgl)); | ||
| 634 | + map.put("jhbc", culateMieageService.culateJhgl(scheduleRealInfos)); | ||
| 635 | + map.put("cjbc", culateMieageService.culateLbbc(lists)); | ||
| 636 | + map.put("ljbc", culateMieageService.culateLjbc(lists, "")); | ||
| 637 | + int sjbc =culateMieageService.culateLjbc(lists, "")+culateMieageService.culateSjbc(lists, ""); | ||
| 638 | + map.put("sjbc", sjbc); | ||
| 679 | 639 | ||
| 680 | String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; | 640 | String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; |
| 681 | 641 | ||
| @@ -1414,19 +1374,27 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1414,19 +1374,27 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1414 | public Map<String, Object> findKMBC(String jGh, String clZbh, | 1374 | public Map<String, Object> findKMBC(String jGh, String clZbh, |
| 1415 | String lpName, String date, String line) { | 1375 | String lpName, String date, String line) { |
| 1416 | Map<String, Object> map = new HashMap<String, Object>(); | 1376 | Map<String, Object> map = new HashMap<String, Object>(); |
| 1417 | - List<ScheduleRealInfo> lists=scheduleRealInfoRepository.queryListWaybillXcld(jGh, clZbh, lpName, date, line); | 1377 | + List<ScheduleRealInfo> list=scheduleRealInfoRepository.queryListWaybillXcld(jGh, clZbh, lpName, date, line); |
| 1378 | + List<ScheduleRealInfo> lists=new ArrayList<ScheduleRealInfo>(); | ||
| 1379 | + for (int i = 0; i < list.size(); i++) { | ||
| 1380 | + ScheduleRealInfo s=list.get(i); | ||
| 1381 | + if(s.getZdsjActual()!=null){ | ||
| 1382 | + lists.add(s); | ||
| 1383 | + } | ||
| 1384 | + } | ||
| 1418 | double ksgl=culateService.culateKsgl(lists); | 1385 | double ksgl=culateService.culateKsgl(lists); |
| 1419 | double sjgl=culateService.culateSjgl(lists); | 1386 | double sjgl=culateService.culateSjgl(lists); |
| 1420 | double jccgl=culateService.culateJccgl(lists); | 1387 | double jccgl=culateService.culateJccgl(lists); |
| 1421 | double ljgl=culateService.culateLjgl(lists); | 1388 | double ljgl=culateService.culateLjgl(lists); |
| 1422 | - map.put("jhlc", culateService.culateJhgl(lists)); //计划里程 | 1389 | + |
| 1390 | + map.put("jhlc", culateService.culateJhgl(list)); //计划里程 | ||
| 1423 | map.put("remMileage", culateService.culateLbgl(lists)); //烂班公里 | 1391 | map.put("remMileage", culateService.culateLbgl(lists)); //烂班公里 |
| 1424 | map.put("addMileage", ljgl); //临加公里 | 1392 | map.put("addMileage", ljgl); //临加公里 |
| 1425 | map.put("yygl",Arith.add(sjgl,ljgl)); //实际公里 | 1393 | map.put("yygl",Arith.add(sjgl,ljgl)); //实际公里 |
| 1426 | map.put("ksgl", ksgl);//空驶公里 | 1394 | map.put("ksgl", ksgl);//空驶公里 |
| 1427 | map.put("realMileage",Arith.add(Arith.add(ksgl,jccgl ),Arith.add(sjgl,ljgl))); | 1395 | map.put("realMileage",Arith.add(Arith.add(ksgl,jccgl ),Arith.add(sjgl,ljgl))); |
| 1428 | // map.put("realMileage", format.format(yygl + ksgl + jcclc+addMileage)); | 1396 | // map.put("realMileage", format.format(yygl + ksgl + jcclc+addMileage)); |
| 1429 | - map.put("jhbc", culateService.culateJhbc(lists,"")); | 1397 | + map.put("jhbc", culateService.culateJhbc(list,"")); |
| 1430 | map.put("cjbc", culateService.culateLbbc(lists)); | 1398 | map.put("cjbc", culateService.culateLbbc(lists)); |
| 1431 | map.put("ljbc", culateService.culateLjbc(lists,"")); | 1399 | map.put("ljbc", culateService.culateLjbc(lists,"")); |
| 1432 | map.put("sjbc", culateService.culateJhbc(lists,"") - culateService.culateLbbc(lists) + culateService.culateLjbc(lists,"")); | 1400 | map.put("sjbc", culateService.culateJhbc(lists,"") - culateService.culateLbbc(lists) + culateService.culateLjbc(lists,"")); |
| @@ -1670,7 +1638,11 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -1670,7 +1638,11 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 1670 | map.put("ssgl_kx", culateService.culateCJLC(lists, "客稀")); | 1638 | map.put("ssgl_kx", culateService.culateCJLC(lists, "客稀")); |
| 1671 | map.put("ssgl_qh", culateService.culateCJLC(lists, "气候")); | 1639 | map.put("ssgl_qh", culateService.culateCJLC(lists, "气候")); |
| 1672 | map.put("ssgl_yw", culateService.culateCJLC(lists, "援外")); | 1640 | map.put("ssgl_yw", culateService.culateCJLC(lists, "援外")); |
| 1673 | - map.put("ssgl_other", culateService.culateCJLC(lists, "其他")); | 1641 | + double ssgl_pc=culateService.culateCJLC(lists, "配车"); |
| 1642 | + double ssgl_by=culateService.culateCJLC(lists, "保养"); | ||
| 1643 | + double ssgl_cj=culateService.culateCJLC(lists, "抽减"); | ||
| 1644 | + double ssgl_qt=culateService.culateCJLC(lists, "其他"); | ||
| 1645 | + map.put("ssgl_other", Arith.add(Arith.add(ssgl_pc, ssgl_by),Arith.add(ssgl_cj, ssgl_qt))); | ||
| 1674 | map.put("ssbc", culateService.culateLbbc(lists)); | 1646 | map.put("ssbc", culateService.culateLbbc(lists)); |
| 1675 | map.put("ljgl", culateService.culateLjgl(lists)); | 1647 | map.put("ljgl", culateService.culateLjgl(lists)); |
| 1676 | map.put("jhbc", culateService.culateJhbc(lists,"")); | 1648 | map.put("jhbc", culateService.culateJhbc(lists,"")); |
| @@ -3793,6 +3765,76 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3793,6 +3765,76 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3793 | return new ArrayList<Map<String, Object>>(); | 3765 | return new ArrayList<Map<String, Object>>(); |
| 3794 | } | 3766 | } |
| 3795 | 3767 | ||
| 3768 | + public List<ScheduleRealInfo> exportWaybill_pl(List<ScheduleRealInfo> listpl,String date,String jName, String clZbh,String lpName) { | ||
| 3769 | + ReportUtils ee = new ReportUtils(); | ||
| 3770 | + ReportRelatedUtils rru = new ReportRelatedUtils(); | ||
| 3771 | + List<Iterator<?>> list = new ArrayList<Iterator<?>>(); | ||
| 3772 | + List<ScheduleRealInfo> scheduleRealInfos = listpl; | ||
| 3773 | + List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>(); | ||
| 3774 | +// List<ScheduleRealInfo> scheduleRealInfos=scheduleRealInfoRepository.queryListWaybillXcld(jName, clZbh, lpName, date, line); | ||
| 3775 | + List<ScheduleRealInfo> lists=new ArrayList<ScheduleRealInfo>(); | ||
| 3776 | + for (int i = 0; i < scheduleRealInfos.size(); i++) { | ||
| 3777 | + ScheduleRealInfo s=scheduleRealInfos.get(i); | ||
| 3778 | + if(s.getZdsjActual()!=null){ | ||
| 3779 | + lists.add(s); | ||
| 3780 | + } | ||
| 3781 | + } | ||
| 3782 | + DecimalFormat format = new DecimalFormat("0.00"); | ||
| 3783 | +// int cjbc = scheduleRealInfoRepository.findCjbc(jName, clZbh, lpName); | ||
| 3784 | +// int ljbc = scheduleRealInfoRepository.findLjbc(jName, clZbh, lpName); | ||
| 3785 | + | ||
| 3786 | + Map<String, Object> map; | ||
| 3787 | + for (ScheduleRealInfo scheduleRealInfo : scheduleRealInfos) { | ||
| 3788 | + map = new HashMap<String, Object>(); | ||
| 3789 | + try { | ||
| 3790 | + scheduleRealInfo.setjName(scheduleRealInfo.getjGh() + scheduleRealInfo.getjName()); | ||
| 3791 | + scheduleRealInfo.setsName(scheduleRealInfo.getsGh() + scheduleRealInfo.getsName()); | ||
| 3792 | + map = rru.getMapValue(scheduleRealInfo); | ||
| 3793 | + String zdsj = scheduleRealInfo.getZdsj(); | ||
| 3794 | + String zdsjActual = scheduleRealInfo.getZdsjActual(); | ||
| 3795 | + if (zdsj != null && zdsjActual != null && | ||
| 3796 | + !zdsj.equals(zdsjActual)) { | ||
| 3797 | + if (zdsj.compareTo(zdsjActual) > 0) { | ||
| 3798 | + map.put("fast", TimeUtils.getTimeDifference(zdsj, zdsjActual)); | ||
| 3799 | + map.put("slow", ""); | ||
| 3800 | + } else { | ||
| 3801 | + map.put("fast", ""); | ||
| 3802 | + map.put("slow", TimeUtils.getTimeDifference(zdsj, zdsjActual)); | ||
| 3803 | + } | ||
| 3804 | + } else { | ||
| 3805 | + map.put("fast", ""); | ||
| 3806 | + map.put("slow", ""); | ||
| 3807 | + } | ||
| 3808 | + listMap.add(map); | ||
| 3809 | + } catch (Exception e) { | ||
| 3810 | + e.printStackTrace(); | ||
| 3811 | + } | ||
| 3812 | + } | ||
| 3813 | + | ||
| 3814 | + //计算里程和班次数,并放入Map里 | ||
| 3815 | + map = new HashMap<String, Object>(); | ||
| 3816 | + map.put("jhlc", culateMieageService.culateJhgl(scheduleRealInfos)); | ||
| 3817 | + map.put("remMileage",culateMieageService.culateLbgl(lists)); | ||
| 3818 | + map.put("addMileage", culateMieageService.culateLjgl(lists)); | ||
| 3819 | + double yygl=Arith.add(culateMieageService.culateSjgl(lists),culateMieageService.culateLjgl(lists)); | ||
| 3820 | + map.put("yygl", yygl); | ||
| 3821 | + double ksgl=Arith.add(culateMieageService.culateKsgl(lists),culateMieageService.culateJccgl(lists)); | ||
| 3822 | + map.put("ksgl",ksgl); | ||
| 3823 | + map.put("realMileage", Arith.add(yygl ,ksgl)); | ||
| 3824 | + map.put("jhbc", culateMieageService.culateJhgl(scheduleRealInfos)); | ||
| 3825 | + map.put("cjbc", culateMieageService.culateLbbc(lists)); | ||
| 3826 | + map.put("ljbc", culateMieageService.culateLjbc(lists, "")); | ||
| 3827 | + int sjbc =culateMieageService.culateLjbc(lists, "")+culateMieageService.culateSjbc(lists, ""); | ||
| 3828 | + map.put("sjbc", sjbc); | ||
| 3829 | + | ||
| 3830 | + String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; | ||
| 3831 | + | ||
| 3832 | + list.add(listMap.iterator()); | ||
| 3833 | + ee.excelReplace(list, new Object[]{scheduleRealInfos.get(0), map}, path + "mould/waybill_minhang.xls", | ||
| 3834 | + path + "export/" + date + "-" + jName + "-" + clZbh + "-" + lpName + "-行车路单.xls"); | ||
| 3835 | + return scheduleRealInfos; | ||
| 3836 | + } | ||
| 3837 | + | ||
| 3796 | @Override | 3838 | @Override |
| 3797 | public Map<String, Object> exportWaybillMore(Map<String, Object> map) { | 3839 | public Map<String, Object> exportWaybillMore(Map<String, Object> map) { |
| 3798 | String date = map.get("date").toString(); | 3840 | String date = map.get("date").toString(); |
| @@ -3814,12 +3856,19 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | @@ -3814,12 +3856,19 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl<ScheduleRealInf | ||
| 3814 | } | 3856 | } |
| 3815 | } | 3857 | } |
| 3816 | file.mkdirs(); | 3858 | file.mkdirs(); |
| 3817 | - | 3859 | + List<ScheduleRealInfo> lists_line=scheduleRealInfoRepository.scheduleByDateAndLineTjrb(line, date); |
| 3818 | for (List<String> list : lists) { | 3860 | for (List<String> list : lists) { |
| 3861 | + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>(); | ||
| 3819 | String jName = list.get(0); | 3862 | String jName = list.get(0); |
| 3820 | String clZbh = list.get(1); | 3863 | String clZbh = list.get(1); |
| 3821 | String lpName = list.get(2); | 3864 | String lpName = list.get(2); |
| 3822 | - this.exportWaybill(jName, clZbh, lpName, date, line); | 3865 | + for (int i = 0; i < lists_line.size(); i++) { |
| 3866 | + ScheduleRealInfo s=lists_line.get(i); | ||
| 3867 | + if(s.getjName().equals(jName) && s.getClZbh().equals(clZbh) && s.getLpName().equals(lpName)){ | ||
| 3868 | + newList.add(s); | ||
| 3869 | + } | ||
| 3870 | + } | ||
| 3871 | + this.exportWaybill_pl(newList, date, jName, clZbh, lpName); | ||
| 3823 | File temp = new File(path + date + "-" + jName + "-" + clZbh + "-" + lpName + "-行车路单.xls"); | 3872 | File temp = new File(path + date + "-" + jName + "-" + clZbh + "-" + lpName + "-行车路单.xls"); |
| 3824 | String fileName = file.getName(); | 3873 | String fileName = file.getName(); |
| 3825 | temp.renameTo(new File(path + fileName + "/" + temp.getName())); | 3874 | temp.renameTo(new File(path + fileName + "/" + temp.getName())); |
src/main/resources/datatools/ktrs/guideboardDataInput.ktr
| @@ -276,6 +276,155 @@ | @@ -276,6 +276,155 @@ | ||
| 276 | <hop> <from>启用被数据flag</from><to>插入/更新bsth_c_s_gbi</to><enabled>Y</enabled> </hop> | 276 | <hop> <from>启用被数据flag</from><to>插入/更新bsth_c_s_gbi</to><enabled>Y</enabled> </hop> |
| 277 | </order> | 277 | </order> |
| 278 | <step> | 278 | <step> |
| 279 | + <name>原始系统导出的Excel输入</name> | ||
| 280 | + <type>ExcelInput</type> | ||
| 281 | + <description/> | ||
| 282 | + <distribute>Y</distribute> | ||
| 283 | + <custom_distribution/> | ||
| 284 | + <copies>1</copies> | ||
| 285 | + <partitioning> | ||
| 286 | + <method>none</method> | ||
| 287 | + <schema_name/> | ||
| 288 | + </partitioning> | ||
| 289 | + <header>Y</header> | ||
| 290 | + <noempty>Y</noempty> | ||
| 291 | + <stoponempty>N</stoponempty> | ||
| 292 | + <filefield/> | ||
| 293 | + <sheetfield/> | ||
| 294 | + <sheetrownumfield/> | ||
| 295 | + <rownumfield/> | ||
| 296 | + <sheetfield/> | ||
| 297 | + <filefield/> | ||
| 298 | + <limit>0</limit> | ||
| 299 | + <encoding/> | ||
| 300 | + <add_to_result_filenames>Y</add_to_result_filenames> | ||
| 301 | + <accept_filenames>Y</accept_filenames> | ||
| 302 | + <accept_field>filepath_</accept_field> | ||
| 303 | + <accept_stepname>获取变量</accept_stepname> | ||
| 304 | + <file> | ||
| 305 | + <name/> | ||
| 306 | + <filemask/> | ||
| 307 | + <exclude_filemask/> | ||
| 308 | + <file_required>N</file_required> | ||
| 309 | + <include_subfolders>N</include_subfolders> | ||
| 310 | + </file> | ||
| 311 | + <fields> | ||
| 312 | + <field> | ||
| 313 | + <name>线路</name> | ||
| 314 | + <type>String</type> | ||
| 315 | + <length>-1</length> | ||
| 316 | + <precision>-1</precision> | ||
| 317 | + <trim_type>none</trim_type> | ||
| 318 | + <repeat>N</repeat> | ||
| 319 | + <format/> | ||
| 320 | + <currency/> | ||
| 321 | + <decimal/> | ||
| 322 | + <group/> | ||
| 323 | + </field> | ||
| 324 | + <field> | ||
| 325 | + <name>路牌编号</name> | ||
| 326 | + <type>String</type> | ||
| 327 | + <length>-1</length> | ||
| 328 | + <precision>-1</precision> | ||
| 329 | + <trim_type>none</trim_type> | ||
| 330 | + <repeat>N</repeat> | ||
| 331 | + <format>#</format> | ||
| 332 | + <currency/> | ||
| 333 | + <decimal/> | ||
| 334 | + <group/> | ||
| 335 | + </field> | ||
| 336 | + <field> | ||
| 337 | + <name>路牌名称</name> | ||
| 338 | + <type>String</type> | ||
| 339 | + <length>-1</length> | ||
| 340 | + <precision>-1</precision> | ||
| 341 | + <trim_type>none</trim_type> | ||
| 342 | + <repeat>N</repeat> | ||
| 343 | + <format>#</format> | ||
| 344 | + <currency/> | ||
| 345 | + <decimal/> | ||
| 346 | + <group/> | ||
| 347 | + </field> | ||
| 348 | + <field> | ||
| 349 | + <name>路牌类型</name> | ||
| 350 | + <type>String</type> | ||
| 351 | + <length>-1</length> | ||
| 352 | + <precision>-1</precision> | ||
| 353 | + <trim_type>none</trim_type> | ||
| 354 | + <repeat>N</repeat> | ||
| 355 | + <format/> | ||
| 356 | + <currency/> | ||
| 357 | + <decimal/> | ||
| 358 | + <group/> | ||
| 359 | + </field> | ||
| 360 | + </fields> | ||
| 361 | + <sheets> | ||
| 362 | + <sheet> | ||
| 363 | + <name>工作表1</name> | ||
| 364 | + <startrow>0</startrow> | ||
| 365 | + <startcol>0</startcol> | ||
| 366 | + </sheet> | ||
| 367 | + </sheets> | ||
| 368 | + <strict_types>N</strict_types> | ||
| 369 | + <error_ignored>N</error_ignored> | ||
| 370 | + <error_line_skipped>N</error_line_skipped> | ||
| 371 | + <bad_line_files_destination_directory/> | ||
| 372 | + <bad_line_files_extension>warning</bad_line_files_extension> | ||
| 373 | + <error_line_files_destination_directory/> | ||
| 374 | + <error_line_files_extension>error</error_line_files_extension> | ||
| 375 | + <line_number_files_destination_directory/> | ||
| 376 | + <line_number_files_extension>line</line_number_files_extension> | ||
| 377 | + <shortFileFieldName/> | ||
| 378 | + <pathFieldName/> | ||
| 379 | + <hiddenFieldName/> | ||
| 380 | + <lastModificationTimeFieldName/> | ||
| 381 | + <uriNameFieldName/> | ||
| 382 | + <rootUriNameFieldName/> | ||
| 383 | + <extensionFieldName/> | ||
| 384 | + <sizeFieldName/> | ||
| 385 | + <spreadsheet_type>JXL</spreadsheet_type> | ||
| 386 | + <cluster_schema/> | ||
| 387 | + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI> | ||
| 388 | + <xloc>150</xloc> | ||
| 389 | + <yloc>68</yloc> | ||
| 390 | + <draw>Y</draw> | ||
| 391 | + </GUI> | ||
| 392 | + </step> | ||
| 393 | + | ||
| 394 | + <step> | ||
| 395 | + <name>启用被数据flag</name> | ||
| 396 | + <type>Constant</type> | ||
| 397 | + <description/> | ||
| 398 | + <distribute>Y</distribute> | ||
| 399 | + <custom_distribution/> | ||
| 400 | + <copies>1</copies> | ||
| 401 | + <partitioning> | ||
| 402 | + <method>none</method> | ||
| 403 | + <schema_name/> | ||
| 404 | + </partitioning> | ||
| 405 | + <fields> | ||
| 406 | + <field> | ||
| 407 | + <name>isCancel</name> | ||
| 408 | + <type>Integer</type> | ||
| 409 | + <format/> | ||
| 410 | + <currency/> | ||
| 411 | + <decimal/> | ||
| 412 | + <group/> | ||
| 413 | + <nullif>0</nullif> | ||
| 414 | + <length>-1</length> | ||
| 415 | + <precision>-1</precision> | ||
| 416 | + <set_empty_string>N</set_empty_string> | ||
| 417 | + </field> | ||
| 418 | + </fields> | ||
| 419 | + <cluster_schema/> | ||
| 420 | + <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI> | ||
| 421 | + <xloc>544</xloc> | ||
| 422 | + <yloc>70</yloc> | ||
| 423 | + <draw>Y</draw> | ||
| 424 | + </GUI> | ||
| 425 | + </step> | ||
| 426 | + | ||
| 427 | + <step> | ||
| 279 | <name>字段改名</name> | 428 | <name>字段改名</name> |
| 280 | <type>SelectValues</type> | 429 | <type>SelectValues</type> |
| 281 | <description/> | 430 | <description/> |
| @@ -393,27 +542,27 @@ | @@ -393,27 +542,27 @@ | ||
| 393 | <value> | 542 | <value> |
| 394 | <name>xl</name> | 543 | <name>xl</name> |
| 395 | <rename>xlid</rename> | 544 | <rename>xlid</rename> |
| 396 | - <update>N</update> | 545 | + <update>Y</update> |
| 397 | </value> | 546 | </value> |
| 398 | <value> | 547 | <value> |
| 399 | <name>lp_no</name> | 548 | <name>lp_no</name> |
| 400 | <rename>lpno</rename> | 549 | <rename>lpno</rename> |
| 401 | - <update>N</update> | 550 | + <update>Y</update> |
| 402 | </value> | 551 | </value> |
| 403 | <value> | 552 | <value> |
| 404 | <name>lp_name</name> | 553 | <name>lp_name</name> |
| 405 | <rename>lpname</rename> | 554 | <rename>lpname</rename> |
| 406 | - <update>N</update> | 555 | + <update>Y</update> |
| 407 | </value> | 556 | </value> |
| 408 | <value> | 557 | <value> |
| 409 | <name>lp_type</name> | 558 | <name>lp_type</name> |
| 410 | <rename>lptype</rename> | 559 | <rename>lptype</rename> |
| 411 | - <update>N</update> | 560 | + <update>Y</update> |
| 412 | </value> | 561 | </value> |
| 413 | <value> | 562 | <value> |
| 414 | <name>is_cancel</name> | 563 | <name>is_cancel</name> |
| 415 | <rename>isCancel</rename> | 564 | <rename>isCancel</rename> |
| 416 | - <update>N</update> | 565 | + <update>Y</update> |
| 417 | </value> | 566 | </value> |
| 418 | </lookup> | 567 | </lookup> |
| 419 | <cluster_schema/> | 568 | <cluster_schema/> |
| @@ -512,122 +661,6 @@ | @@ -512,122 +661,6 @@ | ||
| 512 | </step> | 661 | </step> |
| 513 | 662 | ||
| 514 | <step> | 663 | <step> |
| 515 | - <name>原始系统导出的Excel输入</name> | ||
| 516 | - <type>ExcelInput</type> | ||
| 517 | - <description/> | ||
| 518 | - <distribute>Y</distribute> | ||
| 519 | - <custom_distribution/> | ||
| 520 | - <copies>1</copies> | ||
| 521 | - <partitioning> | ||
| 522 | - <method>none</method> | ||
| 523 | - <schema_name/> | ||
| 524 | - </partitioning> | ||
| 525 | - <header>Y</header> | ||
| 526 | - <noempty>Y</noempty> | ||
| 527 | - <stoponempty>N</stoponempty> | ||
| 528 | - <filefield/> | ||
| 529 | - <sheetfield/> | ||
| 530 | - <sheetrownumfield/> | ||
| 531 | - <rownumfield/> | ||
| 532 | - <sheetfield/> | ||
| 533 | - <filefield/> | ||
| 534 | - <limit>0</limit> | ||
| 535 | - <encoding/> | ||
| 536 | - <add_to_result_filenames>Y</add_to_result_filenames> | ||
| 537 | - <accept_filenames>Y</accept_filenames> | ||
| 538 | - <accept_field>filepath_</accept_field> | ||
| 539 | - <accept_stepname>获取变量</accept_stepname> | ||
| 540 | - <file> | ||
| 541 | - <name/> | ||
| 542 | - <filemask/> | ||
| 543 | - <exclude_filemask/> | ||
| 544 | - <file_required>N</file_required> | ||
| 545 | - <include_subfolders>N</include_subfolders> | ||
| 546 | - </file> | ||
| 547 | - <fields> | ||
| 548 | - <field> | ||
| 549 | - <name>线路</name> | ||
| 550 | - <type>String</type> | ||
| 551 | - <length>-1</length> | ||
| 552 | - <precision>-1</precision> | ||
| 553 | - <trim_type>none</trim_type> | ||
| 554 | - <repeat>N</repeat> | ||
| 555 | - <format/> | ||
| 556 | - <currency/> | ||
| 557 | - <decimal/> | ||
| 558 | - <group/> | ||
| 559 | - </field> | ||
| 560 | - <field> | ||
| 561 | - <name>路牌编号</name> | ||
| 562 | - <type>String</type> | ||
| 563 | - <length>-1</length> | ||
| 564 | - <precision>-1</precision> | ||
| 565 | - <trim_type>none</trim_type> | ||
| 566 | - <repeat>N</repeat> | ||
| 567 | - <format>#</format> | ||
| 568 | - <currency/> | ||
| 569 | - <decimal/> | ||
| 570 | - <group/> | ||
| 571 | - </field> | ||
| 572 | - <field> | ||
| 573 | - <name>路牌名称</name> | ||
| 574 | - <type>String</type> | ||
| 575 | - <length>-1</length> | ||
| 576 | - <precision>-1</precision> | ||
| 577 | - <trim_type>none</trim_type> | ||
| 578 | - <repeat>N</repeat> | ||
| 579 | - <format>#</format> | ||
| 580 | - <currency/> | ||
| 581 | - <decimal/> | ||
| 582 | - <group/> | ||
| 583 | - </field> | ||
| 584 | - <field> | ||
| 585 | - <name>路牌类型</name> | ||
| 586 | - <type>String</type> | ||
| 587 | - <length>-1</length> | ||
| 588 | - <precision>-1</precision> | ||
| 589 | - <trim_type>none</trim_type> | ||
| 590 | - <repeat>N</repeat> | ||
| 591 | - <format/> | ||
| 592 | - <currency/> | ||
| 593 | - <decimal/> | ||
| 594 | - <group/> | ||
| 595 | - </field> | ||
| 596 | - </fields> | ||
| 597 | - <sheets> | ||
| 598 | - <sheet> | ||
| 599 | - <name>工作表1</name> | ||
| 600 | - <startrow>0</startrow> | ||
| 601 | - <startcol>0</startcol> | ||
| 602 | - </sheet> | ||
| 603 | - </sheets> | ||
| 604 | - <strict_types>N</strict_types> | ||
| 605 | - <error_ignored>N</error_ignored> | ||
| 606 | - <error_line_skipped>N</error_line_skipped> | ||
| 607 | - <bad_line_files_destination_directory/> | ||
| 608 | - <bad_line_files_extension>warning</bad_line_files_extension> | ||
| 609 | - <error_line_files_destination_directory/> | ||
| 610 | - <error_line_files_extension>error</error_line_files_extension> | ||
| 611 | - <line_number_files_destination_directory/> | ||
| 612 | - <line_number_files_extension>line</line_number_files_extension> | ||
| 613 | - <shortFileFieldName/> | ||
| 614 | - <pathFieldName/> | ||
| 615 | - <hiddenFieldName/> | ||
| 616 | - <lastModificationTimeFieldName/> | ||
| 617 | - <uriNameFieldName/> | ||
| 618 | - <rootUriNameFieldName/> | ||
| 619 | - <extensionFieldName/> | ||
| 620 | - <sizeFieldName/> | ||
| 621 | - <spreadsheet_type>JXL</spreadsheet_type> | ||
| 622 | - <cluster_schema/> | ||
| 623 | - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI> | ||
| 624 | - <xloc>150</xloc> | ||
| 625 | - <yloc>68</yloc> | ||
| 626 | - <draw>Y</draw> | ||
| 627 | - </GUI> | ||
| 628 | - </step> | ||
| 629 | - | ||
| 630 | - <step> | ||
| 631 | <name>错误输出</name> | 664 | <name>错误输出</name> |
| 632 | <type>ExcelOutput</type> | 665 | <type>ExcelOutput</type> |
| 633 | <description/> | 666 | <description/> |
| @@ -754,39 +787,6 @@ | @@ -754,39 +787,6 @@ | ||
| 754 | </GUI> | 787 | </GUI> |
| 755 | </step> | 788 | </step> |
| 756 | 789 | ||
| 757 | - <step> | ||
| 758 | - <name>启用被数据flag</name> | ||
| 759 | - <type>Constant</type> | ||
| 760 | - <description/> | ||
| 761 | - <distribute>Y</distribute> | ||
| 762 | - <custom_distribution/> | ||
| 763 | - <copies>1</copies> | ||
| 764 | - <partitioning> | ||
| 765 | - <method>none</method> | ||
| 766 | - <schema_name/> | ||
| 767 | - </partitioning> | ||
| 768 | - <fields> | ||
| 769 | - <field> | ||
| 770 | - <name>isCancel</name> | ||
| 771 | - <type>Integer</type> | ||
| 772 | - <format/> | ||
| 773 | - <currency/> | ||
| 774 | - <decimal/> | ||
| 775 | - <group/> | ||
| 776 | - <nullif>0</nullif> | ||
| 777 | - <length>-1</length> | ||
| 778 | - <precision>-1</precision> | ||
| 779 | - <set_empty_string>N</set_empty_string> | ||
| 780 | - </field> | ||
| 781 | - </fields> | ||
| 782 | - <cluster_schema/> | ||
| 783 | - <remotesteps> <input> </input> <output> </output> </remotesteps> <GUI> | ||
| 784 | - <xloc>544</xloc> | ||
| 785 | - <yloc>70</yloc> | ||
| 786 | - <draw>Y</draw> | ||
| 787 | - </GUI> | ||
| 788 | - </step> | ||
| 789 | - | ||
| 790 | <step_error_handling> | 790 | <step_error_handling> |
| 791 | <error> | 791 | <error> |
| 792 | <source_step>插入/更新bsth_c_s_gbi</source_step> | 792 | <source_step>插入/更新bsth_c_s_gbi</source_step> |
src/main/resources/static/pages/base/timesmodel/js/raty/lib/jquery.raty.min.js
| 1 | -/*! | ||
| 2 | - * jQuery Raty - A Star Rating Plugin | ||
| 3 | - * | ||
| 4 | - * Licensed under The MIT License | ||
| 5 | - * | ||
| 6 | - * @version 2.5.2 | ||
| 7 | - * @author Washington Botelho | ||
| 8 | - * @documentation wbotelhos.com/raty | ||
| 9 | - * | ||
| 10 | - */ | ||
| 11 | - | ||
| 12 | -;(function(b){var a={init:function(c){return this.each(function(){a.destroy.call(this);this.opt=b.extend(true,{},b.fn.raty.defaults,c);var e=b(this),g=["number","readOnly","score","scoreName"];a._callback.call(this,g);if(this.opt.precision){a._adjustPrecision.call(this);}this.opt.number=a._between(this.opt.number,0,this.opt.numberMax);this.opt.path=this.opt.path||"";if(this.opt.path&&this.opt.path.slice(this.opt.path.length-1,this.opt.path.length)!=="/"){this.opt.path+="/";}this.stars=a._createStars.call(this);this.score=a._createScore.call(this);a._apply.call(this,this.opt.score);var f=this.opt.space?4:0,d=this.opt.width||(this.opt.number*this.opt.size+this.opt.number*f);if(this.opt.cancel){this.cancel=a._createCancel.call(this);d+=(this.opt.size+f);}if(this.opt.readOnly){a._lock.call(this);}else{e.css("cursor","pointer");a._binds.call(this);}if(this.opt.width!==false){e.css("width",d);}a._target.call(this,this.opt.score);e.data({settings:this.opt,raty:true});});},_adjustPrecision:function(){this.opt.targetType="score";this.opt.half=true;},_apply:function(c){if(c&&c>0){c=a._between(c,0,this.opt.number);this.score.val(c);}a._fill.call(this,c);if(c){a._roundStars.call(this,c);}},_between:function(e,d,c){return Math.min(Math.max(parseFloat(e),d),c);},_binds:function(){if(this.cancel){a._bindCancel.call(this);}a._bindClick.call(this);a._bindOut.call(this);a._bindOver.call(this);},_bindCancel:function(){a._bindClickCancel.call(this);a._bindOutCancel.call(this);a._bindOverCancel.call(this);},_bindClick:function(){var c=this,d=b(c);c.stars.on("click.raty",function(e){c.score.val((c.opt.half||c.opt.precision)?d.data("score"):this.alt);if(c.opt.click){c.opt.click.call(c,parseFloat(c.score.val()),e);}});},_bindClickCancel:function(){var c=this;c.cancel.on("click.raty",function(d){c.score.removeAttr("value");if(c.opt.click){c.opt.click.call(c,null,d);}});},_bindOut:function(){var c=this;b(this).on("mouseleave.raty",function(d){var e=parseFloat(c.score.val())||undefined;a._apply.call(c,e);a._target.call(c,e,d);if(c.opt.mouseout){c.opt.mouseout.call(c,e,d);}});},_bindOutCancel:function(){var c=this;c.cancel.on("mouseleave.raty",function(d){b(this).attr("src",c.opt.path+c.opt.cancelOff);if(c.opt.mouseout){c.opt.mouseout.call(c,c.score.val()||null,d);}});},_bindOverCancel:function(){var c=this;c.cancel.on("mouseover.raty",function(d){b(this).attr("src",c.opt.path+c.opt.cancelOn);c.stars.attr("src",c.opt.path+c.opt.starOff);a._target.call(c,null,d);if(c.opt.mouseover){c.opt.mouseover.call(c,null);}});},_bindOver:function(){var c=this,d=b(c),e=c.opt.half?"mousemove.raty":"mouseover.raty";c.stars.on(e,function(g){var h=parseInt(this.alt,10);if(c.opt.half){var f=parseFloat((g.pageX-b(this).offset().left)/c.opt.size),j=(f>0.5)?1:0.5;h=h-1+j;a._fill.call(c,h);if(c.opt.precision){h=h-j+f;}a._roundStars.call(c,h);d.data("score",h);}else{a._fill.call(c,h);}a._target.call(c,h,g);if(c.opt.mouseover){c.opt.mouseover.call(c,h,g);}});},_callback:function(c){for(i in c){if(typeof this.opt[c[i]]==="function"){this.opt[c[i]]=this.opt[c[i]].call(this);}}},_createCancel:function(){var e=b(this),c=this.opt.path+this.opt.cancelOff,d=b("<img />",{src:c,alt:"x",title:this.opt.cancelHint,"class":"raty-cancel"});if(this.opt.cancelPlace=="left"){e.prepend(" ").prepend(d);}else{e.append(" ").append(d);}return d;},_createScore:function(){return b("<input />",{type:"hidden",name:this.opt.scoreName}).appendTo(this);},_createStars:function(){var e=b(this);for(var c=1;c<=this.opt.number;c++){var f=a._getHint.call(this,c),d=(this.opt.score&&this.opt.score>=c)?"starOn":"starOff";d=this.opt.path+this.opt[d];b("<img />",{src:d,alt:c,title:f}).appendTo(this);if(this.opt.space){e.append((c<this.opt.number)?" ":"");}}return e.children("img");},_error:function(c){b(this).html(c);b.error(c);},_fill:function(d){var m=this,e=0;for(var f=1;f<=m.stars.length;f++){var g=m.stars.eq(f-1),l=m.opt.single?(f==d):(f<=d);if(m.opt.iconRange&&m.opt.iconRange.length>e){var j=m.opt.iconRange[e],h=j.on||m.opt.starOn,c=j.off||m.opt.starOff,k=l?h:c;if(f<=j.range){g.attr("src",m.opt.path+k);}if(f==j.range){e++;}}else{var k=l?"starOn":"starOff";g.attr("src",this.opt.path+this.opt[k]);}}},_getHint:function(d){var c=this.opt.hints[d-1];return(c==="")?"":(c||d);},_lock:function(){var d=parseInt(this.score.val(),10),c=d?a._getHint.call(this,d):this.opt.noRatedMsg;b(this).data("readonly",true).css("cursor","").attr("title",c);this.score.attr("readonly","readonly");this.stars.attr("title",c);if(this.cancel){this.cancel.hide();}},_roundStars:function(e){var d=(e-Math.floor(e)).toFixed(2);if(d>this.opt.round.down){var c="starOn";if(this.opt.halfShow&&d<this.opt.round.up){c="starHalf";}else{if(d<this.opt.round.full){c="starOff";}}this.stars.eq(Math.ceil(e)-1).attr("src",this.opt.path+this.opt[c]);}},_target:function(f,d){if(this.opt.target){var e=b(this.opt.target);if(e.length===0){a._error.call(this,"Target selector invalid or missing!");}if(this.opt.targetFormat.indexOf("{score}")<0){a._error.call(this,'Template "{score}" missing!');}var c=d&&d.type=="mouseover";if(f===undefined){f=this.opt.targetText;}else{if(f===null){f=c?this.opt.cancelHint:this.opt.targetText;}else{if(this.opt.targetType=="hint"){f=a._getHint.call(this,Math.ceil(f));}else{if(this.opt.precision){f=parseFloat(f).toFixed(1);}}if(!c&&!this.opt.targetKeep){f=this.opt.targetText;}}}if(f){f=this.opt.targetFormat.toString().replace("{score}",f);}if(e.is(":input")){e.val(f);}else{e.html(f);}}},_unlock:function(){b(this).data("readonly",false).css("cursor","pointer").removeAttr("title");this.score.removeAttr("readonly","readonly");for(var c=0;c<this.opt.number;c++){this.stars.eq(c).attr("title",a._getHint.call(this,c+1));}if(this.cancel){this.cancel.css("display","");}},cancel:function(c){return this.each(function(){if(b(this).data("readonly")!==true){a[c?"click":"score"].call(this,null);this.score.removeAttr("value");}});},click:function(c){return b(this).each(function(){if(b(this).data("readonly")!==true){a._apply.call(this,c);if(!this.opt.click){a._error.call(this,'You must add the "click: function(score, evt) { }" callback.');}this.opt.click.call(this,c,{type:"click"});a._target.call(this,c);}});},destroy:function(){return b(this).each(function(){var d=b(this),c=d.data("raw");if(c){d.off(".raty").empty().css({cursor:c.style.cursor,width:c.style.width}).removeData("readonly");}else{d.data("raw",d.clone()[0]);}});},getScore:function(){var d=[],c;b(this).each(function(){c=this.score.val();d.push(c?parseFloat(c):undefined);});return(d.length>1)?d:d[0];},readOnly:function(c){return this.each(function(){var d=b(this);if(d.data("readonly")!==c){if(c){d.off(".raty").children("img").off(".raty");a._lock.call(this);}else{a._binds.call(this);a._unlock.call(this);}d.data("readonly",c);}});},reload:function(){return a.set.call(this,{});},score:function(){return arguments.length?a.setScore.apply(this,arguments):a.getScore.call(this);},set:function(c){return this.each(function(){var e=b(this),f=e.data("settings"),d=b.extend({},f,c);e.raty(d);});},setScore:function(c){return b(this).each(function(){if(b(this).data("readonly")!==true){a._apply.call(this,c);a._target.call(this,c);}});}};b.fn.raty=function(c){if(a[c]){return a[c].apply(this,Array.prototype.slice.call(arguments,1));}else{if(typeof c==="object"||!c){return a.init.apply(this,arguments);}else{b.error("Method "+c+" does not exist!");}}};b.fn.raty.defaults={cancel:false,cancelHint:"Cancel this rating!",cancelOff:"cancel-off.png",cancelOn:"cancel-on.png",cancelPlace:"left",click:undefined,half:false,halfShow:true,hints:["bad","poor","regular","good","gorgeous"],iconRange:undefined,mouseout:undefined,mouseover:undefined,noRatedMsg:"Not rated yet!",number:5,numberMax:20,path:"",precision:false,readOnly:false,round:{down:0.25,full:0.6,up:0.76},score:undefined,scoreName:"score",single:false,size:16,space:true,starHalf:"star-half.png",starOff:"star-off.png",starOn:"star-on.png",target:undefined,targetFormat:"{score}",targetKeep:false,targetText:"",targetType:"hint",width:undefined};})(jQuery); | 1 | +/*! |
| 2 | + * jQuery Raty - A Star Rating Plugin | ||
| 3 | + * | ||
| 4 | + * Licensed under The MIT License | ||
| 5 | + * | ||
| 6 | + * @version 2.5.2 | ||
| 7 | + * @author Washington Botelho | ||
| 8 | + * @documentation wbotelhos.com/raty | ||
| 9 | + * | ||
| 10 | + */ | ||
| 11 | + | ||
| 12 | +;(function(b){var a={init:function(c){return this.each(function(){a.destroy.call(this);this.opt=b.extend(true,{},b.fn.raty.defaults,c);var e=b(this),g=["number","readOnly","score","scoreName"];a._callback.call(this,g);if(this.opt.precision){a._adjustPrecision.call(this);}this.opt.number=a._between(this.opt.number,0,this.opt.numberMax);this.opt.path=this.opt.path||"";if(this.opt.path&&this.opt.path.slice(this.opt.path.length-1,this.opt.path.length)!=="/"){this.opt.path+="/";}this.stars=a._createStars.call(this);this.score=a._createScore.call(this);a._apply.call(this,this.opt.score);var f=this.opt.space?4:0,d=this.opt.width||(this.opt.number*this.opt.size+this.opt.number*f);if(this.opt.cancel){this.cancel=a._createCancel.call(this);d+=(this.opt.size+f);}if(this.opt.readOnly){a._lock.call(this);}else{e.css("cursor","pointer");a._binds.call(this);}if(this.opt.width!==false){e.css("width",d);}a._target.call(this,this.opt.score);e.data({settings:this.opt,raty:true});});},_adjustPrecision:function(){this.opt.targetType="score";this.opt.half=true;},_apply:function(c){if(c&&c>0){c=a._between(c,0,this.opt.number);this.score.val(c);}a._fill.call(this,c);if(c){a._roundStars.call(this,c);}},_between:function(e,d,c){return Math.min(Math.max(parseFloat(e),d),c);},_binds:function(){if(this.cancel){a._bindCancel.call(this);}a._bindClick.call(this);a._bindOut.call(this);a._bindOver.call(this);},_bindCancel:function(){a._bindClickCancel.call(this);a._bindOutCancel.call(this);a._bindOverCancel.call(this);},_bindClick:function(){var c=this,d=b(c);c.stars.on("click.raty",function(e){c.score.val((c.opt.half||c.opt.precision)?d.data("score"):this.alt);if(c.opt.click){c.opt.click.call(c,parseFloat(c.score.val()),e);}});},_bindClickCancel:function(){var c=this;c.cancel.on("click.raty",function(d){c.score.removeAttr("value");if(c.opt.click){c.opt.click.call(c,null,d);}});},_bindOut:function(){var c=this;b(this).on("mouseleave.raty",function(d){var e=parseFloat(c.score.val())||undefined;a._apply.call(c,e);a._target.call(c,e,d);if(c.opt.mouseout){c.opt.mouseout.call(c,e,d);}});},_bindOutCancel:function(){var c=this;c.cancel.on("mouseleave.raty",function(d){b(this).attr("src",c.opt.path+c.opt.cancelOff);if(c.opt.mouseout){c.opt.mouseout.call(c,c.score.val()||null,d);}});},_bindOverCancel:function(){var c=this;c.cancel.on("mouseover.raty",function(d){b(this).attr("src",c.opt.path+c.opt.cancelOn);c.stars.attr("src",c.opt.path+c.opt.starOff);a._target.call(c,null,d);if(c.opt.mouseover){c.opt.mouseover.call(c,null);}});},_bindOver:function(){var c=this,d=b(c),e=c.opt.half?"mousemove.raty":"mouseover.raty";c.stars.on(e,function(g){var h=parseInt(this.alt,10);if(c.opt.half){var f=parseFloat((g.pageX-b(this).offset().left)/c.opt.size),j=(f>0.5)?1:0.5;h=h-1+j;a._fill.call(c,h);if(c.opt.precision){h=h-j+f;}a._roundStars.call(c,h);d.data("score",h);}else{a._fill.call(c,h);}a._target.call(c,h,g);if(c.opt.mouseover){c.opt.mouseover.call(c,h,g);}});},_callback:function(c){for(i in c){if(typeof this.opt[c[i]]==="function"){this.opt[c[i]]=this.opt[c[i]].call(this);}}},_createCancel:function(){var e=b(this),c=this.opt.path+this.opt.cancelOff,d=b("<img />",{src:c,alt:"x",title:this.opt.cancelHint,"class":"raty-cancel"});if(this.opt.cancelPlace=="left"){e.prepend(" ").prepend(d);}else{e.append(" ").append(d);}return d;},_createScore:function(){return b("<input />",{type:"hidden",name:this.opt.scoreName}).appendTo(this);},_createStars:function(){var e=b(this);for(var c=1;c<=this.opt.number;c++){var f=a._getHint.call(this,c),d=(this.opt.score&&this.opt.score>=c)?"starOn":"starOff";d=this.opt.path+this.opt[d];b("<img />",{src:d,alt:c,title:f}).appendTo(this);if(this.opt.space){e.append((c<this.opt.number)?" ":"");}}return e.children("img");},_error:function(c){b(this).html(c);b.error(c);},_fill:function(d){var m=this,e=0;for(var f=1;f<=m.stars.length;f++){var g=m.stars.eq(f-1),l=m.opt.single?(f==d):(f<=d);if(m.opt.iconRange&&m.opt.iconRange.length>e){var j=m.opt.iconRange[e],h=j.on||m.opt.starOn,c=j.off||m.opt.starOff,k=l?h:c;if(f<=j.range){g.attr("src",m.opt.path+k);}if(f==j.range){e++;}}else{var k=l?"starOn":"starOff";g.attr("src",this.opt.path+this.opt[k]);}}},_getHint:function(d){var c=this.opt.hints[d-1];return(c==="")?"":(c||d);},_lock:function(){var d=parseInt(this.score.val(),10),c=d?a._getHint.call(this,d):this.opt.noRatedMsg;b(this).data("readonly",true).css("cursor","").attr("title",c);this.score.attr("readonly","readonly");this.stars.attr("title",c);if(this.cancel){this.cancel.hide();}},_roundStars:function(e){var d=(e-Math.floor(e)).toFixed(2);if(d>this.opt.round.down){var c="starOn";if(this.opt.halfShow&&d<this.opt.round.up){c="starHalf";}else{if(d<this.opt.round.full){c="starOff";}}this.stars.eq(Math.ceil(e)-1).attr("src",this.opt.path+this.opt[c]);}},_target:function(f,d){if(this.opt.target){var e=b(this.opt.target);if(e.length===0){a._error.call(this,"Target selector invalid or missing!");}if(this.opt.targetFormat.indexOf("{score}")<0){a._error.call(this,'Template "{score}" missing!');}var c=d&&d.type=="mouseover";if(f===undefined){f=this.opt.targetText;}else{if(f===null){f=c?this.opt.cancelHint:this.opt.targetText;}else{if(this.opt.targetType=="hint"){f=a._getHint.call(this,Math.ceil(f));}else{if(this.opt.precision){f=parseFloat(f).toFixed(1);}}if(!c&&!this.opt.targetKeep){f=this.opt.targetText;}}}if(f){f=this.opt.targetFormat.toString().replace("{score}",f);}if(e.is(":input")){e.val(f);}else{e.html(f);}}},_unlock:function(){b(this).data("readonly",false).css("cursor","pointer").removeAttr("title");this.score.removeAttr("readonly","readonly");for(var c=0;c<this.opt.number;c++){this.stars.eq(c).attr("title",a._getHint.call(this,c+1));}if(this.cancel){this.cancel.css("display","");}},cancel:function(c){return this.each(function(){if(b(this).data("readonly")!==true){a[c?"click":"score"].call(this,null);this.score.removeAttr("value");}});},click:function(c){return b(this).each(function(){if(b(this).data("readonly")!==true){a._apply.call(this,c);if(!this.opt.click){a._error.call(this,'You must add the "click: function(score, evt) { }" callback.');}this.opt.click.call(this,c,{type:"click"});a._target.call(this,c);}});},destroy:function(){return b(this).each(function(){var d=b(this),c=d.data("raw");if(c){d.off(".raty").empty().css({cursor:c.style.cursor,width:c.style.width}).removeData("readonly");}else{d.data("raw",d.clone()[0]);}});},getScore:function(){var d=[],c;b(this).each(function(){c=this.score.val();d.push(c?parseFloat(c):undefined);});return(d.length>1)?d:d[0];},readOnly:function(c){return this.each(function(){var d=b(this);if(d.data("readonly")!==c){if(c){d.off(".raty").children("img").off(".raty");a._lock.call(this);}else{a._binds.call(this);a._unlock.call(this);}d.data("readonly",c);}});},reload:function(){return a.set.call(this,{});},score:function(){return arguments.length?a.setScore.apply(this,arguments):a.getScore.call(this);},set:function(c){return this.each(function(){var e=b(this),f=e.data("settings"),d=b.extend({},f,c);e.raty(d);});},setScore:function(c){return b(this).each(function(){if(b(this).data("readonly")!==true){a._apply.call(this,c);a._target.call(this,c);}});}};b.fn.raty=function(c){if(a[c]){return a[c].apply(this,Array.prototype.slice.call(arguments,1));}else{if(typeof c==="object"||!c){return a.init.apply(this,arguments);}else{b.error("Method "+c+" does not exist!");}}};b.fn.raty.defaults={cancel:false,cancelHint:"Cancel this rating!",cancelOff:"cancel-off.png",cancelOn:"cancel-on.png",cancelPlace:"left",click:undefined,half:false,halfShow:true,hints:["bad","poor","regular","good","gorgeous"],iconRange:undefined,mouseout:undefined,mouseover:undefined,noRatedMsg:"Not rated yet!",number:5,numberMax:20,path:"",precision:false,readOnly:false,round:{down:0.25,full:0.6,up:0.76},score:undefined,scoreName:"score",single:false,size:16,space:true,starHalf:"star-half.png",starOff:"star-off.png",starOn:"star-on.png",target:undefined,targetFormat:"{score}",targetKeep:false,targetText:"",targetType:"hint",width:undefined};})(jQuery); |
src/main/resources/static/pages/forms/statement/scheduleDaily.html
| @@ -401,7 +401,6 @@ | @@ -401,7 +401,6 @@ | ||
| 401 | $('#forms .scheduleDaily_1').html(scheduleDaily_1); | 401 | $('#forms .scheduleDaily_1').html(scheduleDaily_1); |
| 402 | }); | 402 | }); |
| 403 | $.get('/realSchedule/queryUserInfo',{line:line,date:date,state:2,type:"query"},function(result){ | 403 | $.get('/realSchedule/queryUserInfo',{line:line,date:date,state:2,type:"query"},function(result){ |
| 404 | - console.log(result); | ||
| 405 | var scheduleDaily_2 = template('scheduleDaily_2',{list:result}); | 404 | var scheduleDaily_2 = template('scheduleDaily_2',{list:result}); |
| 406 | $('#forms .scheduleDaily_2').html(scheduleDaily_2); | 405 | $('#forms .scheduleDaily_2').html(scheduleDaily_2); |
| 407 | }); | 406 | }); |
| @@ -541,9 +540,18 @@ | @@ -541,9 +540,18 @@ | ||
| 541 | <td>{{obj.fast}}</td> | 540 | <td>{{obj.fast}}</td> |
| 542 | <td>{{obj.slow}}</td> | 541 | <td>{{obj.slow}}</td> |
| 543 | <td>{{obj.fcsj}}</td> | 542 | <td>{{obj.fcsj}}</td> |
| 544 | - <td>{{obj.fcsjActual}}</td> | 543 | + <td>{{obj.fcsjActual}} |
| 544 | + {{if obj.bcType== "in"}} | ||
| 545 | + (进) | ||
| 546 | + {{/if}} | ||
| 547 | + {{if obj.bcType== "out"}} | ||
| 548 | + (出) | ||
| 549 | + {{/if}} | ||
| 550 | + </td> | ||
| 545 | <td>{{obj.fast0}}</td> | 551 | <td>{{obj.fast0}}</td> |
| 546 | - <td>{{obj.slow0}}</td> | 552 | + <td>{{obj.slow0}} |
| 553 | + | ||
| 554 | + </td> | ||
| 547 | <td colspan="2">{{obj.remarks}}</td> | 555 | <td colspan="2">{{obj.remarks}}</td> |
| 548 | {{if (i+1)%3 == 0}} | 556 | {{if (i+1)%3 == 0}} |
| 549 | <td> </td> | 557 | <td> </td> |
src/main/resources/static/pages/forms/statement/statisticsDaily.html
| @@ -247,8 +247,15 @@ | @@ -247,8 +247,15 @@ | ||
| 247 | if(date==null || date =="" ||date2==null || date2 ==""){ | 247 | if(date==null || date =="" ||date2==null || date2 ==""){ |
| 248 | layer.msg('请选择时间段.'); | 248 | layer.msg('请选择时间段.'); |
| 249 | }else{ | 249 | }else{ |
| 250 | - | ||
| 251 | - $get('/realSchedule/statisticsDailyTj',{gsdm:gsdm,fgsdm:fgsdm,line:line,date:date,date2:date2,xlName:xlName,type:"query"},function(result){ | 250 | + var params = {}; |
| 251 | + params['gsdm'] = gsdm; | ||
| 252 | + params['fgsdm'] =fgsdm ; | ||
| 253 | + params['line'] = line; | ||
| 254 | + params['date'] = date; | ||
| 255 | + params['date2'] = date2; | ||
| 256 | + params['xlName'] = xlName; | ||
| 257 | + params['type'] = "query"; | ||
| 258 | + $get('/realSchedule/statisticsDailyTj',params,function(result){ | ||
| 252 | // 把数据填充到模版中 | 259 | // 把数据填充到模版中 |
| 253 | var tbodyHtml = template('statisticsDaily',{list:result}); | 260 | var tbodyHtml = template('statisticsDaily',{list:result}); |
| 254 | // 把渲染好的模版html文本追加到表格中 | 261 | // 把渲染好的模版html文本追加到表格中 |
| @@ -264,7 +271,15 @@ | @@ -264,7 +271,15 @@ | ||
| 264 | }); | 271 | }); |
| 265 | 272 | ||
| 266 | $("#export").on("click",function(){ | 273 | $("#export").on("click",function(){ |
| 267 | - $get('/realSchedule/statisticsDailyTj',{gsdm:gsdm,fgsdm:fgsdm,line:line,date:date,date2:date2,xlName:xlName,type:"export"},function(result){ | 274 | + var params = {}; |
| 275 | + params['gsdm'] = gsdm; | ||
| 276 | + params['fgsdm'] =fgsdm ; | ||
| 277 | + params['line'] = line; | ||
| 278 | + params['date'] = date; | ||
| 279 | + params['date2'] = date2; | ||
| 280 | + params['xlName'] = xlName; | ||
| 281 | + params['type'] = "export"; | ||
| 282 | + $get('/realSchedule/statisticsDailyTj',params,function(result){ | ||
| 268 | window.open("/downloadFile/download?fileName=统计日报"+moment(date).format("YYYYMMDD")); | 283 | window.open("/downloadFile/download?fileName=统计日报"+moment(date).format("YYYYMMDD")); |
| 269 | }); | 284 | }); |
| 270 | }); | 285 | }); |
src/main/resources/static/pages/forms/statement/waybill.html
| @@ -307,7 +307,7 @@ | @@ -307,7 +307,7 @@ | ||
| 307 | param[index][i] = $(this).text().split("\\")[0]; | 307 | param[index][i] = $(this).text().split("\\")[0]; |
| 308 | }); | 308 | }); |
| 309 | }); | 309 | }); |
| 310 | - $post('/realSchedule/exportWaybillMore',{date:date,line:line,strs:JSON.stringify(param)},function(result){ | 310 | + $get('/realSchedule/exportWaybillMore',{date:date,line:line,strs:JSON.stringify(param)},function(result){ |
| 311 | window.open("/downloadFile/downloadList?fileName="+result.fileName); | 311 | window.open("/downloadFile/downloadList?fileName="+result.fileName); |
| 312 | }); | 312 | }); |
| 313 | }); | 313 | }); |
| @@ -435,7 +435,7 @@ | @@ -435,7 +435,7 @@ | ||
| 435 | <td>{{obj.fast}}</td> | 435 | <td>{{obj.fast}}</td> |
| 436 | <td>{{obj.slow}}</td> | 436 | <td>{{obj.slow}}</td> |
| 437 | <td> | 437 | <td> |
| 438 | - {{if obj.fcsjActual !=null || obj.zdsjActual!=null}} | 438 | + {{if obj.zdsjActual!=null}} |
| 439 | {{obj.jhlc}} | 439 | {{obj.jhlc}} |
| 440 | {{/if}} | 440 | {{/if}} |
| 441 | </td> | 441 | </td> |
src/main/resources/static/real_control_v2/assets/plugins/uikit-2.27.1/components/lightbox.min.js
| 1 | -/*! UIkit 2.27.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ | 1 | +/*! UIkit 2.27.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ |
| 2 | !function(i){var t;window.UIkit&&(t=i(UIkit)),"function"==typeof define&&define.amd&&define("uikit-lightbox",["uikit"],function(){return t||i(UIkit)})}(function(i){"use strict";function t(t){if(e)return e.lightbox=t,e;e=i.$(['<div class="uk-modal">','<div class="uk-modal-dialog uk-modal-dialog-lightbox uk-slidenav-position" style="margin-left:auto;margin-right:auto;width:200px;height:200px;top:'+Math.abs(window.innerHeight/2-200)+'px;">','<a href="#" class="uk-modal-close uk-close uk-close-alt"></a>','<div class="uk-lightbox-content"></div>','<div class="uk-modal-spinner uk-hidden"></div>',"</div>","</div>"].join("")).appendTo("body"),e.dialog=e.find(".uk-modal-dialog:first"),e.content=e.find(".uk-lightbox-content:first"),e.loader=e.find(".uk-modal-spinner:first"),e.closer=e.find(".uk-close.uk-close-alt"),e.modal=i.modal(e,{modal:!1}),e.on("swipeRight swipeLeft",function(i){e.lightbox["swipeLeft"==i.type?"next":"previous"]()}).on("click","[data-lightbox-previous], [data-lightbox-next]",function(t){t.preventDefault(),e.lightbox[i.$(this).is("[data-lightbox-next]")?"next":"previous"]()}),e.on("hide.uk.modal",function(){e.content.html("")});var o={w:window.innerWidth,h:window.innerHeight};return i.$win.on("load resize orientationchange",i.Utils.debounce(function(){o.w!==window.innerWidth&&e.is(":visible")&&!i.Utils.isFullscreen()&&e.lightbox.fitSize(),o={w:window.innerWidth,h:window.innerHeight}},100)),e.lightbox=t,e}var e,o={};return i.component("lightbox",{defaults:{allowfullscreen:!0,duration:400,group:!1,keyboard:!0},index:0,items:!1,boot:function(){i.$html.on("click","[data-uk-lightbox]",function(t){t.preventDefault();var e=i.$(this);e.data("lightbox")||i.lightbox(e,i.Utils.options(e.attr("data-uk-lightbox"))),e.data("lightbox").show(e)}),i.$doc.on("keyup",function(i){if(e&&e.is(":visible")&&e.lightbox.options.keyboard)switch(i.preventDefault(),i.keyCode){case 37:e.lightbox.previous();break;case 39:e.lightbox.next()}})},init:function(){var t=[];if(this.index=0,this.siblings=[],this.element&&this.element.length){var e=this.options.group?i.$(['[data-uk-lightbox*="'+this.options.group+'"]',"[data-uk-lightbox*='"+this.options.group+"']"].join(",")):this.element;e.each(function(){var e=i.$(this);t.push({source:e.attr("href"),title:e.attr("data-title")||e.attr("title"),type:e.attr("data-lightbox-type")||"auto",link:e})}),this.index=e.index(this.element),this.siblings=t}else this.options.group&&this.options.group.length&&(this.siblings=this.options.group);this.trigger("lightbox-init",[this])},show:function(e){this.modal=t(this),this.modal.dialog.stop(),this.modal.content.stop();var o,n,s=this,h=i.$.Deferred();e=e||0,"object"==typeof e&&this.siblings.forEach(function(i,t){e[0]===i.link[0]&&(e=t)}),0>e?e=this.siblings.length-e:this.siblings[e]||(e=0),n=this.siblings[e],o={lightbox:s,source:n.source,type:n.type,index:e,promise:h,title:n.title,item:n,meta:{content:"",width:null,height:null}},this.index=e,this.modal.content.empty(),this.modal.is(":visible")||(this.modal.content.css({width:"",height:""}).empty(),this.modal.modal.show()),this.modal.loader.removeClass("uk-hidden"),h.promise().done(function(){s.data=o,s.fitSize(o)}).fail(function(){o.meta.content='<div class="uk-position-cover uk-flex uk-flex-middle uk-flex-center"><strong>Loading resource failed!</strong></div>',o.meta.width=400,o.meta.height=300,s.data=o,s.fitSize(o)}),s.trigger("showitem.uk.lightbox",[o])},fitSize:function(){var t=this,e=this.data,o=this.modal.dialog.outerWidth()-this.modal.dialog.width(),n=parseInt(this.modal.dialog.css("margin-top"),10),s=parseInt(this.modal.dialog.css("margin-bottom"),10),h=n+s,a=e.meta.content,l=t.options.duration;this.siblings.length>1&&(a=[a,'<a href="#" class="uk-slidenav uk-slidenav-contrast uk-slidenav-previous uk-hidden-touch" data-lightbox-previous></a>','<a href="#" class="uk-slidenav uk-slidenav-contrast uk-slidenav-next uk-hidden-touch" data-lightbox-next></a>'].join(""));var d,r,u=i.$("<div> </div>").css({opacity:0,position:"absolute",top:0,left:0,width:"100%","max-width":t.modal.dialog.css("max-width"),padding:t.modal.dialog.css("padding"),margin:t.modal.dialog.css("margin")}),c=e.meta.width,g=e.meta.height;u.appendTo("body").width(),d=u.width(),r=window.innerHeight-h,u.remove(),this.modal.dialog.find(".uk-modal-caption").remove(),e.title&&(this.modal.dialog.append('<div class="uk-modal-caption">'+e.title+"</div>"),r-=this.modal.dialog.find(".uk-modal-caption").outerHeight()),d<e.meta.width&&(g=Math.floor(g*(d/c)),c=d),g>r&&(g=Math.floor(r),c=Math.ceil(e.meta.width*(r/e.meta.height))),this.modal.content.css("opacity",0).width(c).html(a),"iframe"==e.type&&this.modal.content.find("iframe:first").height(g);var m=g+o,p=Math.floor(window.innerHeight/2-m/2)-h;0>p&&(p=0),this.modal.closer.addClass("uk-hidden"),t.modal.data("mwidth")==c&&t.modal.data("mheight")==g&&(l=0),this.modal.dialog.animate({width:c+o,height:g+o,top:p},l,"swing",function(){t.modal.loader.addClass("uk-hidden"),t.modal.content.css({width:""}).animate({opacity:1},function(){t.modal.closer.removeClass("uk-hidden")}),t.modal.data({mwidth:c,mheight:g})})},next:function(){this.show(this.siblings[this.index+1]?this.index+1:0)},previous:function(){this.show(this.siblings[this.index-1]?this.index-1:this.siblings.length-1)}}),i.plugin("lightbox","image",{init:function(i){i.on("showitem.uk.lightbox",function(i,t){if("image"==t.type||t.source&&t.source.match(/\.(jpg|jpeg|png|gif|svg)$/i)){var e=function(i,e,o){t.meta={content:'<img class="uk-responsive-width" width="'+e+'" height="'+o+'" src ="'+i+'">',width:e,height:o},t.type="image",t.promise.resolve()};if(o[t.source])e(t.source,o[t.source].width,o[t.source].height);else{var n=new Image;n.onerror=function(){t.promise.reject("Loading image failed")},n.onload=function(){o[t.source]={width:n.width,height:n.height},e(t.source,o[t.source].width,o[t.source].height)},n.src=t.source}}})}}),i.plugin("lightbox","youtube",{init:function(i){var t=/(\/\/.*?youtube\.[a-z]+)\/watch\?v=([^&]+)&?(.*)/,n=/youtu\.be\/(.*)/;i.on("showitem.uk.lightbox",function(i,s){var h,a,l=function(i,t,o){s.meta={content:'<iframe src="//www.youtube.com/embed/'+i+'" width="'+t+'" height="'+o+'" style="max-width:100%;"'+(e.lightbox.options.allowfullscreen?" allowfullscreen":"")+"></iframe>",width:t,height:o},s.type="iframe",s.promise.resolve()};if((a=s.source.match(t))&&(h=a[2]),(a=s.source.match(n))&&(h=a[1]),h){if(o[h])l(h,o[h].width,o[h].height);else{var d=new Image,r=!1;d.onerror=function(){o[h]={width:640,height:320},l(h,o[h].width,o[h].height)},d.onload=function(){120==d.width&&90==d.height?r?(o[h]={width:640,height:320},l(h,o[h].width,o[h].height)):(r=!0,d.src="//img.youtube.com/vi/"+h+"/0.jpg"):(o[h]={width:d.width,height:d.height},l(h,d.width,d.height))},d.src="//img.youtube.com/vi/"+h+"/maxresdefault.jpg"}i.stopImmediatePropagation()}})}}),i.plugin("lightbox","vimeo",{init:function(t){var n,s=/(\/\/.*?)vimeo\.[a-z]+\/([0-9]+).*?/;t.on("showitem.uk.lightbox",function(t,h){var a,l=function(i,t,o){h.meta={content:'<iframe src="//player.vimeo.com/video/'+i+'" width="'+t+'" height="'+o+'" style="width:100%;box-sizing:border-box;"'+(e.lightbox.options.allowfullscreen?" allowfullscreen":"")+"></iframe>",width:t,height:o},h.type="iframe",h.promise.resolve()};(n=h.source.match(s))&&(a=n[2],o[a]?l(a,o[a].width,o[a].height):i.$.ajax({type:"GET",url:"//vimeo.com/api/oembed.json?url="+encodeURI(h.source),jsonp:"callback",dataType:"jsonp",success:function(i){o[a]={width:i.width,height:i.height},l(a,o[a].width,o[a].height)}}),t.stopImmediatePropagation())})}}),i.plugin("lightbox","video",{init:function(t){t.on("showitem.uk.lightbox",function(t,e){var n=function(i,t,o){e.meta={content:'<video class="uk-responsive-width" src="'+i+'" width="'+t+'" height="'+o+'" controls></video>',width:t,height:o},e.type="video",e.promise.resolve()};if("video"==e.type||e.source.match(/\.(mp4|webm|ogv)$/i))if(o[e.source])n(e.source,o[e.source].width,o[e.source].height);else var s=i.$('<video style="position:fixed;visibility:hidden;top:-10000px;"></video>').attr("src",e.source).appendTo("body"),h=setInterval(function(){s[0].videoWidth&&(clearInterval(h),o[e.source]={width:s[0].videoWidth,height:s[0].videoHeight},n(e.source,o[e.source].width,o[e.source].height),s.remove())},20)})}}),UIkit.plugin("lightbox","iframe",{init:function(i){i.on("showitem.uk.lightbox",function(t,o){var n=function(i,t,n){o.meta={content:'<iframe class="uk-responsive-width" src="'+i+'" width="'+t+'" height="'+n+'"'+(e.lightbox.options.allowfullscreen?" allowfullscreen":"")+"></iframe>",width:t,height:n},o.type="iframe",o.promise.resolve()};("iframe"===o.type||o.source.match(/\.(html|php)$/))&&n(o.source,i.options.width||800,i.options.height||600)})}}),i.lightbox.create=function(t,e){if(t){var o,n=[];return t.forEach(function(t){n.push(i.$.extend({source:"",title:"",type:"auto",link:!1},"string"==typeof t?{source:t}:t))}),o=i.lightbox(i.$.extend({},e,{group:n}))}},i.lightbox}); | 2 | !function(i){var t;window.UIkit&&(t=i(UIkit)),"function"==typeof define&&define.amd&&define("uikit-lightbox",["uikit"],function(){return t||i(UIkit)})}(function(i){"use strict";function t(t){if(e)return e.lightbox=t,e;e=i.$(['<div class="uk-modal">','<div class="uk-modal-dialog uk-modal-dialog-lightbox uk-slidenav-position" style="margin-left:auto;margin-right:auto;width:200px;height:200px;top:'+Math.abs(window.innerHeight/2-200)+'px;">','<a href="#" class="uk-modal-close uk-close uk-close-alt"></a>','<div class="uk-lightbox-content"></div>','<div class="uk-modal-spinner uk-hidden"></div>',"</div>","</div>"].join("")).appendTo("body"),e.dialog=e.find(".uk-modal-dialog:first"),e.content=e.find(".uk-lightbox-content:first"),e.loader=e.find(".uk-modal-spinner:first"),e.closer=e.find(".uk-close.uk-close-alt"),e.modal=i.modal(e,{modal:!1}),e.on("swipeRight swipeLeft",function(i){e.lightbox["swipeLeft"==i.type?"next":"previous"]()}).on("click","[data-lightbox-previous], [data-lightbox-next]",function(t){t.preventDefault(),e.lightbox[i.$(this).is("[data-lightbox-next]")?"next":"previous"]()}),e.on("hide.uk.modal",function(){e.content.html("")});var o={w:window.innerWidth,h:window.innerHeight};return i.$win.on("load resize orientationchange",i.Utils.debounce(function(){o.w!==window.innerWidth&&e.is(":visible")&&!i.Utils.isFullscreen()&&e.lightbox.fitSize(),o={w:window.innerWidth,h:window.innerHeight}},100)),e.lightbox=t,e}var e,o={};return i.component("lightbox",{defaults:{allowfullscreen:!0,duration:400,group:!1,keyboard:!0},index:0,items:!1,boot:function(){i.$html.on("click","[data-uk-lightbox]",function(t){t.preventDefault();var e=i.$(this);e.data("lightbox")||i.lightbox(e,i.Utils.options(e.attr("data-uk-lightbox"))),e.data("lightbox").show(e)}),i.$doc.on("keyup",function(i){if(e&&e.is(":visible")&&e.lightbox.options.keyboard)switch(i.preventDefault(),i.keyCode){case 37:e.lightbox.previous();break;case 39:e.lightbox.next()}})},init:function(){var t=[];if(this.index=0,this.siblings=[],this.element&&this.element.length){var e=this.options.group?i.$(['[data-uk-lightbox*="'+this.options.group+'"]',"[data-uk-lightbox*='"+this.options.group+"']"].join(",")):this.element;e.each(function(){var e=i.$(this);t.push({source:e.attr("href"),title:e.attr("data-title")||e.attr("title"),type:e.attr("data-lightbox-type")||"auto",link:e})}),this.index=e.index(this.element),this.siblings=t}else this.options.group&&this.options.group.length&&(this.siblings=this.options.group);this.trigger("lightbox-init",[this])},show:function(e){this.modal=t(this),this.modal.dialog.stop(),this.modal.content.stop();var o,n,s=this,h=i.$.Deferred();e=e||0,"object"==typeof e&&this.siblings.forEach(function(i,t){e[0]===i.link[0]&&(e=t)}),0>e?e=this.siblings.length-e:this.siblings[e]||(e=0),n=this.siblings[e],o={lightbox:s,source:n.source,type:n.type,index:e,promise:h,title:n.title,item:n,meta:{content:"",width:null,height:null}},this.index=e,this.modal.content.empty(),this.modal.is(":visible")||(this.modal.content.css({width:"",height:""}).empty(),this.modal.modal.show()),this.modal.loader.removeClass("uk-hidden"),h.promise().done(function(){s.data=o,s.fitSize(o)}).fail(function(){o.meta.content='<div class="uk-position-cover uk-flex uk-flex-middle uk-flex-center"><strong>Loading resource failed!</strong></div>',o.meta.width=400,o.meta.height=300,s.data=o,s.fitSize(o)}),s.trigger("showitem.uk.lightbox",[o])},fitSize:function(){var t=this,e=this.data,o=this.modal.dialog.outerWidth()-this.modal.dialog.width(),n=parseInt(this.modal.dialog.css("margin-top"),10),s=parseInt(this.modal.dialog.css("margin-bottom"),10),h=n+s,a=e.meta.content,l=t.options.duration;this.siblings.length>1&&(a=[a,'<a href="#" class="uk-slidenav uk-slidenav-contrast uk-slidenav-previous uk-hidden-touch" data-lightbox-previous></a>','<a href="#" class="uk-slidenav uk-slidenav-contrast uk-slidenav-next uk-hidden-touch" data-lightbox-next></a>'].join(""));var d,r,u=i.$("<div> </div>").css({opacity:0,position:"absolute",top:0,left:0,width:"100%","max-width":t.modal.dialog.css("max-width"),padding:t.modal.dialog.css("padding"),margin:t.modal.dialog.css("margin")}),c=e.meta.width,g=e.meta.height;u.appendTo("body").width(),d=u.width(),r=window.innerHeight-h,u.remove(),this.modal.dialog.find(".uk-modal-caption").remove(),e.title&&(this.modal.dialog.append('<div class="uk-modal-caption">'+e.title+"</div>"),r-=this.modal.dialog.find(".uk-modal-caption").outerHeight()),d<e.meta.width&&(g=Math.floor(g*(d/c)),c=d),g>r&&(g=Math.floor(r),c=Math.ceil(e.meta.width*(r/e.meta.height))),this.modal.content.css("opacity",0).width(c).html(a),"iframe"==e.type&&this.modal.content.find("iframe:first").height(g);var m=g+o,p=Math.floor(window.innerHeight/2-m/2)-h;0>p&&(p=0),this.modal.closer.addClass("uk-hidden"),t.modal.data("mwidth")==c&&t.modal.data("mheight")==g&&(l=0),this.modal.dialog.animate({width:c+o,height:g+o,top:p},l,"swing",function(){t.modal.loader.addClass("uk-hidden"),t.modal.content.css({width:""}).animate({opacity:1},function(){t.modal.closer.removeClass("uk-hidden")}),t.modal.data({mwidth:c,mheight:g})})},next:function(){this.show(this.siblings[this.index+1]?this.index+1:0)},previous:function(){this.show(this.siblings[this.index-1]?this.index-1:this.siblings.length-1)}}),i.plugin("lightbox","image",{init:function(i){i.on("showitem.uk.lightbox",function(i,t){if("image"==t.type||t.source&&t.source.match(/\.(jpg|jpeg|png|gif|svg)$/i)){var e=function(i,e,o){t.meta={content:'<img class="uk-responsive-width" width="'+e+'" height="'+o+'" src ="'+i+'">',width:e,height:o},t.type="image",t.promise.resolve()};if(o[t.source])e(t.source,o[t.source].width,o[t.source].height);else{var n=new Image;n.onerror=function(){t.promise.reject("Loading image failed")},n.onload=function(){o[t.source]={width:n.width,height:n.height},e(t.source,o[t.source].width,o[t.source].height)},n.src=t.source}}})}}),i.plugin("lightbox","youtube",{init:function(i){var t=/(\/\/.*?youtube\.[a-z]+)\/watch\?v=([^&]+)&?(.*)/,n=/youtu\.be\/(.*)/;i.on("showitem.uk.lightbox",function(i,s){var h,a,l=function(i,t,o){s.meta={content:'<iframe src="//www.youtube.com/embed/'+i+'" width="'+t+'" height="'+o+'" style="max-width:100%;"'+(e.lightbox.options.allowfullscreen?" allowfullscreen":"")+"></iframe>",width:t,height:o},s.type="iframe",s.promise.resolve()};if((a=s.source.match(t))&&(h=a[2]),(a=s.source.match(n))&&(h=a[1]),h){if(o[h])l(h,o[h].width,o[h].height);else{var d=new Image,r=!1;d.onerror=function(){o[h]={width:640,height:320},l(h,o[h].width,o[h].height)},d.onload=function(){120==d.width&&90==d.height?r?(o[h]={width:640,height:320},l(h,o[h].width,o[h].height)):(r=!0,d.src="//img.youtube.com/vi/"+h+"/0.jpg"):(o[h]={width:d.width,height:d.height},l(h,d.width,d.height))},d.src="//img.youtube.com/vi/"+h+"/maxresdefault.jpg"}i.stopImmediatePropagation()}})}}),i.plugin("lightbox","vimeo",{init:function(t){var n,s=/(\/\/.*?)vimeo\.[a-z]+\/([0-9]+).*?/;t.on("showitem.uk.lightbox",function(t,h){var a,l=function(i,t,o){h.meta={content:'<iframe src="//player.vimeo.com/video/'+i+'" width="'+t+'" height="'+o+'" style="width:100%;box-sizing:border-box;"'+(e.lightbox.options.allowfullscreen?" allowfullscreen":"")+"></iframe>",width:t,height:o},h.type="iframe",h.promise.resolve()};(n=h.source.match(s))&&(a=n[2],o[a]?l(a,o[a].width,o[a].height):i.$.ajax({type:"GET",url:"//vimeo.com/api/oembed.json?url="+encodeURI(h.source),jsonp:"callback",dataType:"jsonp",success:function(i){o[a]={width:i.width,height:i.height},l(a,o[a].width,o[a].height)}}),t.stopImmediatePropagation())})}}),i.plugin("lightbox","video",{init:function(t){t.on("showitem.uk.lightbox",function(t,e){var n=function(i,t,o){e.meta={content:'<video class="uk-responsive-width" src="'+i+'" width="'+t+'" height="'+o+'" controls></video>',width:t,height:o},e.type="video",e.promise.resolve()};if("video"==e.type||e.source.match(/\.(mp4|webm|ogv)$/i))if(o[e.source])n(e.source,o[e.source].width,o[e.source].height);else var s=i.$('<video style="position:fixed;visibility:hidden;top:-10000px;"></video>').attr("src",e.source).appendTo("body"),h=setInterval(function(){s[0].videoWidth&&(clearInterval(h),o[e.source]={width:s[0].videoWidth,height:s[0].videoHeight},n(e.source,o[e.source].width,o[e.source].height),s.remove())},20)})}}),UIkit.plugin("lightbox","iframe",{init:function(i){i.on("showitem.uk.lightbox",function(t,o){var n=function(i,t,n){o.meta={content:'<iframe class="uk-responsive-width" src="'+i+'" width="'+t+'" height="'+n+'"'+(e.lightbox.options.allowfullscreen?" allowfullscreen":"")+"></iframe>",width:t,height:n},o.type="iframe",o.promise.resolve()};("iframe"===o.type||o.source.match(/\.(html|php)$/))&&n(o.source,i.options.width||800,i.options.height||600)})}}),i.lightbox.create=function(t,e){if(t){var o,n=[];return t.forEach(function(t){n.push(i.$.extend({source:"",title:"",type:"auto",link:!1},"string"==typeof t?{source:t}:t))}),o=i.lightbox(i.$.extend({},e,{group:n}))}},i.lightbox}); |
| 3 | \ No newline at end of file | 3 | \ No newline at end of file |
src/main/resources/static/real_control_v2/assets/plugins/uikit-2.27.1/components/slidenav.gradient.min.css
| 1 | -/*! UIkit 2.27.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ | 1 | +/*! UIkit 2.27.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ |
| 2 | .uk-slidenav{display:inline-block;box-sizing:border-box;width:60px;height:60px;line-height:60px;color:rgba(50,50,50,.4);font-size:60px;text-align:center}.uk-slidenav:focus,.uk-slidenav:hover{outline:0;text-decoration:none;color:rgba(50,50,50,.7);cursor:pointer}.uk-slidenav:active{color:rgba(50,50,50,.9)}.uk-slidenav-previous:before{content:"\f104";font-family:FontAwesome}.uk-slidenav-next:before{content:"\f105";font-family:FontAwesome}.uk-slidenav-position{position:relative}.uk-slidenav-position .uk-slidenav{display:none;position:absolute;top:50%;z-index:1;margin-top:-30px}.uk-slidenav-position:hover .uk-slidenav{display:block}.uk-slidenav-position .uk-slidenav-previous{left:20px}.uk-slidenav-position .uk-slidenav-next{right:20px}.uk-slidenav-contrast{color:rgba(255,255,255,.5)}.uk-slidenav-contrast:focus,.uk-slidenav-contrast:hover{color:rgba(255,255,255,.7)}.uk-slidenav-contrast:active{color:rgba(255,255,255,.9)} | 2 | .uk-slidenav{display:inline-block;box-sizing:border-box;width:60px;height:60px;line-height:60px;color:rgba(50,50,50,.4);font-size:60px;text-align:center}.uk-slidenav:focus,.uk-slidenav:hover{outline:0;text-decoration:none;color:rgba(50,50,50,.7);cursor:pointer}.uk-slidenav:active{color:rgba(50,50,50,.9)}.uk-slidenav-previous:before{content:"\f104";font-family:FontAwesome}.uk-slidenav-next:before{content:"\f105";font-family:FontAwesome}.uk-slidenav-position{position:relative}.uk-slidenav-position .uk-slidenav{display:none;position:absolute;top:50%;z-index:1;margin-top:-30px}.uk-slidenav-position:hover .uk-slidenav{display:block}.uk-slidenav-position .uk-slidenav-previous{left:20px}.uk-slidenav-position .uk-slidenav-next{right:20px}.uk-slidenav-contrast{color:rgba(255,255,255,.5)}.uk-slidenav-contrast:focus,.uk-slidenav-contrast:hover{color:rgba(255,255,255,.7)}.uk-slidenav-contrast:active{color:rgba(255,255,255,.9)} |
| 3 | \ No newline at end of file | 3 | \ No newline at end of file |
src/main/resources/static/real_control_v2/fragments/north/nav/safeDriving.html
| 1 | -<div class="uk-modal ct_move_modal" id="safe_dring_list-modal" style="z-index: 99;"> | ||
| 2 | - <div class="uk-modal-dialog" style="width: 1100px;"> | ||
| 3 | - <a href="" class="uk-modal-close uk-close"></a> | ||
| 4 | - <div class="uk-modal-header"> | ||
| 5 | - <h2>安全驾驶图像信息(当日)</h2></div> | ||
| 6 | - | ||
| 7 | - <div class="uk-panel uk-panel-box uk-panel-box-primary"> | ||
| 8 | - <form class="uk-form search-form"> | ||
| 9 | - <fieldset data-uk-margin> | ||
| 10 | - <legend> | ||
| 11 | - 数据检索 | ||
| 12 | - </legend> | ||
| 13 | - <span class="horizontal-field">车辆</span> | ||
| 14 | - <div class="uk-autocomplete uk-form autocomplete-cars" > | ||
| 15 | - <input type="text" name="clzbh" placeholder="车辆自编号"> | ||
| 16 | - </div> | ||
| 17 | - <span class="horizontal-field">异常类型</span> | ||
| 18 | - <select name="yczltype"> | ||
| 19 | - <option value="">全部</option> | ||
| 20 | - <option value="A1">手部离开方向盘</option> | ||
| 21 | - <option value="A2">摄像头异常</option> | ||
| 22 | - <option value="A3">未戴安全带</option> | ||
| 23 | - <option value="A4">未戴袖章</option> | ||
| 24 | - <option value="A5">眨眼/疲劳驾驶</option> | ||
| 25 | - <option value="A6">打哈欠/打瞌睡</option> | ||
| 26 | - <option value="A7">行驶中与人交谈</option> | ||
| 27 | - </select> | ||
| 28 | - <button class="uk-button">检索</button> | ||
| 29 | - </fieldset> | ||
| 30 | - </form> | ||
| 31 | - </div> | ||
| 32 | - <div style="height: 495px;margin:5px 0 -18px;"> | ||
| 33 | - <table class="ct-fixed-table uk-table uk-table-hover"> | ||
| 34 | - <thead> | ||
| 35 | - <tr> | ||
| 36 | - <th style="width: 12%;">线路</th> | ||
| 37 | - <th style="width: 13%;">车辆自编号</th> | ||
| 38 | - <th style="width: 13%;">设备</th> | ||
| 39 | - <th style="width: 13%;">异常类型</th> | ||
| 40 | - <th style="width: 17%;">时间</th> | ||
| 41 | - <th style="width: 11%;">检查属性</th> | ||
| 42 | - <th style="width: 11%;">图像</th> | ||
| 43 | - <th>视频</th> | ||
| 44 | - </tr> | ||
| 45 | - </thead> | ||
| 46 | - <tbody data-uk-observe> | ||
| 47 | - </tbody> | ||
| 48 | - </table> | ||
| 49 | - </div> | ||
| 50 | - | ||
| 51 | - <div class="uk-modal-footer uk-text-right pagination-wrap"> | ||
| 52 | - </div> | ||
| 53 | - </div> | ||
| 54 | - | ||
| 55 | - <script id="all-safe_dring-table-temp" type="text/html"> | ||
| 56 | - {{each array as sd i}} | ||
| 57 | - <tr> | ||
| 58 | - <td style="width: 14%;">{{sd.xlmc}}</td> | ||
| 59 | - <td style="width: 14%;">{{sd.clzbh}}</td> | ||
| 60 | - <td style="width: 13%;">{{sd.sbbh}}</td> | ||
| 61 | - <td style="width: 13%;">{{sd.yczlText}}</td> | ||
| 62 | - <td style="width: 10%;">{{sd.timeStr}}</td> | ||
| 63 | - <td style="width: 10%;"> | ||
| 64 | - {{if sd.yczltype=='A1'}} | ||
| 65 | - {{if sd.jctype==0}} | ||
| 66 | - 双脱手 | ||
| 67 | - {{else if sd.jctype==1}} | ||
| 68 | - 单脱手 | ||
| 69 | - {{/if}} | ||
| 70 | - {{/if}} | ||
| 71 | - </td> | ||
| 72 | - <td style="width: 10%;"> | ||
| 73 | - <a class="image_link" href="{{sd.url}}.jpg" data-uk-lightbox="{group:'jpg_group1'}" title="{{sd.title}}">JPG</a> | ||
| 74 | - </td> | ||
| 75 | - <td> | ||
| 76 | - <a class="image_link" href="{{sd.url}}.gif" data-uk-lightbox="{group:'gif_group2'}" title="{{sd.title}}">查看视频</a> | ||
| 77 | - </td> | ||
| 78 | - </tr> | ||
| 79 | - {{/each}} | ||
| 80 | - </script> | ||
| 81 | - | ||
| 82 | - <script> | ||
| 83 | - (function() { | ||
| 84 | - var modal = '#safe_dring_list-modal'; | ||
| 85 | - var form = $('.search-form', modal); | ||
| 86 | - var page = 0; | ||
| 87 | - var pageSize = 12; | ||
| 88 | - | ||
| 89 | - $(modal).on('init', function(e, data) { | ||
| 90 | - e.stopPropagation(); | ||
| 91 | - | ||
| 92 | - query(); | ||
| 93 | - }); | ||
| 94 | - | ||
| 95 | - //sumit event | ||
| 96 | - form.on('submit', function(e) { | ||
| 97 | - e.preventDefault(); | ||
| 98 | - resetPagination = true; | ||
| 99 | - page=0; | ||
| 100 | - query(); | ||
| 101 | - }); | ||
| 102 | - | ||
| 103 | - var query = function() { | ||
| 104 | - scanFlag = false; | ||
| 105 | - var data = form.serializeJSON(); | ||
| 106 | - data.page = page; | ||
| 107 | - data.size = pageSize; | ||
| 108 | - | ||
| 109 | - gb_common.$get('/gps/safeDriv', data, function (rs) { | ||
| 110 | - //数据转换 | ||
| 111 | - var code2Name=gb_data_basic.lineCode2NameAll(), url,stm, p; | ||
| 112 | - $.each(rs.list, function(){ | ||
| 113 | - if(this.xlbm) | ||
| 114 | - this.xlmc=code2Name[this.xlbm]; | ||
| 115 | - else | ||
| 116 | - this.xlmc=''; | ||
| 117 | - stm = moment(this.ts); | ||
| 118 | - this.timeStr = stm.format('YYYY-MM-DD HH:mm:ss'); | ||
| 119 | - this.yczlText= gb_safe_driv.safeCode[this.yczltype]; | ||
| 120 | - //拼接图片地址 | ||
| 121 | - p = (this.sbbh+'_'+this.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 122 | - url = stm.format('YYYYMMDD')+'/'+p+'/'+p; | ||
| 123 | - this.url = gb_safe_driv.urlPath + url; | ||
| 124 | - //title | ||
| 125 | - this.title = this.clzbh+' '+stm.format('HH时mm分ss秒')+' '+this.yczlText; | ||
| 126 | - }); | ||
| 127 | - | ||
| 128 | - var bodyHtml = template('all-safe_dring-table-temp', { | ||
| 129 | - array: rs.list | ||
| 130 | - }); | ||
| 131 | - $('table tbody', modal).html(bodyHtml); | ||
| 132 | - if (resetPagination) | ||
| 133 | - pagination(rs.totalPages + 1, rs.page); | ||
| 134 | - | ||
| 135 | - //扫描图片是否存在 | ||
| 136 | - scanFlag = true; | ||
| 137 | - scanImgIsExist(); | ||
| 138 | - }); | ||
| 139 | - }; | ||
| 140 | - | ||
| 141 | - var scanFlag; | ||
| 142 | - var scanImgIsExist = function () { | ||
| 143 | - var array = $('table tbody a.image_link', modal); | ||
| 144 | - var i = 0; | ||
| 145 | - //匿名函数递归 | ||
| 146 | - (function () { | ||
| 147 | - //计数 | ||
| 148 | - if(i >= array.length || !scanFlag){ | ||
| 149 | - console.log('扫描图片结束'); | ||
| 150 | - return; | ||
| 151 | - } | ||
| 152 | - var f = arguments.callee; | ||
| 153 | - var $a = $(array[i]); | ||
| 154 | - i ++; | ||
| 155 | - var img = new Image(); | ||
| 156 | - img.onerror = function(){ | ||
| 157 | - $a.removeAttr('href').removeAttr('data-uk-lightbox').text('无').css('color', '#b8b8b8'); | ||
| 158 | - f(); | ||
| 159 | - }; | ||
| 160 | - img.onload = function(){ | ||
| 161 | - f(); | ||
| 162 | - }; | ||
| 163 | - img.src=$a.attr('href'); | ||
| 164 | - })(); | ||
| 165 | - }; | ||
| 166 | - | ||
| 167 | - var resetPagination = true; | ||
| 168 | - var pagination = function(pages, currentPage) { | ||
| 169 | - var wrap = $('.pagination-wrap', modal).empty() | ||
| 170 | - ,e = $('<ul class="uk-pagination"></ul>').appendTo(wrap); | ||
| 171 | - | ||
| 172 | - var pagination = UIkit.pagination(e, { | ||
| 173 | - pages: pages, | ||
| 174 | - currentPage: currentPage | ||
| 175 | - }); | ||
| 176 | - | ||
| 177 | - e.on('select.uk.pagination', function(e, pageIndex){ | ||
| 178 | - page = pageIndex; | ||
| 179 | - query(); | ||
| 180 | - }); | ||
| 181 | - | ||
| 182 | - resetPagination = false; | ||
| 183 | - }; | ||
| 184 | - })(); | ||
| 185 | - </script> | ||
| 186 | -</div> | 1 | +<div class="uk-modal ct_move_modal" id="safe_dring_list-modal" style="z-index: 99;"> |
| 2 | + <div class="uk-modal-dialog" style="width: 1100px;"> | ||
| 3 | + <a href="" class="uk-modal-close uk-close"></a> | ||
| 4 | + <div class="uk-modal-header"> | ||
| 5 | + <h2>安全驾驶图像信息(当日)</h2></div> | ||
| 6 | + | ||
| 7 | + <div class="uk-panel uk-panel-box uk-panel-box-primary"> | ||
| 8 | + <form class="uk-form search-form"> | ||
| 9 | + <fieldset data-uk-margin> | ||
| 10 | + <legend> | ||
| 11 | + 数据检索 | ||
| 12 | + </legend> | ||
| 13 | + <span class="horizontal-field">车辆</span> | ||
| 14 | + <div class="uk-autocomplete uk-form autocomplete-cars" > | ||
| 15 | + <input type="text" name="clzbh" placeholder="车辆自编号"> | ||
| 16 | + </div> | ||
| 17 | + <span class="horizontal-field">异常类型</span> | ||
| 18 | + <select name="yczltype"> | ||
| 19 | + <option value="">全部</option> | ||
| 20 | + <option value="A1">手部离开方向盘</option> | ||
| 21 | + <option value="A2">摄像头异常</option> | ||
| 22 | + <option value="A3">未戴安全带</option> | ||
| 23 | + <option value="A4">未戴袖章</option> | ||
| 24 | + <option value="A5">眨眼/疲劳驾驶</option> | ||
| 25 | + <option value="A6">打哈欠/打瞌睡</option> | ||
| 26 | + <option value="A7">行驶中与人交谈</option> | ||
| 27 | + </select> | ||
| 28 | + <button class="uk-button">检索</button> | ||
| 29 | + </fieldset> | ||
| 30 | + </form> | ||
| 31 | + </div> | ||
| 32 | + <div style="height: 495px;margin:5px 0 -18px;"> | ||
| 33 | + <table class="ct-fixed-table uk-table uk-table-hover"> | ||
| 34 | + <thead> | ||
| 35 | + <tr> | ||
| 36 | + <th style="width: 12%;">线路</th> | ||
| 37 | + <th style="width: 13%;">车辆自编号</th> | ||
| 38 | + <th style="width: 13%;">设备</th> | ||
| 39 | + <th style="width: 13%;">异常类型</th> | ||
| 40 | + <th style="width: 17%;">时间</th> | ||
| 41 | + <th style="width: 11%;">检查属性</th> | ||
| 42 | + <th style="width: 11%;">图像</th> | ||
| 43 | + <th>视频</th> | ||
| 44 | + </tr> | ||
| 45 | + </thead> | ||
| 46 | + <tbody data-uk-observe> | ||
| 47 | + </tbody> | ||
| 48 | + </table> | ||
| 49 | + </div> | ||
| 50 | + | ||
| 51 | + <div class="uk-modal-footer uk-text-right pagination-wrap"> | ||
| 52 | + </div> | ||
| 53 | + </div> | ||
| 54 | + | ||
| 55 | + <script id="all-safe_dring-table-temp" type="text/html"> | ||
| 56 | + {{each array as sd i}} | ||
| 57 | + <tr> | ||
| 58 | + <td style="width: 14%;">{{sd.xlmc}}</td> | ||
| 59 | + <td style="width: 14%;">{{sd.clzbh}}</td> | ||
| 60 | + <td style="width: 13%;">{{sd.sbbh}}</td> | ||
| 61 | + <td style="width: 13%;">{{sd.yczlText}}</td> | ||
| 62 | + <td style="width: 10%;">{{sd.timeStr}}</td> | ||
| 63 | + <td style="width: 10%;"> | ||
| 64 | + {{if sd.yczltype=='A1'}} | ||
| 65 | + {{if sd.jctype==0}} | ||
| 66 | + 双脱手 | ||
| 67 | + {{else if sd.jctype==1}} | ||
| 68 | + 单脱手 | ||
| 69 | + {{/if}} | ||
| 70 | + {{/if}} | ||
| 71 | + </td> | ||
| 72 | + <td style="width: 10%;"> | ||
| 73 | + <a class="image_link" href="{{sd.url}}.jpg" data-uk-lightbox="{group:'jpg_group1'}" title="{{sd.title}}">JPG</a> | ||
| 74 | + </td> | ||
| 75 | + <td> | ||
| 76 | + <a class="image_link" href="{{sd.url}}.gif" data-uk-lightbox="{group:'gif_group2'}" title="{{sd.title}}">查看视频</a> | ||
| 77 | + </td> | ||
| 78 | + </tr> | ||
| 79 | + {{/each}} | ||
| 80 | + </script> | ||
| 81 | + | ||
| 82 | + <script> | ||
| 83 | + (function() { | ||
| 84 | + var modal = '#safe_dring_list-modal'; | ||
| 85 | + var form = $('.search-form', modal); | ||
| 86 | + var page = 0; | ||
| 87 | + var pageSize = 12; | ||
| 88 | + | ||
| 89 | + $(modal).on('init', function(e, data) { | ||
| 90 | + e.stopPropagation(); | ||
| 91 | + | ||
| 92 | + query(); | ||
| 93 | + }); | ||
| 94 | + | ||
| 95 | + //sumit event | ||
| 96 | + form.on('submit', function(e) { | ||
| 97 | + e.preventDefault(); | ||
| 98 | + resetPagination = true; | ||
| 99 | + page=0; | ||
| 100 | + query(); | ||
| 101 | + }); | ||
| 102 | + | ||
| 103 | + var query = function() { | ||
| 104 | + scanFlag = false; | ||
| 105 | + var data = form.serializeJSON(); | ||
| 106 | + data.page = page; | ||
| 107 | + data.size = pageSize; | ||
| 108 | + | ||
| 109 | + gb_common.$get('/gps/safeDriv', data, function (rs) { | ||
| 110 | + //数据转换 | ||
| 111 | + var code2Name=gb_data_basic.lineCode2NameAll(), url,stm, p; | ||
| 112 | + $.each(rs.list, function(){ | ||
| 113 | + if(this.xlbm) | ||
| 114 | + this.xlmc=code2Name[this.xlbm]; | ||
| 115 | + else | ||
| 116 | + this.xlmc=''; | ||
| 117 | + stm = moment(this.ts); | ||
| 118 | + this.timeStr = stm.format('YYYY-MM-DD HH:mm:ss'); | ||
| 119 | + this.yczlText= gb_safe_driv.safeCode[this.yczltype]; | ||
| 120 | + //拼接图片地址 | ||
| 121 | + p = (this.sbbh+'_'+this.yczltype+'_'+stm.format('YYYYMMDDHHmmss')); | ||
| 122 | + url = stm.format('YYYYMMDD')+'/'+p+'/'+p; | ||
| 123 | + this.url = gb_safe_driv.urlPath + url; | ||
| 124 | + //title | ||
| 125 | + this.title = this.clzbh+' '+stm.format('HH时mm分ss秒')+' '+this.yczlText; | ||
| 126 | + }); | ||
| 127 | + | ||
| 128 | + var bodyHtml = template('all-safe_dring-table-temp', { | ||
| 129 | + array: rs.list | ||
| 130 | + }); | ||
| 131 | + $('table tbody', modal).html(bodyHtml); | ||
| 132 | + if (resetPagination) | ||
| 133 | + pagination(rs.totalPages + 1, rs.page); | ||
| 134 | + | ||
| 135 | + //扫描图片是否存在 | ||
| 136 | + scanFlag = true; | ||
| 137 | + scanImgIsExist(); | ||
| 138 | + }); | ||
| 139 | + }; | ||
| 140 | + | ||
| 141 | + var scanFlag; | ||
| 142 | + var scanImgIsExist = function () { | ||
| 143 | + var array = $('table tbody a.image_link', modal); | ||
| 144 | + var i = 0; | ||
| 145 | + //匿名函数递归 | ||
| 146 | + (function () { | ||
| 147 | + //计数 | ||
| 148 | + if(i >= array.length || !scanFlag){ | ||
| 149 | + console.log('扫描图片结束'); | ||
| 150 | + return; | ||
| 151 | + } | ||
| 152 | + var f = arguments.callee; | ||
| 153 | + var $a = $(array[i]); | ||
| 154 | + i ++; | ||
| 155 | + var img = new Image(); | ||
| 156 | + img.onerror = function(){ | ||
| 157 | + $a.removeAttr('href').removeAttr('data-uk-lightbox').text('无').css('color', '#b8b8b8'); | ||
| 158 | + f(); | ||
| 159 | + }; | ||
| 160 | + img.onload = function(){ | ||
| 161 | + f(); | ||
| 162 | + }; | ||
| 163 | + img.src=$a.attr('href'); | ||
| 164 | + })(); | ||
| 165 | + }; | ||
| 166 | + | ||
| 167 | + var resetPagination = true; | ||
| 168 | + var pagination = function(pages, currentPage) { | ||
| 169 | + var wrap = $('.pagination-wrap', modal).empty() | ||
| 170 | + ,e = $('<ul class="uk-pagination"></ul>').appendTo(wrap); | ||
| 171 | + | ||
| 172 | + var pagination = UIkit.pagination(e, { | ||
| 173 | + pages: pages, | ||
| 174 | + currentPage: currentPage | ||
| 175 | + }); | ||
| 176 | + | ||
| 177 | + e.on('select.uk.pagination', function(e, pageIndex){ | ||
| 178 | + page = pageIndex; | ||
| 179 | + query(); | ||
| 180 | + }); | ||
| 181 | + | ||
| 182 | + resetPagination = false; | ||
| 183 | + }; | ||
| 184 | + })(); | ||
| 185 | + </script> | ||
| 186 | +</div> |
src/test/java/com/bsth/service/schedule/BaseTest.java
0 → 100644
| 1 | +package com.bsth.service.schedule; | ||
| 2 | + | ||
| 3 | +import org.junit.runner.RunWith; | ||
| 4 | +import org.springframework.boot.test.SpringApplicationConfiguration; | ||
| 5 | +import org.springframework.test.context.ActiveProfiles; | ||
| 6 | +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; | ||
| 7 | + | ||
| 8 | +/** | ||
| 9 | + * 基础测试类。 | ||
| 10 | + */ | ||
| 11 | +@RunWith(SpringJUnit4ClassRunner.class) | ||
| 12 | +@SpringApplicationConfiguration(classes = ScheduleTestApp.class) | ||
| 13 | +@ActiveProfiles("scheduletest") | ||
| 14 | +//@WebIntegrationTest({"server.port=0","management.port=0"}) | ||
| 15 | +public class BaseTest { | ||
| 16 | +} |
src/test/java/com/bsth/service/schedule/ScheduleTestApp.java
0 → 100644
| 1 | +package com.bsth.service.schedule; | ||
| 2 | + | ||
| 3 | +import com.bsth.service.schedule.impl.SchedulePlanRuleResultServiceImpl; | ||
| 4 | +import com.bsth.service.schedule.impl.SchedulePlanServiceImpl; | ||
| 5 | +import com.bsth.service.schedule.rules.MyDroolsConfiguration; | ||
| 6 | +import com.bsth.service.schedule.utils.DataToolsServiceImpl; | ||
| 7 | +import org.springframework.boot.autoconfigure.SpringBootApplication; | ||
| 8 | +import org.springframework.boot.orm.jpa.EntityScan; | ||
| 9 | +import org.springframework.context.annotation.ComponentScan; | ||
| 10 | +import org.springframework.context.annotation.Configuration; | ||
| 11 | +import org.springframework.context.annotation.FilterType; | ||
| 12 | +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; | ||
| 13 | + | ||
| 14 | +/** | ||
| 15 | + * 基础测试类(用于计划调度模块测试测试)。 | ||
| 16 | + * 配置计划调度的模块的用到的entity,repository,service | ||
| 17 | + * | ||
| 18 | + * 注意:测试环境下测试类 TestApp 和springdata的类不在统一级包里,必须指定EnableJpaRepositories | ||
| 19 | + */ | ||
| 20 | +@Configuration | ||
| 21 | +@EntityScan( | ||
| 22 | + basePackages = {"com.bsth.entity"} | ||
| 23 | +) | ||
| 24 | +@ComponentScan( | ||
| 25 | + basePackages = {"com.bsth.repository", "com.bsth.service"}, | ||
| 26 | + useDefaultFilters = false, | ||
| 27 | + includeFilters = { | ||
| 28 | + @ComponentScan.Filter( | ||
| 29 | + type = FilterType.ASSIGNABLE_TYPE, | ||
| 30 | + value = SchedulePlanRuleResultServiceImpl.class | ||
| 31 | + ), | ||
| 32 | + @ComponentScan.Filter( | ||
| 33 | + type = FilterType.ASSIGNABLE_TYPE, | ||
| 34 | + value = SchedulePlanServiceImpl.class | ||
| 35 | + ), | ||
| 36 | + @ComponentScan.Filter( | ||
| 37 | + type = FilterType.ASSIGNABLE_TYPE, | ||
| 38 | + value = MyDroolsConfiguration.class | ||
| 39 | + ), | ||
| 40 | + @ComponentScan.Filter( | ||
| 41 | + type = FilterType.ASSIGNABLE_TYPE, | ||
| 42 | + value = DataToolsServiceImpl.class | ||
| 43 | + ) | ||
| 44 | + } | ||
| 45 | +) | ||
| 46 | +@EnableJpaRepositories( | ||
| 47 | + basePackages = {"com.bsth.repository"} | ||
| 48 | +) | ||
| 49 | +@SpringBootApplication | ||
| 50 | +public class ScheduleTestApp { | ||
| 51 | +} |
src/test/java/com/bsth/service/schedule/rules/DroolsRulesTest.java deleted
100644 → 0
| 1 | -package com.bsth.service.schedule.rules; | ||
| 2 | - | ||
| 3 | -import com.bsth.Application; | ||
| 4 | -import com.bsth.service.schedule.rules.shiftloop.ScheduleCalcuParam_input; | ||
| 5 | -import com.bsth.service.schedule.rules.shiftloop.ScheduleResults_output; | ||
| 6 | -import com.bsth.service.schedule.rules.shiftloop.ScheduleRule_input; | ||
| 7 | -import com.bsth.service.schedule.rules.ttinfo.TTInfoCalcuParam_input; | ||
| 8 | -import com.bsth.service.schedule.rules.ttinfo.TTInfoResults_output; | ||
| 9 | -import com.bsth.service.schedule.rules.ttinfo.TTInfo_input; | ||
| 10 | -import org.joda.time.DateTime; | ||
| 11 | -import org.junit.Test; | ||
| 12 | -import org.junit.runner.RunWith; | ||
| 13 | -import org.kie.api.KieBase; | ||
| 14 | -import org.kie.api.runtime.KieSession; | ||
| 15 | -import org.slf4j.Logger; | ||
| 16 | -import org.slf4j.LoggerFactory; | ||
| 17 | -import org.springframework.beans.factory.annotation.Autowired; | ||
| 18 | -import org.springframework.boot.test.SpringApplicationConfiguration; | ||
| 19 | -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; | ||
| 20 | - | ||
| 21 | -import java.util.Arrays; | ||
| 22 | - | ||
| 23 | -@RunWith(SpringJUnit4ClassRunner.class) | ||
| 24 | -@SpringApplicationConfiguration(classes = {Application.class}) | ||
| 25 | -public class DroolsRulesTest { | ||
| 26 | - | ||
| 27 | - /** 日志记录器 */ | ||
| 28 | - private final static Logger logger = LoggerFactory.getLogger(DroolsRulesTest.class); | ||
| 29 | - | ||
| 30 | - @Autowired | ||
| 31 | - private KieBase kieBase; | ||
| 32 | - | ||
| 33 | -// @Test | ||
| 34 | -// public void helloWorldDrlTest() throws Exception { | ||
| 35 | -// // 1、创建session,内部配置的是stateful | ||
| 36 | -// KieSession session = kieBase.newKieSession(); | ||
| 37 | -// | ||
| 38 | -// // 1.1 设置gloable对象,在drl中通过别名使用 | ||
| 39 | -// List<String> gloableList = new ArrayList<String>(); | ||
| 40 | -// session.setGlobal("list", gloableList); | ||
| 41 | -// | ||
| 42 | -// // 1.2 可以设置一些监听器,再议 | ||
| 43 | -// | ||
| 44 | -// // 2、创建fact对象 | ||
| 45 | -// Message message = new Message(); | ||
| 46 | -// message.setMessage("Hello World"); | ||
| 47 | -// message.setStatus(Message.HELLO); | ||
| 48 | -// session.insert(message); | ||
| 49 | -// | ||
| 50 | -// // 3、执行rule | ||
| 51 | -// session.fireAllRules(); | ||
| 52 | -// | ||
| 53 | -// System.out.println(gloableList); | ||
| 54 | -// | ||
| 55 | -// // 4、执行完毕销毁,有日志的也要关闭 | ||
| 56 | -// session.dispose(); | ||
| 57 | -// } | ||
| 58 | - | ||
| 59 | -// @Test | ||
| 60 | - public void ttinfoDrlTest() throws Exception { | ||
| 61 | - logger.info("------------ttinfoDrlTest 测试---------------"); | ||
| 62 | - | ||
| 63 | - // 1、创建session,内部配置的是stateful | ||
| 64 | - KieSession session = kieBase.newKieSession(); | ||
| 65 | - | ||
| 66 | - // 1.1 设置gloable对象,在drl中通过别人使用 | ||
| 67 | - session.setGlobal("log", logger); | ||
| 68 | - TTInfoResults_output ttInfoResults_output = new TTInfoResults_output(); | ||
| 69 | - session.setGlobal("results", ttInfoResults_output); | ||
| 70 | - | ||
| 71 | - // 1.2 可以设置一些监听器,再议 | ||
| 72 | - | ||
| 73 | - // 2、创建fact对象 | ||
| 74 | - TTInfoCalcuParam_input ttInfoCalcuParam_input = new TTInfoCalcuParam_input( | ||
| 75 | - new DateTime(2016, 8, 1, 0, 0), | ||
| 76 | - new DateTime(2016, 8, 10, 0, 0), | ||
| 77 | - "1" | ||
| 78 | - ); | ||
| 79 | - | ||
| 80 | - | ||
| 81 | - TTInfo_input ttInfo_input1 = new TTInfo_input(); | ||
| 82 | - ttInfo_input1.setTtInfoId("1"); | ||
| 83 | - ttInfo_input1.setXlId("1"); | ||
| 84 | - ttInfo_input1.setWeekdays(Arrays.asList(true, true, true, true, true, false, false)); | ||
| 85 | - ttInfo_input1.getSpecialDays().add(new DateTime(2016, 8, 1, 0, 0)); | ||
| 86 | - ttInfo_input1.setUpdateDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 87 | - ttInfo_input1.setIsEnable(true); | ||
| 88 | - ttInfo_input1.setQyDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 89 | - | ||
| 90 | - TTInfo_input ttInfo_input1_2 = new TTInfo_input(); | ||
| 91 | - ttInfo_input1_2.setTtInfoId("2"); | ||
| 92 | - ttInfo_input1_2.setXlId("1"); | ||
| 93 | - ttInfo_input1_2.setWeekdays(Arrays.asList(true, false, false, false, false, true, false)); | ||
| 94 | - ttInfo_input1_2.getSpecialDays().add(new DateTime(2016, 8, 11, 0, 0)); | ||
| 95 | - ttInfo_input1_2.setUpdateDate(new DateTime(2015, 2, 1, 0, 0)); | ||
| 96 | - ttInfo_input1_2.setIsEnable(true); | ||
| 97 | - ttInfo_input1_2.setQyDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 98 | - | ||
| 99 | - | ||
| 100 | - TTInfoCalcuParam_input ttInfoCalcuParam_inpu2 = new TTInfoCalcuParam_input( | ||
| 101 | - new DateTime(2016, 8, 1, 0, 0), | ||
| 102 | - new DateTime(2016, 8, 10, 0, 0), | ||
| 103 | - "2" | ||
| 104 | - ); | ||
| 105 | - | ||
| 106 | - TTInfo_input ttInfo_input2 = new TTInfo_input(); | ||
| 107 | - ttInfo_input2.setTtInfoId("2"); | ||
| 108 | - ttInfo_input2.setXlId("2"); | ||
| 109 | - ttInfo_input2.setWeekdays(Arrays.asList(true, false, false, false, false, true, false)); | ||
| 110 | - ttInfo_input2.getSpecialDays().add(new DateTime(2016, 8, 11, 0, 0)); | ||
| 111 | - ttInfo_input2.setUpdateDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 112 | - ttInfo_input2.setIsEnable(true); | ||
| 113 | - ttInfo_input2.setQyDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 114 | - | ||
| 115 | - session.insert(ttInfoCalcuParam_input); | ||
| 116 | - session.insert(ttInfo_input1); | ||
| 117 | - session.insert(ttInfo_input1_2); | ||
| 118 | - session.insert(ttInfoCalcuParam_inpu2); | ||
| 119 | - session.insert(ttInfo_input2); | ||
| 120 | - | ||
| 121 | - | ||
| 122 | - | ||
| 123 | - // 3、执行rule | ||
| 124 | - session.fireAllRules(); | ||
| 125 | - | ||
| 126 | - // 4、执行完毕销毁,有日志的也要关闭 | ||
| 127 | - session.dispose(); | ||
| 128 | - | ||
| 129 | - // 打印global结果 | ||
| 130 | - logger.info(ttInfoResults_output.showTTInfoDesc1()); | ||
| 131 | - | ||
| 132 | - } | ||
| 133 | - | ||
| 134 | - @Test | ||
| 135 | - public void shiftloopDrlTest() throws Exception { | ||
| 136 | - // 1、创建session,内部配置的是stateful | ||
| 137 | - KieSession session = kieBase.newKieSession(); | ||
| 138 | - | ||
| 139 | - // 1.1 设置gloable对象,在drl中通过别名使用 | ||
| 140 | - ScheduleResults_output scheduleResults_output = new ScheduleResults_output(); | ||
| 141 | - session.setGlobal("scheduleResult", scheduleResults_output); | ||
| 142 | - | ||
| 143 | - // 1.2 可以设置一些监听器,再议 | ||
| 144 | - | ||
| 145 | - // 2、创建fact对象 | ||
| 146 | - | ||
| 147 | - ScheduleCalcuParam_input scheduleCalcuParam_input = new ScheduleCalcuParam_input(); | ||
| 148 | - scheduleCalcuParam_input.setFromDate(new DateTime(2016, 8, 1, 0, 0)); | ||
| 149 | - scheduleCalcuParam_input.setToDate(new DateTime(2016, 8, 10, 0, 0)); | ||
| 150 | - | ||
| 151 | - ScheduleRule_input scheduleRule_input1 = new ScheduleRule_input(); | ||
| 152 | - scheduleRule_input1.setRuleId("1"); | ||
| 153 | - scheduleRule_input1.setQyrq(new DateTime(2016, 7, 22, 0, 0)); | ||
| 154 | - scheduleRule_input1.getGuideboardIds().addAll(Arrays.asList( | ||
| 155 | - "9", "9" , "8" ,"8" ,"7" ,"7" ,"6" ,"6", "5", "5", "4", "4", "3", "3", "2", "2", "1", "1")); | ||
| 156 | - scheduleRule_input1.setStartGbdIndex(3); | ||
| 157 | - scheduleRule_input1.getEmployeeConfigIds().addAll(Arrays.asList("1", "2")); | ||
| 158 | - scheduleRule_input1.setStartEIndex(1); | ||
| 159 | - scheduleRule_input1.setCarConfigId("1"); | ||
| 160 | - | ||
| 161 | -// ScheduleRule_input scheduleRule_input2 = new ScheduleRule_input(); | ||
| 162 | -// scheduleRule_input2.setRuleId(2L); | ||
| 163 | -// scheduleRule_input2.setQyrq(new DateTime(2016, 7, 22, 0, 0)); | ||
| 164 | -// scheduleRule_input2.getGuideboardIds().addAll(Arrays.asList( | ||
| 165 | -// 1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L, 6L, 6L, 7L, 7L, 8L, 8L, 9L, 9L, 10L, 10L, | ||
| 166 | -// 11L, 11L, 12L, 12L, 13L, 13L)); | ||
| 167 | -// scheduleRule_input2.setStartGbdIndex(7); | ||
| 168 | -// scheduleRule_input2.getEmployeeConfigIds().addAll(Arrays.asList(11L, 12L)); | ||
| 169 | -// scheduleRule_input2.setStartEIndex(1); | ||
| 170 | -// scheduleRule_input2.setCarConfigId(2L); | ||
| 171 | - | ||
| 172 | - session.insert(scheduleCalcuParam_input); | ||
| 173 | - session.insert(scheduleRule_input1); | ||
| 174 | -// session.insert(scheduleRule_input2); | ||
| 175 | - | ||
| 176 | - | ||
| 177 | - // 3、执行rule | ||
| 178 | - session.fireAllRules(); | ||
| 179 | - | ||
| 180 | - // 4、执行完毕销毁,有日志的也要关闭 | ||
| 181 | - session.dispose(); | ||
| 182 | - | ||
| 183 | - System.out.println(scheduleResults_output.showGuideboardDesc1()); | ||
| 184 | - | ||
| 185 | - } | ||
| 186 | -} |
src/test/java/com/bsth/service/schedule/rules/DroolsRulesTest2.java deleted
100644 → 0
| 1 | -package com.bsth.service.schedule.rules; | ||
| 2 | - | ||
| 3 | -import com.bsth.Application; | ||
| 4 | -import org.junit.runner.RunWith; | ||
| 5 | -import org.kie.api.KieBase; | ||
| 6 | -import org.springframework.beans.factory.annotation.Autowired; | ||
| 7 | -import org.springframework.boot.test.SpringApplicationConfiguration; | ||
| 8 | -import org.springframework.context.annotation.ComponentScan; | ||
| 9 | -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; | ||
| 10 | - | ||
| 11 | -/** | ||
| 12 | - * 测试类。 | ||
| 13 | - */ | ||
| 14 | -@RunWith(SpringJUnit4ClassRunner.class) | ||
| 15 | -@SpringApplicationConfiguration(classes = {Application.class}) | ||
| 16 | -@ComponentScan(basePackages = {"com.bsth.entity"}) | ||
| 17 | -public class DroolsRulesTest2 { | ||
| 18 | - @Autowired | ||
| 19 | - private KieBase kieBase; | ||
| 20 | - | ||
| 21 | - @org.junit.Test | ||
| 22 | - public void test1() throws Exception { | ||
| 23 | - System.out.println("dfdfdfdfd"); | ||
| 24 | - } | ||
| 25 | - | ||
| 26 | -} |
src/test/java/com/bsth/service/schedule/rules/RuleTest1.java
0 → 100644
| 1 | +package com.bsth.service.schedule.rules; | ||
| 2 | + | ||
| 3 | +import com.bsth.entity.sys.SysUser; | ||
| 4 | +import com.bsth.repository.sys.SysUserRepository; | ||
| 5 | +import com.bsth.service.schedule.BaseTest; | ||
| 6 | +import com.vividsolutions.jts.util.Assert; | ||
| 7 | +import org.dbunit.database.DatabaseConnection; | ||
| 8 | +import org.dbunit.database.IDatabaseConnection; | ||
| 9 | +import org.dbunit.dataset.IDataSet; | ||
| 10 | +import org.dbunit.dataset.xml.FlatXmlDataSetBuilder; | ||
| 11 | +import org.dbunit.operation.DatabaseOperation; | ||
| 12 | +import org.junit.After; | ||
| 13 | +import org.junit.Before; | ||
| 14 | +import org.slf4j.Logger; | ||
| 15 | +import org.slf4j.LoggerFactory; | ||
| 16 | +import org.springframework.beans.factory.annotation.Autowired; | ||
| 17 | +import org.springframework.core.io.ClassPathResource; | ||
| 18 | +import org.springframework.core.io.Resource; | ||
| 19 | + | ||
| 20 | +import javax.sql.DataSource; | ||
| 21 | + | ||
| 22 | +public class RuleTest1 extends BaseTest { | ||
| 23 | + /** 日志记录器 */ | ||
| 24 | + private static final Logger logger = LoggerFactory.getLogger(RuleTest1.class); | ||
| 25 | + | ||
| 26 | + @Autowired | ||
| 27 | + private DataSource dataSource; | ||
| 28 | + | ||
| 29 | + @Autowired | ||
| 30 | + private SysUserRepository sysUserRepository; | ||
| 31 | + | ||
| 32 | + /** | ||
| 33 | + * 初始化数据。 | ||
| 34 | + */ | ||
| 35 | + @Before | ||
| 36 | + public void initData() throws Exception { | ||
| 37 | + logger.info("载入数据......"); | ||
| 38 | + | ||
| 39 | + // 获取数据库连接 | ||
| 40 | + IDatabaseConnection iDatabaseConnection = new DatabaseConnection(dataSource.getConnection()); | ||
| 41 | + // 获取Dbunit数据源 | ||
| 42 | + Resource res = new ClassPathResource("testdata/d1.xml"); | ||
| 43 | + FlatXmlDataSetBuilder flatXmlDataSetBuilder = new FlatXmlDataSetBuilder(); | ||
| 44 | + flatXmlDataSetBuilder.setColumnSensing(false); | ||
| 45 | + flatXmlDataSetBuilder.setCaseSensitiveTableNames(false); | ||
| 46 | + IDataSet iDataSet = flatXmlDataSetBuilder.build(res.getInputStream()); | ||
| 47 | + | ||
| 48 | + // 载入数据 | ||
| 49 | + DatabaseOperation.CLEAN_INSERT.execute(iDatabaseConnection, iDataSet); | ||
| 50 | + } | ||
| 51 | + | ||
| 52 | + /** | ||
| 53 | + * 清除数据。 | ||
| 54 | + */ | ||
| 55 | + @After | ||
| 56 | + public void destoryData() throws Exception { | ||
| 57 | + logger.info("清除数据......"); | ||
| 58 | + // 获取数据库连接 | ||
| 59 | + IDatabaseConnection iDatabaseConnection = new DatabaseConnection(dataSource.getConnection()); | ||
| 60 | + // 获取Dbunit数据源 | ||
| 61 | + Resource res = new ClassPathResource("testdata/d1.xml"); | ||
| 62 | + FlatXmlDataSetBuilder flatXmlDataSetBuilder = new FlatXmlDataSetBuilder(); | ||
| 63 | + flatXmlDataSetBuilder.setColumnSensing(false); | ||
| 64 | + flatXmlDataSetBuilder.setCaseSensitiveTableNames(false); | ||
| 65 | + IDataSet iDataSet = flatXmlDataSetBuilder.build(res.getInputStream()); | ||
| 66 | + | ||
| 67 | + // 清除数据 | ||
| 68 | + DatabaseOperation.DELETE_ALL.execute(iDatabaseConnection, iDataSet); | ||
| 69 | + } | ||
| 70 | + | ||
| 71 | + @org.junit.Test | ||
| 72 | + public void t1() { | ||
| 73 | + logger.info("t1()测试......"); | ||
| 74 | + SysUser sysUser = sysUserRepository.findOne(1); | ||
| 75 | + Assert.equals("admin", sysUser.getUserName()); | ||
| 76 | + } | ||
| 77 | +} | ||
| 78 | + | ||
| 79 | +// | ||
| 80 | +// | ||
| 81 | +//package com.bsth.service.schedule.rules; | ||
| 82 | +// | ||
| 83 | +// import com.bsth.Application; | ||
| 84 | +// import com.bsth.service.schedule.rules.shiftloop.ScheduleCalcuParam_input; | ||
| 85 | +// import com.bsth.service.schedule.rules.shiftloop.ScheduleResults_output; | ||
| 86 | +// import com.bsth.service.schedule.rules.shiftloop.ScheduleRule_input; | ||
| 87 | +// import com.bsth.service.schedule.rules.ttinfo.TTInfoCalcuParam_input; | ||
| 88 | +// import com.bsth.service.schedule.rules.ttinfo.TTInfoResults_output; | ||
| 89 | +// import com.bsth.service.schedule.rules.ttinfo.TTInfo_input; | ||
| 90 | +// import org.joda.time.DateTime; | ||
| 91 | +// import org.junit.Test; | ||
| 92 | +// import org.junit.runner.RunWith; | ||
| 93 | +// import org.kie.api.KieBase; | ||
| 94 | +// import org.kie.api.runtime.KieSession; | ||
| 95 | +// import org.slf4j.Logger; | ||
| 96 | +// import org.slf4j.LoggerFactory; | ||
| 97 | +// import org.springframework.beans.factory.annotation.Autowired; | ||
| 98 | +// import org.springframework.boot.test.SpringApplicationConfiguration; | ||
| 99 | +// import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; | ||
| 100 | +// | ||
| 101 | +// import java.util.Arrays; | ||
| 102 | +// | ||
| 103 | +//@RunWith(SpringJUnit4ClassRunner.class) | ||
| 104 | +//@SpringApplicationConfiguration(classes = {Application.class}) | ||
| 105 | +//public class DroolsRulesTest { | ||
| 106 | +// | ||
| 107 | +// /** 日志记录器 */ | ||
| 108 | +// private final static Logger logger = LoggerFactory.getLogger(DroolsRulesTest.class); | ||
| 109 | +// | ||
| 110 | +// @Autowired | ||
| 111 | +// private KieBase kieBase; | ||
| 112 | +// | ||
| 113 | +//// @Test | ||
| 114 | +//// public void helloWorldDrlTest() throws Exception { | ||
| 115 | +//// // 1、创建session,内部配置的是stateful | ||
| 116 | +//// KieSession session = kieBase.newKieSession(); | ||
| 117 | +//// | ||
| 118 | +//// // 1.1 设置gloable对象,在drl中通过别名使用 | ||
| 119 | +//// List<String> gloableList = new ArrayList<String>(); | ||
| 120 | +//// session.setGlobal("list", gloableList); | ||
| 121 | +//// | ||
| 122 | +//// // 1.2 可以设置一些监听器,再议 | ||
| 123 | +//// | ||
| 124 | +//// // 2、创建fact对象 | ||
| 125 | +//// Message message = new Message(); | ||
| 126 | +//// message.setMessage("Hello World"); | ||
| 127 | +//// message.setStatus(Message.HELLO); | ||
| 128 | +//// session.insert(message); | ||
| 129 | +//// | ||
| 130 | +//// // 3、执行rule | ||
| 131 | +//// session.fireAllRules(); | ||
| 132 | +//// | ||
| 133 | +//// System.out.println(gloableList); | ||
| 134 | +//// | ||
| 135 | +//// // 4、执行完毕销毁,有日志的也要关闭 | ||
| 136 | +//// session.dispose(); | ||
| 137 | +//// } | ||
| 138 | +// | ||
| 139 | +// // @Test | ||
| 140 | +// public void ttinfoDrlTest() throws Exception { | ||
| 141 | +// logger.info("------------ttinfoDrlTest 测试---------------"); | ||
| 142 | +// | ||
| 143 | +// // 1、创建session,内部配置的是stateful | ||
| 144 | +// KieSession session = kieBase.newKieSession(); | ||
| 145 | +// | ||
| 146 | +// // 1.1 设置gloable对象,在drl中通过别人使用 | ||
| 147 | +// session.setGlobal("log", logger); | ||
| 148 | +// TTInfoResults_output ttInfoResults_output = new TTInfoResults_output(); | ||
| 149 | +// session.setGlobal("results", ttInfoResults_output); | ||
| 150 | +// | ||
| 151 | +// // 1.2 可以设置一些监听器,再议 | ||
| 152 | +// | ||
| 153 | +// // 2、创建fact对象 | ||
| 154 | +// TTInfoCalcuParam_input ttInfoCalcuParam_input = new TTInfoCalcuParam_input( | ||
| 155 | +// new DateTime(2016, 8, 1, 0, 0), | ||
| 156 | +// new DateTime(2016, 8, 10, 0, 0), | ||
| 157 | +// "1" | ||
| 158 | +// ); | ||
| 159 | +// | ||
| 160 | +// | ||
| 161 | +// TTInfo_input ttInfo_input1 = new TTInfo_input(); | ||
| 162 | +// ttInfo_input1.setTtInfoId("1"); | ||
| 163 | +// ttInfo_input1.setXlId("1"); | ||
| 164 | +// ttInfo_input1.setWeekdays(Arrays.asList(true, true, true, true, true, false, false)); | ||
| 165 | +// ttInfo_input1.getSpecialDays().add(new DateTime(2016, 8, 1, 0, 0)); | ||
| 166 | +// ttInfo_input1.setUpdateDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 167 | +// ttInfo_input1.setIsEnable(true); | ||
| 168 | +// ttInfo_input1.setQyDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 169 | +// | ||
| 170 | +// TTInfo_input ttInfo_input1_2 = new TTInfo_input(); | ||
| 171 | +// ttInfo_input1_2.setTtInfoId("2"); | ||
| 172 | +// ttInfo_input1_2.setXlId("1"); | ||
| 173 | +// ttInfo_input1_2.setWeekdays(Arrays.asList(true, false, false, false, false, true, false)); | ||
| 174 | +// ttInfo_input1_2.getSpecialDays().add(new DateTime(2016, 8, 11, 0, 0)); | ||
| 175 | +// ttInfo_input1_2.setUpdateDate(new DateTime(2015, 2, 1, 0, 0)); | ||
| 176 | +// ttInfo_input1_2.setIsEnable(true); | ||
| 177 | +// ttInfo_input1_2.setQyDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 178 | +// | ||
| 179 | +// | ||
| 180 | +// TTInfoCalcuParam_input ttInfoCalcuParam_inpu2 = new TTInfoCalcuParam_input( | ||
| 181 | +// new DateTime(2016, 8, 1, 0, 0), | ||
| 182 | +// new DateTime(2016, 8, 10, 0, 0), | ||
| 183 | +// "2" | ||
| 184 | +// ); | ||
| 185 | +// | ||
| 186 | +// TTInfo_input ttInfo_input2 = new TTInfo_input(); | ||
| 187 | +// ttInfo_input2.setTtInfoId("2"); | ||
| 188 | +// ttInfo_input2.setXlId("2"); | ||
| 189 | +// ttInfo_input2.setWeekdays(Arrays.asList(true, false, false, false, false, true, false)); | ||
| 190 | +// ttInfo_input2.getSpecialDays().add(new DateTime(2016, 8, 11, 0, 0)); | ||
| 191 | +// ttInfo_input2.setUpdateDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 192 | +// ttInfo_input2.setIsEnable(true); | ||
| 193 | +// ttInfo_input2.setQyDate(new DateTime(2016, 1, 1, 0, 0)); | ||
| 194 | +// | ||
| 195 | +// session.insert(ttInfoCalcuParam_input); | ||
| 196 | +// session.insert(ttInfo_input1); | ||
| 197 | +// session.insert(ttInfo_input1_2); | ||
| 198 | +// session.insert(ttInfoCalcuParam_inpu2); | ||
| 199 | +// session.insert(ttInfo_input2); | ||
| 200 | +// | ||
| 201 | +// | ||
| 202 | +// | ||
| 203 | +// // 3、执行rule | ||
| 204 | +// session.fireAllRules(); | ||
| 205 | +// | ||
| 206 | +// // 4、执行完毕销毁,有日志的也要关闭 | ||
| 207 | +// session.dispose(); | ||
| 208 | +// | ||
| 209 | +// // 打印global结果 | ||
| 210 | +// logger.info(ttInfoResults_output.showTTInfoDesc1()); | ||
| 211 | +// | ||
| 212 | +// } | ||
| 213 | +// | ||
| 214 | +// @Test | ||
| 215 | +// public void shiftloopDrlTest() throws Exception { | ||
| 216 | +// // 1、创建session,内部配置的是stateful | ||
| 217 | +// KieSession session = kieBase.newKieSession(); | ||
| 218 | +// | ||
| 219 | +// // 1.1 设置gloable对象,在drl中通过别名使用 | ||
| 220 | +// ScheduleResults_output scheduleResults_output = new ScheduleResults_output(); | ||
| 221 | +// session.setGlobal("scheduleResult", scheduleResults_output); | ||
| 222 | +// | ||
| 223 | +// // 1.2 可以设置一些监听器,再议 | ||
| 224 | +// | ||
| 225 | +// // 2、创建fact对象 | ||
| 226 | +// | ||
| 227 | +// ScheduleCalcuParam_input scheduleCalcuParam_input = new ScheduleCalcuParam_input(); | ||
| 228 | +// scheduleCalcuParam_input.setFromDate(new DateTime(2016, 8, 1, 0, 0)); | ||
| 229 | +// scheduleCalcuParam_input.setToDate(new DateTime(2016, 8, 10, 0, 0)); | ||
| 230 | +// | ||
| 231 | +// ScheduleRule_input scheduleRule_input1 = new ScheduleRule_input(); | ||
| 232 | +// scheduleRule_input1.setRuleId("1"); | ||
| 233 | +// scheduleRule_input1.setQyrq(new DateTime(2016, 7, 22, 0, 0)); | ||
| 234 | +// scheduleRule_input1.getGuideboardIds().addAll(Arrays.asList( | ||
| 235 | +// "9", "9" , "8" ,"8" ,"7" ,"7" ,"6" ,"6", "5", "5", "4", "4", "3", "3", "2", "2", "1", "1")); | ||
| 236 | +// scheduleRule_input1.setStartGbdIndex(3); | ||
| 237 | +// scheduleRule_input1.getEmployeeConfigIds().addAll(Arrays.asList("1", "2")); | ||
| 238 | +// scheduleRule_input1.setStartEIndex(1); | ||
| 239 | +// scheduleRule_input1.setCarConfigId("1"); | ||
| 240 | +// | ||
| 241 | +//// ScheduleRule_input scheduleRule_input2 = new ScheduleRule_input(); | ||
| 242 | +//// scheduleRule_input2.setRuleId(2L); | ||
| 243 | +//// scheduleRule_input2.setQyrq(new DateTime(2016, 7, 22, 0, 0)); | ||
| 244 | +//// scheduleRule_input2.getGuideboardIds().addAll(Arrays.asList( | ||
| 245 | +//// 1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L, 6L, 6L, 7L, 7L, 8L, 8L, 9L, 9L, 10L, 10L, | ||
| 246 | +//// 11L, 11L, 12L, 12L, 13L, 13L)); | ||
| 247 | +//// scheduleRule_input2.setStartGbdIndex(7); | ||
| 248 | +//// scheduleRule_input2.getEmployeeConfigIds().addAll(Arrays.asList(11L, 12L)); | ||
| 249 | +//// scheduleRule_input2.setStartEIndex(1); | ||
| 250 | +//// scheduleRule_input2.setCarConfigId(2L); | ||
| 251 | +// | ||
| 252 | +// session.insert(scheduleCalcuParam_input); | ||
| 253 | +// session.insert(scheduleRule_input1); | ||
| 254 | +//// session.insert(scheduleRule_input2); | ||
| 255 | +// | ||
| 256 | +// | ||
| 257 | +// // 3、执行rule | ||
| 258 | +// session.fireAllRules(); | ||
| 259 | +// | ||
| 260 | +// // 4、执行完毕销毁,有日志的也要关闭 | ||
| 261 | +// session.dispose(); | ||
| 262 | +// | ||
| 263 | +// System.out.println(scheduleResults_output.showGuideboardDesc1()); | ||
| 264 | +// | ||
| 265 | +// } | ||
| 266 | +//} | ||
| 267 | + |
src/test/java/com/bsth/service/schedule/rules/Test.java deleted
100644 → 0
| 1 | -package com.bsth.service.schedule.rules; | ||
| 2 | - | ||
| 3 | -import org.apache.tika.Tika; | ||
| 4 | - | ||
| 5 | -import java.io.File; | ||
| 6 | - | ||
| 7 | -/** | ||
| 8 | - * Created by xu on 17/1/3. | ||
| 9 | - */ | ||
| 10 | -public class Test { | ||
| 11 | - public static void main(String[] args) throws Exception { | ||
| 12 | - Tika tika = new Tika(); | ||
| 13 | - File file = new File("/Users/xu/Downloads/排班规则练习1.xls"); | ||
| 14 | - | ||
| 15 | - // application/vnd.ms-excel | ||
| 16 | - // application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | ||
| 17 | - | ||
| 18 | - String detecttype = tika.detect(file); | ||
| 19 | - System.out.println(detecttype); | ||
| 20 | - | ||
| 21 | - | ||
| 22 | - } | ||
| 23 | -} |
src/test/resources/application-scheduletest.properties
0 → 100644
| 1 | +#嵌入式tomcat配置 | ||
| 2 | +#server.port=9088 | ||
| 3 | +#management.port= 9001 | ||
| 4 | +#management.address= 127.0.0.1 | ||
| 5 | + | ||
| 6 | +#JPA配置 | ||
| 7 | +spring.jpa.hibernate.ddl-auto= update | ||
| 8 | +spring.jpa.hibernate.naming_strategy= org.hibernate.cfg.ImprovedNamingStrategy | ||
| 9 | +spring.jpa.database= MYSQL | ||
| 10 | +spring.jpa.show-sql= true | ||
| 11 | + | ||
| 12 | +#数据库连接池配置 | ||
| 13 | +spring.datasource.driver-class-name= com.mysql.jdbc.Driver | ||
| 14 | +spring.datasource.url= jdbc:mysql://127.0.0.1/test_control?useUnicode=true&characterEncoding=utf-8&useSSL=false | ||
| 15 | +spring.datasource.username= root | ||
| 16 | +spring.datasource.password= | ||
| 17 | + | ||
| 18 | +#spring.datasource.driver-class-name= org.h2.Driver | ||
| 19 | +#spring.datasource.url= jdbc:h2:mem:bookstore;DB_CLOSE_ON_EXIT=FALSE | ||
| 20 | +#spring.datasource.username= sa | ||
| 21 | +#spring.datasource.password= | ||
| 22 | + | ||
| 23 | +spring.datasource.max-active=100 | ||
| 24 | +spring.datasource.max-idle=8 | ||
| 25 | +spring.datasource.min-idle=8 | ||
| 26 | +spring.datasource.initial-size=5 | ||
| 27 | + | ||
| 28 | +spring.datasource.test-on-borrow=true | ||
| 29 | +spring.datasource.test-on-connect=true | ||
| 30 | +spring.datasource.test-on-return=true | ||
| 31 | +spring.datasource.test-while-idle=true | ||
| 32 | +spring.datasource.validation-query=select 1 | ||
| 33 | + |
src/test/resources/datatools/config-scheduletest.properties
0 → 100644
| 1 | +# 配置数据导入导出用到的配置信息 | ||
| 2 | + | ||
| 3 | +# 1、kettle配置文件路径(类路径) | ||
| 4 | +datatools.kettle_properties=/datatools/kettle.properties | ||
| 5 | +# 2、ktr文件通用配置变量(数据库连接,根据不同的环境需要修正) | ||
| 6 | +#数据库ip地址 | ||
| 7 | +datatools.kvars_dbip=127.0.0.1 | ||
| 8 | +#数据库用户名 | ||
| 9 | +datatools.kvars_dbuname=root | ||
| 10 | +#数据库密码 | ||
| 11 | +datatools.kvars_dbpwd= | ||
| 12 | +#数据库库名 | ||
| 13 | +datatools.kvars_dbdname=qp_control | ||
| 14 | + | ||
| 15 | +# 3、上传数据配置信息 | ||
| 16 | +# 上传文件目录配置(根据不同的环境需要修正) | ||
| 17 | +datatools.fileupload_dir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files | ||
| 18 | +# ktr转换文件,中配置的错误输出目录(根据不同的环境需要修正) | ||
| 19 | +datatools.trans_errordir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files/erroroutput | ||
| 20 | +# 临时输出文件目录 | ||
| 21 | +datatools.trans_tempdir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files/temp | ||
| 22 | +# 模版文件目录 | ||
| 23 | +datatools.trans_templatedir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files/template | ||
| 24 | + | ||
| 25 | +##---------------------------- 导入数据ktr ----------------------------## | ||
| 26 | +# 车辆信息导入ktr转换 | ||
| 27 | +datatools.cars_datainputktr=/datatools/ktrs/carsDataInput.ktr | ||
| 28 | +# 人员信息导入 | ||
| 29 | +datatools.employees_datainputktr=/datatools/ktrs/employeesDataInput.ktr | ||
| 30 | +# 路牌信息导入 | ||
| 31 | +datatools.guideboards_datainputktr=/datatools/ktrs/guideboardDataInput.ktr | ||
| 32 | +# 时刻表基础信息导入 | ||
| 33 | +datatools.ttinfo_datainputktr=/datatools/ktrs/ttinfoDataInput.ktr | ||
| 34 | +# 时刻表明细信息导入(元数据) | ||
| 35 | +datatools.ttinfodetail_metadatainputktr=/datatools/ktrs/ttinfodetailDataInputMetaData.ktr | ||
| 36 | +# 时刻表明细编辑用数据 | ||
| 37 | +datatools.ttinfodetail_foreditktr=/datatools/ktrs/ttinfodetailoutputforedit.ktr | ||
| 38 | +# 时刻表明细信息导入 | ||
| 39 | +datatools.ttinfodetail_datainputktr=/datatools/ktrs/ttinfodetailDataInput.ktr | ||
| 40 | +# 时刻表明细信息导入2 | ||
| 41 | +datatools.ttinfodetail_datainputktr2=/datatools/ktrs/ttinfodetailDataInput2.ktr | ||
| 42 | + | ||
| 43 | +# 车辆配置信息导入 | ||
| 44 | +datatools.carsconfig_datainputktr=/datatools/ktrs/carsConfigDataInput.ktr | ||
| 45 | +# 人员配置信息导入 | ||
| 46 | +datatools.employeesconfig_datainputktr=/datatools/ktrs/employeesConfigDataInput.ktr | ||
| 47 | + | ||
| 48 | +# 排版规则信息导入 | ||
| 49 | +datatools.schedulerule_datainputktr=/datatools/ktrs/scheduleRuleDataInput.ktr | ||
| 50 | + | ||
| 51 | +# 4、数据导出配置信息 | ||
| 52 | +# 导出数据文件目录配置(根据不同的环境需要修正) | ||
| 53 | +datatools.fileoutput_dir=/Users/xu/resource/project_code/runtime_temp/bsth_control_u_d_files | ||
| 54 | + | ||
| 55 | +##---------------------------- 导出数据ktr -----------------------------## | ||
| 56 | +# 车辆信息导出ktr转换 | ||
| 57 | +datatools.cars_dataoutputktr=/datatools/ktrs/carsDataOutput.ktr | ||
| 58 | +# 人员信息导出ktr转换 | ||
| 59 | +datatools.employees_dataoutputktr=/datatools/ktrs/employeesDataOutput.ktr | ||
| 60 | +# 时刻表导出元数据ktr转换 | ||
| 61 | +datatools.ttinfodetail_metaoutput=/datatools/ktrs/ttinfodetailDataOutputMetaData.ktr | ||
| 62 | +# 时刻表导出数据ktr转换 | ||
| 63 | +datatools.ttinfodetail_output=/datatools/ktrs/ttinfodetailDataOutput.ktr | ||
| 64 | +# 排版规则导出数据ktr转换 | ||
| 65 | +datatools.schedulerule_output=/datatools/ktrs/scheduleRuleDataOutput.ktr | ||
| 66 | + | ||
| 67 | +# 车辆配置信息导出ktr转换 | ||
| 68 | +datatools.carsconfig_dataoutputktr=/datatools/ktrs/carsConfigDataOutput.ktr | ||
| 69 | +# 人员配置信息导出ktr转换 | ||
| 70 | +datatools.employeesconfig_dataoutputktr=/datatools/ktrs/employeesConfigDataOutput.ktr | ||
| 71 | + | ||
| 72 | +# 路牌信息导出 | ||
| 73 | +datatools.guideboards_dataoutputktr=/datatools/ktrs/guideboardDataOutput.ktr | ||
| 74 | + | ||
| 75 | + | ||
| 76 | +# TODO: | ||
| 77 | + | ||
| 78 | + | ||
| 79 | + | ||
| 80 | + | ||
| 81 | + | ||
| 82 | + | ||
| 83 | + | ||
| 84 | + |
src/test/resources/test.properties deleted
100644 → 0
src/test/resources/testdata/d1.xml
0 → 100644