Commit 58c1cc4cbfe1aedadd0ddb38969140b3a9cdbf4f

Authored by 娄高锋
1 parent 5449a8cd

油车日报表,电车日报表,统一表头,删除车辆查询项,线路查询改成多选

src/main/java/com/bsth/repository/RefuelRepository.java
@@ -38,7 +38,7 @@ public interface RefuelRepository extends BaseRepository<Refuel, Long> { @@ -38,7 +38,7 @@ public interface RefuelRepository extends BaseRepository<Refuel, Long> {
38 List<ScheduleRealInfo> scheduleByDateAndLine(String date, String clZbh, String xlBm); 38 List<ScheduleRealInfo> scheduleByDateAndLine(String date, String clZbh, String xlBm);
39 39
40 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH) 40 @EntityGraph(value = "scheduleRealInfo_cTasks", type = EntityGraph.EntityGraphType.FETCH)
41 - @Query(value="select DISTINCT s from ScheduleRealInfo s where s.scheduleDateStr = ?1 and s.clZbh = ?2") 41 + @Query(value="select DISTINCT s from ScheduleRealInfo s where s.scheduleDateStr = ?1 and s.clZbh like ?2 order by s.xlBm asc, s.clZbh asc")
42 List<ScheduleRealInfo> scheduleByDateAndCar(String date, String clZbh); 42 List<ScheduleRealInfo> scheduleByDateAndCar(String date, String clZbh);
43 43
44 @Transactional 44 @Transactional
@@ -61,7 +61,7 @@ public interface RefuelRepository extends BaseRepository&lt;Refuel, Long&gt; { @@ -61,7 +61,7 @@ public interface RefuelRepository extends BaseRepository&lt;Refuel, Long&gt; {
61 @Query(value="select s from Cars s where s.insideCode=?1") 61 @Query(value="select s from Cars s where s.insideCode=?1")
62 List<Cars> findCarsByCode(String insideCode); 62 List<Cars> findCarsByCode(String insideCode);
63 63
64 - @Query(value="select s from Cars s where s.sfdc=?1 and insideCode like ?2 order by s.insideCode asc")  
65 - List<Cars> findCarsBySfdc(Boolean sfdc, String insideCode); 64 + @Query(value="select s from Cars s where s.sfdc=?1")
  65 + List<Cars> findCarsBySfdc(Boolean sfdc);
66 66
67 } 67 }
src/main/java/com/bsth/service/impl/RefuelServiceImpl.java
@@ -23,6 +23,7 @@ import java.text.SimpleDateFormat; @@ -23,6 +23,7 @@ import java.text.SimpleDateFormat;
23 import java.util.ArrayList; 23 import java.util.ArrayList;
24 import java.util.Date; 24 import java.util.Date;
25 import java.util.HashMap; 25 import java.util.HashMap;
  26 +import java.util.HashSet;
26 import java.util.Iterator; 27 import java.util.Iterator;
27 import java.util.List; 28 import java.util.List;
28 import java.util.Map; 29 import java.util.Map;
@@ -263,22 +264,39 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -263,22 +264,39 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
263 Map<String, Object> lastMap = new HashMap<String, Object>(); 264 Map<String, Object> lastMap = new HashMap<String, Object>();
264 String outOil_z = "0", inOil_z = "0", inStation0_z = "0", inStation5_z = "0", 265 String outOil_z = "0", inOil_z = "0", inStation0_z = "0", inStation5_z = "0",
265 oilCard0_z = "0", oilCard10_z = "0", eastStation0_z = "0", eastStation10_z = "0", 266 oilCard0_z = "0", oilCard10_z = "0", eastStation0_z = "0", eastStation10_z = "0",
266 - outStation0_z = "0", outStation10_z = "0", oil_z = "0", ty_z = "0", yw_z = "0", cj_z = "0", 267 + outStation0_z = "0", outStation10_z = "0", oil_z = "0", addOil_z = "0",
  268 + ty_z = "0", yw_z = "0", cj_z = "0",
267 realMileage_z = "0", ksMileage_z = "0", ssMileage_z = "0", consume_z = "", 269 realMileage_z = "0", ksMileage_z = "0", ssMileage_z = "0", consume_z = "",
268 jhbc_z = "0", sjbc_z = "0", bc_z = "0", cr_z = "0"; 270 jhbc_z = "0", sjbc_z = "0", bc_z = "0", cr_z = "0";
269 271
270 List<String> sKeyList = new ArrayList<String>(); 272 List<String> sKeyList = new ArrayList<String>();
271 Map<String, List<ScheduleRealInfo>> sMap = new HashMap<String, List<ScheduleRealInfo>>(); 273 Map<String, List<ScheduleRealInfo>> sMap = new HashMap<String, List<ScheduleRealInfo>>();
272 - List<ScheduleRealInfo> scheList = repository.scheduleByDateAndLine(date, car, xlbm); 274 + List<ScheduleRealInfo> scheList = new ArrayList<ScheduleRealInfo>();
  275 + if(xlbm.length() > 0){
  276 + String[] split = xlbm.split(",");
  277 + for(String s : split){
  278 + scheList.addAll(repository.scheduleByDateAndLine(date, car, s));
  279 + }
  280 + } else {
  281 + scheList = repository.scheduleByDateAndCar(date, car);
  282 + }
  283 + List<Cars> findCarsBySfdc = repository.findCarsBySfdc(false);
  284 +
  285 + Set<String> nbbms = new HashSet<String>();
  286 + for(Cars c : findCarsBySfdc){ //所有油车
  287 + nbbms.add(c.getInsideCode());
  288 + }
273 289
274 for(ScheduleRealInfo s : scheList){ 290 for(ScheduleRealInfo s : scheList){
275 - if(s.getClZbh() != null && s.getClZbh().length() > 0 && s.getjGh() != null){  
276 - String key = s.getClZbh() + "/" + s.getjGh();  
277 - if(!(sMap.containsKey(key))){  
278 - sMap.put(key, new ArrayList<ScheduleRealInfo>());  
279 - sKeyList.add(key); 291 + if(s.getClZbh() != null && nbbms.contains(s.getClZbh())){
  292 + if(s.getClZbh().length() > 0 && s.getjGh() != null){
  293 + String key = s.getClZbh() + "/" + s.getjGh();
  294 + if(!(sMap.containsKey(key))){
  295 + sMap.put(key, new ArrayList<ScheduleRealInfo>());
  296 + sKeyList.add(key);
  297 + }
  298 + sMap.get(key).add(s);
280 } 299 }
281 - sMap.get(key).add(s);  
282 } 300 }
283 } 301 }
284 302
@@ -287,7 +305,7 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -287,7 +305,7 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
287 List<ScheduleRealInfo> list2 = sMap.get(key); 305 List<ScheduleRealInfo> list2 = sMap.get(key);
288 String[] split = key.split("/"); 306 String[] split = key.split("/");
289 307
290 - String realMileage = "", oil = "0", consume = "", cr = ""; 308 + String realMileage = "", oil = "0", addOil = "0", consume = "", cr = "";
291 String ksMileage = "", ssMileage = "", bc = "", jhbc = "", sjbc = ""; 309 String ksMileage = "", ssMileage = "", bc = "", jhbc = "", sjbc = "";
292 310
293 Double sjgl = culateMileageService.culateSjgl(list2); 311 Double sjgl = culateMileageService.culateSjgl(list2);
@@ -399,39 +417,47 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -399,39 +417,47 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
399 } 417 }
400 if(r.getInStation0() != null && r.getInStation0().length() > 0){ 418 if(r.getInStation0() != null && r.getInStation0().length() > 0){
401 oil = add(oil, r.getInStation0()); 419 oil = add(oil, r.getInStation0());
  420 + addOil = add(addOil, r.getInStation0());
402 } 421 }
403 if(r.getInStation5() != null && r.getInStation5().length() > 0){ 422 if(r.getInStation5() != null && r.getInStation5().length() > 0){
404 oil = add(oil, r.getInStation5()); 423 oil = add(oil, r.getInStation5());
  424 + addOil = add(addOil, r.getInStation5());
405 } 425 }
406 if(r.getOilCard0() != null && r.getOilCard0().length() > 0){ 426 if(r.getOilCard0() != null && r.getOilCard0().length() > 0){
407 oil = add(oil, r.getOilCard0()); 427 oil = add(oil, r.getOilCard0());
  428 + addOil = add(addOil, r.getOilCard0());
408 } 429 }
409 if(r.getOilCard10() != null && r.getOilCard10().length() > 0){ 430 if(r.getOilCard10() != null && r.getOilCard10().length() > 0){
410 oil = add(oil, r.getOilCard10()); 431 oil = add(oil, r.getOilCard10());
  432 + addOil = add(addOil, r.getOilCard10());
411 } 433 }
412 if(r.getEastStation0() != null && r.getEastStation0().length() > 0){ 434 if(r.getEastStation0() != null && r.getEastStation0().length() > 0){
413 oil = add(oil, r.getEastStation0()); 435 oil = add(oil, r.getEastStation0());
  436 + addOil = add(addOil, r.getEastStation0());
414 } 437 }
415 if(r.getEastStation10() != null && r.getEastStation10().length() > 0){ 438 if(r.getEastStation10() != null && r.getEastStation10().length() > 0){
416 oil = add(oil, r.getEastStation10()); 439 oil = add(oil, r.getEastStation10());
  440 + addOil = add(addOil, r.getEastStation10());
417 } 441 }
418 if(r.getOutStation0() != null && r.getOutStation0().length() > 0){ 442 if(r.getOutStation0() != null && r.getOutStation0().length() > 0){
419 oil = add(oil, r.getOutStation0()); 443 oil = add(oil, r.getOutStation0());
  444 + addOil = add(addOil, r.getOutStation0());
420 } 445 }
421 if(r.getOutStation10() != null && r.getOutStation10().length() > 0){ 446 if(r.getOutStation10() != null && r.getOutStation10().length() > 0){
422 oil = add(oil, r.getOutStation10()); 447 oil = add(oil, r.getOutStation10());
  448 + addOil = add(addOil, r.getOutStation10());
423 } 449 }
424 450
425 if(realMileage.length() > 0 && oil.length() > 0 && new BigDecimal(realMileage).doubleValue() > 0d){ 451 if(realMileage.length() > 0 && oil.length() > 0 && new BigDecimal(realMileage).doubleValue() > 0d){
426 consume = df.format(new BigDecimal(oil).divide(new BigDecimal(realMileage), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100))); 452 consume = df.format(new BigDecimal(oil).divide(new BigDecimal(realMileage), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)));
427 } 453 }
428 454
429 - m.put("date", scheList.get(0).getScheduleDateStr());  
430 - m.put("line", scheList.get(0).getXlName()); 455 + m.put("date", list2.get(0).getScheduleDateStr());
  456 + m.put("line", list2.get(0).getXlName());
431 m.put("car", split[0]); 457 m.put("car", split[0]);
432 m.put("driver", split[1]); 458 m.put("driver", split[1]);
433 - m.put("outOil", r.getOutOil());  
434 - m.put("inOil", r.getInOil()); 459 + m.put("outOil", r.getOutOil()!=null?r.getOutOil():"");
  460 + m.put("inOil", r.getInOil()!=null?r.getInOil():"");
435 m.put("inStation0", r.getInStation0()); 461 m.put("inStation0", r.getInStation0());
436 m.put("inStation5", r.getInStation5()); 462 m.put("inStation5", r.getInStation5());
437 m.put("oilCard0", r.getOilCard0()); 463 m.put("oilCard0", r.getOilCard0());
@@ -440,6 +466,7 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -440,6 +466,7 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
440 m.put("eastStation10", r.getEastStation10()); 466 m.put("eastStation10", r.getEastStation10());
441 m.put("outStation0", r.getOutStation0()); 467 m.put("outStation0", r.getOutStation0());
442 m.put("outStation10", r.getOutStation10()); 468 m.put("outStation10", r.getOutStation10());
  469 + m.put("addOil", addOil);
443 m.put("oil", oil); 470 m.put("oil", oil);
444 m.put("realMileage", realMileage); 471 m.put("realMileage", realMileage);
445 m.put("ksMileage", ksMileage); 472 m.put("ksMileage", ksMileage);
@@ -487,9 +514,14 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -487,9 +514,14 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
487 outStation10_z = new BigDecimal(outStation10_z).add(new BigDecimal(r.getOutStation10())).toString(); 514 outStation10_z = new BigDecimal(outStation10_z).add(new BigDecimal(r.getOutStation10())).toString();
488 } 515 }
489 oil_z = new BigDecimal(oil_z).add(new BigDecimal(oil)).toString(); 516 oil_z = new BigDecimal(oil_z).add(new BigDecimal(oil)).toString();
  517 + addOil_z = new BigDecimal(addOil_z).add(new BigDecimal(addOil)).toString();
490 518
491 } 519 }
492 520
  521 + if(realMileage_z.length() > 0 && oil_z.length() > 0 && !("0".equals(realMileage_z))){
  522 + consume_z = df.format(new BigDecimal(oil_z).divide(new BigDecimal(realMileage_z), 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)));
  523 + }
  524 +
493 lastMap.put("date", "合计"); 525 lastMap.put("date", "合计");
494 lastMap.put("line", ""); 526 lastMap.put("line", "");
495 lastMap.put("car", ""); 527 lastMap.put("car", "");
@@ -504,6 +536,7 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -504,6 +536,7 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
504 lastMap.put("eastStation10", eastStation10_z); 536 lastMap.put("eastStation10", eastStation10_z);
505 lastMap.put("outStation0", outStation0_z); 537 lastMap.put("outStation0", outStation0_z);
506 lastMap.put("outStation10", outStation10_z); 538 lastMap.put("outStation10", outStation10_z);
  539 + lastMap.put("addOil", addOil_z);
507 lastMap.put("oil", oil_z); 540 lastMap.put("oil", oil_z);
508 lastMap.put("realMileage", realMileage_z); 541 lastMap.put("realMileage", realMileage_z);
509 lastMap.put("ksMileage", ksMileage_z); 542 lastMap.put("ksMileage", ksMileage_z);
@@ -568,16 +601,33 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -568,16 +601,33 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
568 601
569 List<String> sKeyList = new ArrayList<String>(); 602 List<String> sKeyList = new ArrayList<String>();
570 Map<String, List<ScheduleRealInfo>> sMap = new HashMap<String, List<ScheduleRealInfo>>(); 603 Map<String, List<ScheduleRealInfo>> sMap = new HashMap<String, List<ScheduleRealInfo>>();
571 - List<ScheduleRealInfo> scheList = repository.scheduleByDateAndLine(date, car, xlbm); 604 + List<ScheduleRealInfo> scheList = new ArrayList<ScheduleRealInfo>();
  605 + if(xlbm.length() > 0){
  606 + String[] split = xlbm.split(",");
  607 + System.out.println(split);
  608 + for(String s : split){
  609 + scheList.addAll(repository.scheduleByDateAndLine(date, car, s));
  610 + }
  611 + } else {
  612 + scheList = repository.scheduleByDateAndCar(date, car);
  613 + }
  614 + List<Cars> findCarsBySfdc = repository.findCarsBySfdc(true);
  615 +
  616 + Set<String> nbbms = new HashSet<String>();
  617 + for(Cars c : findCarsBySfdc){ //所有电车
  618 + nbbms.add(c.getInsideCode());
  619 + }
572 620
573 for(ScheduleRealInfo s : scheList){ 621 for(ScheduleRealInfo s : scheList){
574 - if(s.getClZbh() != null && s.getClZbh().length() > 0 && s.getjGh() != null){  
575 - String key = s.getClZbh() + "/" + s.getjGh();  
576 - if(!(sMap.containsKey(key))){  
577 - sMap.put(key, new ArrayList<ScheduleRealInfo>());  
578 - sKeyList.add(key); 622 + if(s.getClZbh() != null && nbbms.contains(s.getClZbh())){
  623 + if(s.getClZbh().length() > 0 && s.getjGh() != null){
  624 + String key = s.getClZbh() + "/" + s.getjGh();
  625 + if(!(sMap.containsKey(key))){
  626 + sMap.put(key, new ArrayList<ScheduleRealInfo>());
  627 + sKeyList.add(key);
  628 + }
  629 + sMap.get(key).add(s);
579 } 630 }
580 - sMap.get(key).add(s);  
581 } 631 }
582 } 632 }
583 633
@@ -613,9 +663,11 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -613,9 +663,11 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
613 cr_z = new BigDecimal(cr_z).add(new BigDecimal(cr)).toString(); 663 cr_z = new BigDecimal(cr_z).add(new BigDecimal(cr)).toString();
614 664
615 m.put("date", scheList.get(0).getScheduleDateStr()); 665 m.put("date", scheList.get(0).getScheduleDateStr());
616 - m.put("line", scheList.get(0).getXlName()); 666 + m.put("line", list2.get(0).getXlName());
617 m.put("car", split[0]); 667 m.put("car", split[0]);
618 m.put("driver", split[1]); 668 m.put("driver", split[1]);
  669 + m.put("out", "");
  670 + m.put("in", "");
619 m.put("jdl", ""); 671 m.put("jdl", "");
620 m.put("hdl", ""); 672 m.put("hdl", "");
621 m.put("realMileage", realMileage); 673 m.put("realMileage", realMileage);
@@ -635,6 +687,8 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements @@ -635,6 +687,8 @@ public class RefuelServiceImpl extends BaseServiceImpl&lt;Refuel, Long&gt; implements
635 lastMap.put("line", ""); 687 lastMap.put("line", "");
636 lastMap.put("car", ""); 688 lastMap.put("car", "");
637 lastMap.put("driver", ""); 689 lastMap.put("driver", "");
  690 + lastMap.put("out", "");
  691 + lastMap.put("in", "");
638 lastMap.put("jdl", ""); 692 lastMap.put("jdl", "");
639 lastMap.put("hdl", ""); 693 lastMap.put("hdl", "");
640 lastMap.put("realMileage", realMileage_z); 694 lastMap.put("realMileage", realMileage_z);
src/main/resources/static/pages/forms/mould/refuelDc.xls
No preview for this file type
src/main/resources/static/pages/forms/mould/refuelYc.xls
No preview for this file type
src/main/resources/static/pages/forms/statement/refuelDc.html
1 -<style type="text/css">  
2 - .table-bordered {  
3 - border: 1px solid; }  
4 - .table-bordered > thead > tr > th,  
5 - .table-bordered > thead > tr > td,  
6 - .table-bordered > tbody > tr > th,  
7 - .table-bordered > tbody > tr > td,  
8 - .table-bordered > tfoot > tr > th,  
9 - .table-bordered > tfoot > tr > td {  
10 - border: 1px solid; }  
11 - .table-bordered > thead > tr > th,  
12 - .table-bordered > thead > tr > td {  
13 - border-bottom-width: 2px; }  
14 -  
15 - .table > tbody + tbody {  
16 - border-top: 1px solid; }  
17 - .btn-default{  
18 - margin-left: 5px;  
19 - }  
20 -</style>  
21 -  
22 -<div class="page-head">  
23 - <div class="page-title">  
24 - <h1>纯电车日报表</h1>  
25 - </div>  
26 -</div>  
27 -  
28 -<div class="row">  
29 - <div class="col-md-12">  
30 - <div class="portlet light porttlet-fit bordered">  
31 - <div class="portlet-title">  
32 - <form class="form-inline" action="">  
33 - <div style="display: inline-block;">  
34 - <span class="item-label" style="width: 80px;">线路: </span>  
35 - <select class="form-control" name="line" id="line" style="width: 180px;"></select>  
36 - </div>  
37 - <div style="display: inline-block;margin-left: 15px">  
38 - <span class="item-label" style="width: 140px;">内部编码: </span>  
39 - <select class="form-control" name="code" id="code" style="width: 180px;"></select>  
40 - <input class="btn btn-default" type="button" id="czcl" value="X"/>  
41 - </div>  
42 - <div style="display: inline-block;margin-left: 24px;">  
43 - <span class="item-label" style="width: 80px;">&nbsp;日期: </span>  
44 - <input class="form-control" type="text" id="date" style="width: 180px;"/>  
45 - </div>  
46 - <div class="form-group">  
47 - <input class="btn btn-default" type="button" id="query" value="筛选"/>  
48 - <input class="btn btn-default" type="button" id="export" value="导出"/>  
49 - </div>  
50 - </form>  
51 - </div>  
52 - <div class="portlet-body">  
53 - <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px">  
54 - <table class="table table-bordered table-hover table-checkable" id="forms">  
55 - <thead>  
56 - <tr>  
57 - <td>序号</td>  
58 - <td>日期</td>  
59 - <td>路别</td>  
60 - <td>车号</td>  
61 - <td>驾驶员</td>  
62 - <td>充电量</td>  
63 - <td>电量消耗</td>  
64 - <td>路单公里</td>  
65 - <td>空驶公里</td>  
66 - <td>损失公里</td>  
67 - <td>班次</td>  
68 - <td>车日</td>  
69 - <td>备注</td>  
70 - </tr>  
71 - </thead>  
72 - <tbody id="tbody">  
73 -  
74 - </tbody>  
75 - </table>  
76 - </div>  
77 - </div>  
78 - </div>  
79 - </div>  
80 -</div>  
81 -  
82 -<script>  
83 - $(function(){  
84 -  
85 - // 关闭左侧栏  
86 - if (!$('body').hasClass('page-sidebar-closed'))  
87 - $('.menu-toggler.sidebar-toggler').click();  
88 -  
89 - $("#date").datetimepicker({  
90 - format : 'YYYY-MM-DD',  
91 - locale : 'zh-cn'  
92 - });  
93 -  
94 - $.get('/report/lineList',function(xlList){  
95 - var data = [];  
96 -// data.push({id: " ", text: "全部线路"});  
97 - $.get('/user/companyData', function(result){  
98 - for(var i = 0; i < result.length; i++){  
99 - var companyCode = result[i].companyCode;  
100 - var children = result[i].children;  
101 - for(var j = 0; j < children.length; j++){  
102 - var code = children[j].code;  
103 - for(var k=0;k < xlList.length;k++ ){  
104 - if(xlList[k]["fgsbm"]==code && xlList[k]["gsbm"]==companyCode){  
105 - data.push({id: xlList[k]["xlbm"], text: xlList[k]["xlname"]});  
106 -// tempData[xlList[k]["xlbm"]] = companyCode+":"+code;  
107 - }  
108 - }  
109 - }  
110 - }  
111 - initPinYinSelect2('#line',data,'');  
112 - initCl();  
113 - });  
114 - });  
115 - //重置  
116 - $('#czcl').on('click', function () {  
117 - $('#code').val('').change();  
118 - });  
119 - $("#line").on("change",initCl);  
120 - function initCl(){  
121 - $('#code').select2({  
122 - ajax: {  
123 - url: '/report/carList',  
124 - dataType: 'json',  
125 - delay: 150,  
126 - data: function(params){  
127 - return{nbbm: params.term,xlbm:$('#line').val()};  
128 - },  
129 - processResults: function (data) {  
130 - return {  
131 - results: data  
132 - };  
133 - },  
134 - cache: true  
135 - },  
136 - templateResult: function(repo){  
137 - if (repo.loading) return repo.text;  
138 - var h = '<span>'+repo.text+'</span>';  
139 - h += (repo.lineName?'&nbsp;<span class="select2-desc">'+repo.lineName+'</span>':'');  
140 - return h;  
141 - },  
142 - escapeMarkup: function (markup) { return markup; },  
143 - minimumInputLength: 1,  
144 - templateSelection: function(repo){  
145 - return repo.text;  
146 - },  
147 - language: {  
148 - noResults: function(){  
149 - return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';  
150 - },  
151 - inputTooShort : function(e) {  
152 - return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';  
153 - },  
154 - searching : function() {  
155 - return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';  
156 - }  
157 - }  
158 - });  
159 - }  
160 -  
161 -  
162 - var d = new Date();  
163 - var year = d.getFullYear();  
164 - var mon = (d.getMonth()+1)>9?(d.getMonth()+1):("0"+(d.getMonth()+1));  
165 - var day = d.getDate()>9?d.getDate():("0"+d.getDate());  
166 - $("#date").val(year + "-" + mon + "-" + day);  
167 -  
168 -  
169 - var line = "", date = "", car = "";  
170 - $("#query").on("click",function(){  
171 - if($("#date").val() == null || $("#date").val().trim().length == 0){  
172 - layer.msg("请选择日期");  
173 - return;  
174 - }  
175 - line = $("#line").val();  
176 - date = $("#date").val();  
177 - car = $("#code").val();  
178 - var i = layer.load(2);  
179 - $get('/refuel/queryDc',{line:line,date:date,car:car,type:'query'},function(result){  
180 - // 把数据填充到模版中  
181 - var tbodyHtml = template('refuel_daily',{list:result});  
182 - // 把渲染好的模版html文本追加到表格中  
183 - $('#tbody').html(tbodyHtml);  
184 - layer.close(i);  
185 - });  
186 - });  
187 -  
188 - $("#export").on("click",function(){  
189 - if(date && date != ""){  
190 - var i = layer.load(2);  
191 - var params = {};  
192 - params['line'] = line;  
193 - params['date'] = date;  
194 - params['car'] = car;  
195 - $get('/refuel/exportQueryDc', params, function(result){  
196 - layer.close(i);  
197 - window.open("/downloadFile/download?fileName="  
198 - +date+"-纯电车日报表");  
199 - layer.close(i);  
200 - });  
201 - }  
202 - });  
203 -  
204 -});  
205 -</script>  
206 -<script type="text/html" id="refuel_daily">  
207 - {{each list as obj i}}  
208 - <tr>  
209 - <td>{{i + 1}}</td>  
210 - <td>{{obj.date}}</td>  
211 - <td>{{obj.line}}</td>  
212 - <td>{{obj.car}}</td>  
213 - <td>{{obj.driver}}</td>  
214 - <td>{{obj.jdl}}</td>  
215 - <td>{{obj.hdl}}</td>  
216 - <td>{{obj.realMileage}}</td>  
217 - <td>{{obj.ksMileage}}</td>  
218 - <td>{{obj.ssMileage}}</td>  
219 - <td>{{obj.bc}}</td>  
220 - <td>{{obj.cr}}</td>  
221 - <td>{{obj.remark}}</td>  
222 - </tr>  
223 - {{/each}}  
224 - {{if list.length == 0}}  
225 - <tr>  
226 - <td colspan="13"><h6 class="muted">没有找到相关数据</h6></td>  
227 - </tr>  
228 - {{/if}} 1 +<style type="text/css">
  2 + .table-bordered {
  3 + border: 1px solid; }
  4 + .table-bordered > thead > tr > th,
  5 + .table-bordered > thead > tr > td,
  6 + .table-bordered > tbody > tr > th,
  7 + .table-bordered > tbody > tr > td,
  8 + .table-bordered > tfoot > tr > th,
  9 + .table-bordered > tfoot > tr > td {
  10 + border: 1px solid; }
  11 + .table-bordered > thead > tr > th,
  12 + .table-bordered > thead > tr > td {
  13 + border-bottom-width: 2px; }
  14 +
  15 + .table > tbody + tbody {
  16 + border-top: 1px solid; }
  17 + .btn-default{
  18 + margin-left: 5px;
  19 + }
  20 +</style>
  21 +
  22 +<div class="page-head">
  23 + <div class="page-title">
  24 + <h1>纯电车日报表</h1>
  25 + </div>
  26 +</div>
  27 +
  28 +<div class="row">
  29 + <div class="col-md-12">
  30 + <div class="portlet light porttlet-fit bordered">
  31 + <div class="portlet-title">
  32 + <form class="form-inline" action="">
  33 + <div style="display: inline-block;margin-left: 24px;">
  34 + <span class="item-label" style="width: 80px;">&nbsp;日期: </span>
  35 + <input class="form-control" type="text" id="date" style="width: 180px;"/>
  36 + </div>
  37 + <div style="display: inline-block;">
  38 + <span class="item-label" style="width: 80px;">线路: </span>
  39 + <select class="form-control" name="line" id="line" style="width: 180px;" multiple="multiple"></select>
  40 + </div>
  41 + <div class="form-group">
  42 + <input class="btn btn-default" type="button" id="query" value="筛选"/>
  43 + <input class="btn btn-default" type="button" id="export" value="导出"/>
  44 + </div>
  45 + </form>
  46 + </div>
  47 + <div class="portlet-body">
  48 + <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px">
  49 + <table class="table table-bordered table-hover table-checkable" id="forms">
  50 + <thead>
  51 + <tr>
  52 + <td>序号</td>
  53 + <td>日期</td>
  54 + <td>路别</td>
  55 + <td>车号</td>
  56 + <td>驾驶员</td>
  57 + <td>出场电容</td>
  58 + <td>进场电容</td>
  59 + <td>当日充电量</td>
  60 + <td>电量消耗</td>
  61 + <td>百公里电耗</td>
  62 + <td>路单公里</td>
  63 + <td>空驶公里</td>
  64 + <td>损失公里</td>
  65 + <td>班次</td>
  66 + <td>车日</td>
  67 + <td>备注</td>
  68 + </tr>
  69 + </thead>
  70 + <tbody id="tbody">
  71 +
  72 + </tbody>
  73 + </table>
  74 + </div>
  75 + </div>
  76 + </div>
  77 + </div>
  78 +</div>
  79 +
  80 +<script>
  81 + $(function(){
  82 +
  83 + // 关闭左侧栏
  84 + if (!$('body').hasClass('page-sidebar-closed'))
  85 + $('.menu-toggler.sidebar-toggler').click();
  86 +
  87 + var d = new Date();
  88 + d.setTime(d.getTime() - 1*1000*60*60*24);
  89 + var year = d.getFullYear();
  90 + var month = d.getMonth() + 1;
  91 + var day = d.getDate();
  92 + if(month < 10)
  93 + month = "0" + month;
  94 + if(day < 10)
  95 + day = "0" + day;
  96 + var dateTime = year + "-" + month + "-" + day;
  97 + $("#date").datetimepicker({
  98 + format : 'YYYY-MM-DD',
  99 + locale : 'zh-cn'
  100 + });
  101 + $("#date").val(dateTime);
  102 +
  103 + $.get('/report/lineList',function(xlList){
  104 + var data = [];
  105 +// data.push({id: " ", text: "全部线路"});
  106 + $.get('/user/companyData', function(result){
  107 + for(var i = 0; i < result.length; i++){
  108 + var companyCode = result[i].companyCode;
  109 + var children = result[i].children;
  110 + for(var j = 0; j < children.length; j++){
  111 + var code = children[j].code;
  112 + for(var k=0;k < xlList.length;k++ ){
  113 + if(xlList[k]["fgsbm"]==code && xlList[k]["gsbm"]==companyCode){
  114 + data.push({id: xlList[k]["xlbm"], text: xlList[k]["xlname"]});
  115 +// tempData[xlList[k]["xlbm"]] = companyCode+":"+code;
  116 + }
  117 + }
  118 + }
  119 + }
  120 + initPinYinSelect2('#line',data,'');
  121 + initCl();
  122 + });
  123 + });
  124 + //重置
  125 + $('#czcl').on('click', function () {
  126 + $('#code').val('').change();
  127 + });
  128 + $("#line").on("change",initCl);
  129 + function initCl(){
  130 + $('#code').select2({
  131 + ajax: {
  132 + url: '/report/carList',
  133 + dataType: 'json',
  134 + delay: 150,
  135 + data: function(params){
  136 + return{nbbm: params.term,xlbm:$('#line').val()};
  137 + },
  138 + processResults: function (data) {
  139 + return {
  140 + results: data
  141 + };
  142 + },
  143 + cache: true
  144 + },
  145 + templateResult: function(repo){
  146 + if (repo.loading) return repo.text;
  147 + var h = '<span>'+repo.text+'</span>';
  148 + h += (repo.lineName?'&nbsp;<span class="select2-desc">'+repo.lineName+'</span>':'');
  149 + return h;
  150 + },
  151 + escapeMarkup: function (markup) { return markup; },
  152 + minimumInputLength: 1,
  153 + templateSelection: function(repo){
  154 + return repo.text;
  155 + },
  156 + language: {
  157 + noResults: function(){
  158 + return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
  159 + },
  160 + inputTooShort : function(e) {
  161 + return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
  162 + },
  163 + searching : function() {
  164 + return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
  165 + }
  166 + }
  167 + });
  168 + }
  169 +
  170 +
  171 + var line = "", date = "", car = "";
  172 + $("#query").on("click",function(){
  173 + if($("#date").val() == null || $("#date").val().trim().length == 0){
  174 + layer.msg("请选择日期");
  175 + return;
  176 + }
  177 + line = "";
  178 + $($("#line").val()).each(function(i, e){
  179 + line += e + ",";
  180 + });
  181 + if(line.length > 0){
  182 + line = line.substring(0, line.length - 1);
  183 + }
  184 + date = $("#date").val();
  185 + car = $("#code").val();
  186 + var i = layer.load(2);
  187 + $get('/refuel/queryDc',{line:line,date:date,car:car,type:'query'},function(result){
  188 + // 把数据填充到模版中
  189 + var tbodyHtml = template('refuel_dc',{list:result});
  190 + // 把渲染好的模版html文本追加到表格中
  191 + $('#tbody').html(tbodyHtml);
  192 + layer.close(i);
  193 + });
  194 + });
  195 +
  196 + $("#export").on("click",function(){
  197 + if(date && date != ""){
  198 + var i = layer.load(2);
  199 + var params = {};
  200 + params['line'] = line;
  201 + params['date'] = date;
  202 + params['car'] = car;
  203 + $get('/refuel/exportQueryDc', params, function(result){
  204 + layer.close(i);
  205 + window.open("/downloadFile/download?fileName="
  206 + +date+"-纯电车日报表");
  207 + layer.close(i);
  208 + });
  209 + }
  210 + });
  211 +
  212 +});
  213 +</script>
  214 +<script type="text/html" id="refuel_dc">
  215 + {{each list as obj i}}
  216 + <tr>
  217 + <td>{{i + 1}}</td>
  218 + <td>{{obj.date}}</td>
  219 + <td>{{obj.line}}</td>
  220 + <td>{{obj.car}}</td>
  221 + <td>{{obj.driver}}</td>
  222 + <td></td>
  223 + <td></td>
  224 + <td>{{obj.jdl}}</td>
  225 + <td>{{obj.hdl}}</td>
  226 + <td></td>
  227 + <td>{{obj.realMileage}}</td>
  228 + <td>{{obj.ksMileage}}</td>
  229 + <td>{{obj.ssMileage}}</td>
  230 + <td>{{obj.bc}}</td>
  231 + <td>{{obj.cr}}</td>
  232 + <td>{{obj.remark}}</td>
  233 + </tr>
  234 + {{/each}}
  235 + {{if list.length == 0}}
  236 + <tr>
  237 + <td colspan="16"><h6 class="muted">没有找到相关数据</h6></td>
  238 + </tr>
  239 + {{/if}}
229 </script> 240 </script>
230 \ No newline at end of file 241 \ No newline at end of file
src/main/resources/static/pages/forms/statement/refuelYc.html
1 -<style type="text/css">  
2 - .table-bordered {  
3 - border: 1px solid; }  
4 - .table-bordered > thead > tr > th,  
5 - .table-bordered > thead > tr > td,  
6 - .table-bordered > tbody > tr > th,  
7 - .table-bordered > tbody > tr > td,  
8 - .table-bordered > tfoot > tr > th,  
9 - .table-bordered > tfoot > tr > td {  
10 - border: 1px solid; }  
11 - .table-bordered > thead > tr > th,  
12 - .table-bordered > thead > tr > td {  
13 - border-bottom-width: 2px; }  
14 -  
15 - .table > tbody + tbody {  
16 - border-top: 1px solid; }  
17 - .btn-default{  
18 - margin-left: 5px;  
19 - }  
20 -</style>  
21 -  
22 -<div class="page-head">  
23 - <div class="page-title">  
24 - <h1>燃油车日报表</h1>  
25 - </div>  
26 -</div>  
27 -  
28 -<div class="row">  
29 - <div class="col-md-12">  
30 - <div class="portlet light porttlet-fit bordered">  
31 - <div class="portlet-title">  
32 - <form class="form-inline" action="">  
33 - <div style="display: inline-block;">  
34 - <span class="item-label" style="width: 80px;">线路: </span>  
35 - <select class="form-control" name="line" id="line" style="width: 180px;"></select>  
36 - </div>  
37 - <div style="display: inline-block;margin-left: 15px">  
38 - <span class="item-label" style="width: 140px;">内部编码: </span>  
39 - <select class="form-control" name="code" id="code" style="width: 180px;"></select>  
40 - <input class="btn btn-default" type="button" id="czcl" value="X"/>  
41 - </div>  
42 - <div style="display: inline-block;margin-left: 24px;">  
43 - <span class="item-label" style="width: 80px;">&nbsp;日期: </span>  
44 - <input class="form-control" type="text" id="date" style="width: 180px;"/>  
45 - </div>  
46 - <div class="form-group">  
47 - <input class="btn btn-default" type="button" id="query" value="筛选"/>  
48 - <input class="btn btn-default" type="button" id="export" value="导出"/>  
49 - </div>  
50 - </form>  
51 - </div>  
52 - <div class="portlet-body">  
53 - <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px">  
54 - <table class="table table-bordered table-hover table-checkable" id="forms">  
55 - <thead>  
56 - <tr>  
57 - <td>序号</td>  
58 - <td>日期</td>  
59 - <td>路别</td>  
60 - <td>车号</td>  
61 - <td>驾驶员</td>  
62 - <td>出场</td>  
63 - <td>进场</td>  
64 - <td>场内0号</td>  
65 - <td>场内B5#</td>  
66 - <td>油卡0号</td>  
67 - <td>油卡-10#</td>  
68 - <td>东站0#</td>  
69 - <td>东站-10#</td>  
70 - <td>场外0#</td>  
71 - <td>场外-10#</td>  
72 - <td>实绩油耗</td>  
73 - <td>特约</td>  
74 - <td>业务</td>  
75 - <td>车间</td>  
76 - <td>总公里</td>  
77 - <td>其中空驶</td>  
78 - <td>损失公里</td>  
79 - <td>班次</td>  
80 - <td>车日</td>  
81 - <td>备注</td>  
82 - </tr>  
83 - </thead>  
84 - <tbody id="tbody">  
85 -  
86 - </tbody>  
87 - </table>  
88 - </div>  
89 - </div>  
90 - </div>  
91 - </div>  
92 -</div>  
93 -  
94 -<script>  
95 - $(function(){  
96 -  
97 - // 关闭左侧栏  
98 - if (!$('body').hasClass('page-sidebar-closed'))  
99 - $('.menu-toggler.sidebar-toggler').click();  
100 -  
101 - $("#date").datetimepicker({  
102 - format : 'YYYY-MM-DD',  
103 - locale : 'zh-cn'  
104 - });  
105 -  
106 - $.get('/report/lineList',function(xlList){  
107 - var data = [];  
108 -// data.push({id: " ", text: "全部线路"});  
109 - $.get('/user/companyData', function(result){  
110 - for(var i = 0; i < result.length; i++){  
111 - var companyCode = result[i].companyCode;  
112 - var children = result[i].children;  
113 - for(var j = 0; j < children.length; j++){  
114 - var code = children[j].code;  
115 - for(var k=0;k < xlList.length;k++ ){  
116 - if(xlList[k]["fgsbm"]==code && xlList[k]["gsbm"]==companyCode){  
117 - data.push({id: xlList[k]["xlbm"], text: xlList[k]["xlname"]});  
118 -// tempData[xlList[k]["xlbm"]] = companyCode+":"+code;  
119 - }  
120 - }  
121 - }  
122 - }  
123 - initPinYinSelect2('#line',data,'');  
124 - initCl();  
125 - });  
126 - });  
127 - //重置  
128 - $('#czcl').on('click', function () {  
129 - $('#code').val('').change();  
130 - });  
131 - $("#line").on("change",initCl);  
132 - function initCl(){  
133 - $('#code').select2({  
134 - ajax: {  
135 - url: '/report/carList',  
136 - dataType: 'json',  
137 - delay: 150,  
138 - data: function(params){  
139 - return{nbbm: params.term,xlbm:$('#line').val()};  
140 - },  
141 - processResults: function (data) {  
142 - return {  
143 - results: data  
144 - };  
145 - },  
146 - cache: true  
147 - },  
148 - templateResult: function(repo){  
149 - if (repo.loading) return repo.text;  
150 - var h = '<span>'+repo.text+'</span>';  
151 - h += (repo.lineName?'&nbsp;<span class="select2-desc">'+repo.lineName+'</span>':'');  
152 - return h;  
153 - },  
154 - escapeMarkup: function (markup) { return markup; },  
155 - minimumInputLength: 1,  
156 - templateSelection: function(repo){  
157 - return repo.text;  
158 - },  
159 - language: {  
160 - noResults: function(){  
161 - return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';  
162 - },  
163 - inputTooShort : function(e) {  
164 - return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';  
165 - },  
166 - searching : function() {  
167 - return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';  
168 - }  
169 - }  
170 - });  
171 - }  
172 -  
173 -  
174 - var d = new Date();  
175 - var year = d.getFullYear();  
176 - var mon = (d.getMonth()+1)>9?(d.getMonth()+1):("0"+(d.getMonth()+1));  
177 - var day = d.getDate()>9?d.getDate():("0"+d.getDate());  
178 - $("#date").val(year + "-" + mon + "-" + day);  
179 -  
180 -  
181 - var line = "", date = "", car = "";  
182 - $("#query").on("click",function(){  
183 - if($("#date").val() == null || $("#date").val().trim().length == 0){  
184 - layer.msg("请选择日期");  
185 - return;  
186 - }  
187 - line = $("#line").val();  
188 - date = $("#date").val();  
189 - car = $("#code").val();  
190 - var i = layer.load(2);  
191 - $get('/refuel/queryYc',{line:line,date:date,car:car,type:'query'},function(result){  
192 - // 把数据填充到模版中  
193 - var tbodyHtml = template('refuel_daily',{list:result});  
194 - // 把渲染好的模版html文本追加到表格中  
195 - $('#tbody').html(tbodyHtml);  
196 - layer.close(i);  
197 - });  
198 - });  
199 -  
200 - $("#export").on("click",function(){  
201 - if(date && date != ""){  
202 - var i = layer.load(2);  
203 - var params = {};  
204 - params['line'] = line;  
205 - params['date'] = date;  
206 - params['car'] = car;  
207 - $get('/refuel/exportQueryYc', params, function(result){  
208 - layer.close(i);  
209 - window.open("/downloadFile/download?fileName="  
210 - +date+"-燃油车日报表");  
211 - layer.close(i);  
212 - });  
213 - }  
214 - });  
215 -  
216 -});  
217 -</script>  
218 -<script type="text/html" id="refuel_daily">  
219 - {{each list as obj i}}  
220 - <tr>  
221 - <td>{{i + 1}}</td>  
222 - <td>{{obj.date}}</td>  
223 - <td>{{obj.line}}</td>  
224 - <td>{{obj.car}}</td>  
225 - <td>{{obj.driver}}</td>  
226 - <td>{{obj.outOil}}</td>  
227 - <td>{{obj.inOil}}</td>  
228 - <td>{{obj.inStation0}}</td>  
229 - <td>{{obj.inStation5}}</td>  
230 - <td>{{obj.oilCard0}}</td>  
231 - <td>{{obj.oilCard10}}</td>  
232 - <td>{{obj.eastStation0}}</td>  
233 - <td>{{obj.eastStation10}}</td>  
234 - <td>{{obj.outStation0}}</td>  
235 - <td>{{obj.outStation10}}</td>  
236 - <td>{{obj.oil}}</td>  
237 - <td>{{obj.ty}}</td>  
238 - <td>{{obj.yw}}</td>  
239 - <td>{{obj.cj}}</td>  
240 - <td>{{obj.realMileage}}</td>  
241 - <td>{{obj.ksMileage}}</td>  
242 - <td>{{obj.ssMileage}}</td>  
243 - <td>{{obj.bc}}</td>  
244 - <td>{{obj.cr}}</td>  
245 - <td>{{obj.remark}}</td>  
246 - </tr>  
247 - {{/each}}  
248 - {{if list.length == 0}}  
249 - <tr>  
250 - <td colspan="25"><h6 class="muted">没有找到相关数据</h6></td>  
251 - </tr>  
252 - {{/if}} 1 +<style type="text/css">
  2 + .table-bordered {
  3 + border: 1px solid; }
  4 + .table-bordered > thead > tr > th,
  5 + .table-bordered > thead > tr > td,
  6 + .table-bordered > tbody > tr > th,
  7 + .table-bordered > tbody > tr > td,
  8 + .table-bordered > tfoot > tr > th,
  9 + .table-bordered > tfoot > tr > td {
  10 + border: 1px solid; }
  11 + .table-bordered > thead > tr > th,
  12 + .table-bordered > thead > tr > td {
  13 + border-bottom-width: 2px; }
  14 +
  15 + .table > tbody + tbody {
  16 + border-top: 1px solid; }
  17 + .btn-default{
  18 + margin-left: 5px;
  19 + }
  20 +</style>
  21 +
  22 +<div class="page-head">
  23 + <div class="page-title">
  24 + <h1>燃油车日报表</h1>
  25 + </div>
  26 +</div>
  27 +
  28 +<div class="row">
  29 + <div class="col-md-12">
  30 + <div class="portlet light porttlet-fit bordered">
  31 + <div class="portlet-title">
  32 + <form class="form-inline" action="">
  33 + <div style="display: inline-block;margin-left: 24px;">
  34 + <span class="item-label" style="width: 80px;">&nbsp;日期: </span>
  35 + <input class="form-control" type="text" id="date" style="width: 180px;"/>
  36 + </div>
  37 + <div style="display: inline-block;">
  38 + <span class="item-label" style="width: 80px;">线路: </span>
  39 + <select class="form-control" name="line" id="line" style="width: 180px;" multiple="multiple"></select>
  40 + </div>
  41 + <div class="form-group">
  42 + <input class="btn btn-default" type="button" id="query" value="筛选"/>
  43 + <input class="btn btn-default" type="button" id="export" value="导出"/>
  44 + </div>
  45 + </form>
  46 + </div>
  47 + <div class="portlet-body">
  48 + <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px">
  49 + <table class="table table-bordered table-hover table-checkable" id="forms">
  50 + <thead>
  51 + <tr>
  52 + <td>序号</td>
  53 + <td>日期</td>
  54 + <td>路别</td>
  55 + <td>车号</td>
  56 + <td>驾驶员</td>
  57 + <td>出场油量</td>
  58 + <td>进场油量</td>
  59 + <td>当日加油量</td>
  60 + <td>油量消耗</td>
  61 + <td>百公里油耗</td>
  62 + <td>特约</td>
  63 + <td>业务</td>
  64 + <td>车间</td>
  65 + <td>路单公路</td>
  66 + <td>空驶公里</td>
  67 + <td>损失公里</td>
  68 + <td>班次</td>
  69 + <td>车日</td>
  70 + <td>备注</td>
  71 + </tr>
  72 + </thead>
  73 + <tbody id="tbody">
  74 +
  75 + </tbody>
  76 + </table>
  77 + </div>
  78 + </div>
  79 + </div>
  80 + </div>
  81 +</div>
  82 +
  83 +<script>
  84 + $(function(){
  85 +
  86 + // 关闭左侧栏
  87 + if (!$('body').hasClass('page-sidebar-closed'))
  88 + $('.menu-toggler.sidebar-toggler').click();
  89 +
  90 + var d = new Date();
  91 + d.setTime(d.getTime() - 1*1000*60*60*24);
  92 + var year = d.getFullYear();
  93 + var month = d.getMonth() + 1;
  94 + var day = d.getDate();
  95 + if(month < 10)
  96 + month = "0" + month;
  97 + if(day < 10)
  98 + day = "0" + day;
  99 + var dateTime = year + "-" + month + "-" + day;
  100 + $("#date").datetimepicker({
  101 + format : 'YYYY-MM-DD',
  102 + locale : 'zh-cn'
  103 + });
  104 + $("#date").val(dateTime);
  105 +
  106 +
  107 + $.get('/report/lineList',function(xlList){
  108 + var data = [];
  109 +// data.push({id: " ", text: "全部线路"});
  110 + $.get('/user/companyData', function(result){
  111 + for(var i = 0; i < result.length; i++){
  112 + var companyCode = result[i].companyCode;
  113 + var children = result[i].children;
  114 + for(var j = 0; j < children.length; j++){
  115 + var code = children[j].code;
  116 + for(var k=0;k < xlList.length;k++ ){
  117 + if(xlList[k]["fgsbm"]==code && xlList[k]["gsbm"]==companyCode){
  118 + data.push({id: xlList[k]["xlbm"], text: xlList[k]["xlname"]});
  119 +// tempData[xlList[k]["xlbm"]] = companyCode+":"+code;
  120 + }
  121 + }
  122 + }
  123 + }
  124 + initPinYinSelect2('#line',data,'');
  125 + initCl();
  126 + });
  127 + });
  128 + //重置
  129 + $('#czcl').on('click', function () {
  130 + $('#code').val('').change();
  131 + });
  132 + $("#line").on("change",initCl);
  133 + function initCl(){
  134 + $('#code').select2({
  135 + ajax: {
  136 + url: '/report/carList',
  137 + dataType: 'json',
  138 + delay: 150,
  139 + data: function(params){
  140 + return{nbbm: params.term,xlbm:$('#line').val()};
  141 + },
  142 + processResults: function (data) {
  143 + return {
  144 + results: data
  145 + };
  146 + },
  147 + cache: true
  148 + },
  149 + templateResult: function(repo){
  150 + if (repo.loading) return repo.text;
  151 + var h = '<span>'+repo.text+'</span>';
  152 + h += (repo.lineName?'&nbsp;<span class="select2-desc">'+repo.lineName+'</span>':'');
  153 + return h;
  154 + },
  155 + escapeMarkup: function (markup) { return markup; },
  156 + minimumInputLength: 1,
  157 + templateSelection: function(repo){
  158 + return repo.text;
  159 + },
  160 + language: {
  161 + noResults: function(){
  162 + return '<span style="color:red;font-size: 12px;">没有搜索到车辆!</span>';
  163 + },
  164 + inputTooShort : function(e) {
  165 + return '<span style="color:gray;font-size: 12px;"><i class="fa fa-search"></i> 输入自编号搜索车辆</span>';
  166 + },
  167 + searching : function() {
  168 + return '<span style="color:gray;font-size: 12px;"> 正在搜索车辆...</span>';
  169 + }
  170 + }
  171 + });
  172 + }
  173 +
  174 +
  175 + var line = "", date = "", car = "";
  176 + $("#query").on("click",function(){
  177 + if($("#date").val() == null || $("#date").val().trim().length == 0){
  178 + layer.msg("请选择日期");
  179 + return;
  180 + }
  181 + line = "";
  182 + $($("#line").val()).each(function(i, e){
  183 + line += e + ",";
  184 + });
  185 + if(line.length > 0){
  186 + line = line.substring(0, line.length - 1);
  187 + }
  188 + date = $("#date").val();
  189 + car = $("#code").val();
  190 + var i = layer.load(2);
  191 + $get('/refuel/queryYc',{line:line,date:date,car:car,type:'query'},function(result){
  192 + // 把数据填充到模版中
  193 + var tbodyHtml = template('refuel_yc',{list:result});
  194 + // 把渲染好的模版html文本追加到表格中
  195 + $('#tbody').html(tbodyHtml);
  196 + layer.close(i);
  197 + });
  198 + });
  199 +
  200 + $("#export").on("click",function(){
  201 + if(date && date != ""){
  202 + var i = layer.load(2);
  203 + var params = {};
  204 + params['line'] = line;
  205 + params['date'] = date;
  206 + params['car'] = car;
  207 + $get('/refuel/exportQueryYc', params, function(result){
  208 + layer.close(i);
  209 + window.open("/downloadFile/download?fileName="
  210 + +date+"-燃油车日报表");
  211 + layer.close(i);
  212 + });
  213 + }
  214 + });
  215 +
  216 +});
  217 +</script>
  218 +<script type="text/html" id="refuel_yc">
  219 + {{each list as obj i}}
  220 + <tr>
  221 + <td>{{i + 1}}</td>
  222 + <td>{{obj.date}}</td>
  223 + <td>{{obj.line}}</td>
  224 + <td>{{obj.car}}</td>
  225 + <td>{{obj.driver}}</td>
  226 + <td>{{obj.outOil}}</td>
  227 + <td>{{obj.inOil}}</td>
  228 + <td>{{obj.addOil}}</td>
  229 + <td>{{obj.oil}}</td>
  230 + <td>{{obj.consume}}</td>
  231 + <td>{{obj.ty}}</td>
  232 + <td>{{obj.yw}}</td>
  233 + <td>{{obj.cj}}</td>
  234 + <td>{{obj.realMileage}}</td>
  235 + <td>{{obj.ksMileage}}</td>
  236 + <td>{{obj.ssMileage}}</td>
  237 + <td>{{obj.bc}}</td>
  238 + <td>{{obj.cr}}</td>
  239 + <td>{{obj.remark}}</td>
  240 + </tr>
  241 + {{/each}}
  242 + {{if list.length == 0}}
  243 + <tr>
  244 + <td colspan="25"><h6 class="muted">没有找到相关数据</h6></td>
  245 + </tr>
  246 + {{/if}}
253 </script> 247 </script>
254 \ No newline at end of file 248 \ No newline at end of file