Commit e0c80b43e0a5b8bfcfc2ff09c3c3237ce6ec50d4

Authored by 廖磊
1 parent 39baaa32

历史修改时候 不去计算核对加注量的 与手动添加的

核对电量修改
src/main/java/com/bsth/controller/report/ReportController.java
@@ -278,6 +278,12 @@ public class ReportController { @@ -278,6 +278,12 @@ public class ReportController {
278 return service.countByList(map); 278 return service.countByList(map);
279 } 279 }
280 280
  281 + @RequestMapping(value="/countLineMileage2")
  282 + public List<Map<String,Object>> countLineMileage2(@RequestParam Map<String, Object> map){
  283 +
  284 + return service.countByList2(map);
  285 + }
  286 +
281 @RequestMapping(value="/countBusMileage") 287 @RequestMapping(value="/countBusMileage")
282 public List<Map<String,Object>> countBusMileage(@RequestParam Map<String, Object> map){ 288 public List<Map<String,Object>> countBusMileage(@RequestParam Map<String, Object> map){
283 return service.countByBusList(map); 289 return service.countByBusList(map);
src/main/java/com/bsth/entity/oil/Dlb.java
@@ -73,7 +73,7 @@ public class Dlb { @@ -73,7 +73,7 @@ public class Dlb {
73 private String fgsname; 73 private String fgsname;
74 74
75 75
76 - private String lp; 76 + private String lp="";
77 77
78 public Integer getId() { 78 public Integer getId() {
79 return id; 79 return id;
src/main/java/com/bsth/entity/oil/Ylb.java
@@ -56,7 +56,7 @@ public class Ylb { @@ -56,7 +56,7 @@ public class Ylb {
56 //进场顺序(根据最先出场和最后进场来关联车辆的存油量) 56 //进场顺序(根据最先出场和最后进场来关联车辆的存油量)
57 private int jcsx; 57 private int jcsx;
58 58
59 - private String lp; 59 + private String lp="";
60 @Transient 60 @Transient
61 private String bglyh; 61 private String bglyh;
62 62
src/main/java/com/bsth/service/oil/impl/DlbServiceImpl.java
@@ -576,55 +576,44 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS @@ -576,55 +576,44 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS
576 if(map.get("nbbm_eq")!=null){ 576 if(map.get("nbbm_eq")!=null){
577 nbbm=map.get("nbbm_eq").toString(); 577 nbbm=map.get("nbbm_eq").toString();
578 } 578 }
579 - List<Dlb> ylListBe=repository.obtainYlbefore(rq, gsbm, "", xlbm, nbbm);  
580 -// List<Cdl> cylList=cdlRepository.obtainCdl(nbbm, gsbm);  
581 - List<Dlb> ylbList=repository.obtainDl(rq,gsbm,fgsbm,xlbm,nbbm,"nbbm");  
582 - List<Ylxxb> ylxxbList=ylxxbRepository.obtainYlxx(rq,1,gsbm);  
583 - for (int i = 0; i < ylxxbList.size(); i++) {  
584 - Boolean fage=true;  
585 - Ylxxb y1=ylxxbList.get(i);  
586 - for(int y=0;y<ylbList.size();y++){  
587 - Dlb y2=ylbList.get(y);  
588 - if(y1.getNbbm().equals(y2.getNbbm())){  
589 - fage=false;  
590 - break;  
591 - } 579 +
  580 + String sql="select * from bsth_c_jdl j where j.gs_bm ='"+gsbm+"' "
  581 + + " and j.fgs_bm ='"+fgsbm+"' and rq ='"+rq+"' "
  582 + + "and nbbm not in (select nbbm from bsth_c_dlb d"
  583 + + " where ssgsdm ='"+gsbm+"' and fgsdm ='"+fgsbm+"'"
  584 + + " and rq='"+rq+"')";
  585 + List<Jdl> listJdl=jdbcTemplate.query(sql,
  586 + new RowMapper<Jdl>(){
  587 + @Override
  588 + public Jdl mapRow(ResultSet rs, int rowNum) throws SQLException {
  589 + Jdl s = new Jdl();
  590 + s.setNbbm(rs.getString("nbbm"));
  591 + s.setGsBm(rs.getString("gs_bm"));
  592 + s.setFgsBm(rs.getString("fgs_bm"));
  593 + s.setJdl(rs.getDouble("jdl"));
  594 + s.setRq(rs.getDate("rq"));
  595 + return s;
592 } 596 }
593 -  
594 - if(fage){  
595 - Dlb t=new Dlb();  
596 - t.setNbbm(y1.getNbbm());  
597 - t.setRq(y1.getYyrq());  
598 - t.setJsy(y1.getJsy());  
599 - t.setCdl(y1.getJzl());  
600 - t.setSsgsdm(y1.getGsdm());  
601 - String fgsdm="";  
602 - if(null!=carsMap.get(y1.getNbbm())){  
603 - fgsdm=carsMap.get(y1.getNbbm());  
604 - }  
605 - t.setFgsdm(fgsdm); 597 + });
  598 + for (int i = 0; i < listJdl.size(); i++) {
  599 + Jdl j=listJdl.get(i);
  600 + Dlb t=new Dlb();
  601 + Line line= BasicData.nbbm2LineMap.get(j.getNbbm());
  602 + if(null !=line){
  603 + t.setCdl(j.getJdl());
  604 + t.setNbbm(j.getNbbm());
  605 + t.setRq(j.getRq());
  606 + t.setJsy("");
  607 + t.setCdl(j.getJdl());
  608 + t.setSsgsdm(j.getGsBm());
  609 + t.setFgsdm(j.getFgsBm());
  610 + t.setJzcd(100.0);
  611 + t.setCzcd(100.0);
  612 + t.setHd(0.0);
606 t.setJcsx(1); 613 t.setJcsx(1);
607 - Line line= BasicData.nbbm2LineMap.get(y1.getNbbm());  
608 - if(null !=line){  
609 - t.setXlbm(line.getLineCode());  
610 - boolean status=true;  
611 - for (int j = 0; j < ylListBe.size(); j++) {  
612 - Dlb b=ylListBe.get(j);  
613 - if(b.getNbbm().equals(y1.getNbbm())){  
614 - t.setCzcd(b.getJzcd());  
615 - status=false;  
616 - break;  
617 - }  
618 - }  
619 - if(status){  
620 - t.setCzcd(0.0);  
621 - }  
622 - t.setJzcd(100.0);  
623 - t.setHd(0.0);  
624 - if(fgsdm.equals(fgsbm)){  
625 - repository.save(t);  
626 - }  
627 - } 614 + t.setXlbm(line.getLineCode());
  615 + t.setLp("");
  616 + repository.save(t);
628 } 617 }
629 } 618 }
630 newMap.put("status", ResponseCode.SUCCESS); 619 newMap.put("status", ResponseCode.SUCCESS);
@@ -983,17 +972,22 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS @@ -983,17 +972,22 @@ public class DlbServiceImpl extends BaseServiceImpl&lt;Dlb,Integer&gt; implements DlbS
983 for (int j = 0; j < dlbList.size(); j++) { 972 for (int j = 0; j < dlbList.size(); j++) {
984 Dlb t=dlbList.get(j); 973 Dlb t=dlbList.get(j);
985 boolean fage=true; 974 boolean fage=true;
986 - for (int i = 0; i < listpbDc.size(); i++) {  
987 - Map<String, Object> m = listpbDc.get(i);  
988 - if(t.getNbbm().equals(m.get("clZbh").toString())  
989 - &&t.getJsy().equals(m.get("jGh").toString())  
990 - &&t.getXlbm().equals(m.get("xlBm").toString())  
991 - &&t.getLp().equals(m.get("lpName").toString())){  
992 - //该条记录不用删除  
993 - fage =false;  
994 - dlbList_upd.add(t); 975 + if(t.getLp().isEmpty()){
  976 + fage=false;
  977 + }else{
  978 + for (int i = 0; i < listpbDc.size(); i++) {
  979 + Map<String, Object> m = listpbDc.get(i);
  980 + if(t.getNbbm().equals(m.get("clZbh").toString())
  981 + &&t.getJsy().equals(m.get("jGh").toString())
  982 + &&t.getXlbm().equals(m.get("xlBm").toString())
  983 + &&t.getLp().equals(m.get("lpName").toString())){
  984 + //该条记录不用删除
  985 + fage =false;
  986 + dlbList_upd.add(t);
  987 + }
995 } 988 }
996 } 989 }
  990 +
997 if(fage){ 991 if(fage){
998 dlbList_del.add(t); 992 dlbList_del.add(t);
999 } 993 }
src/main/java/com/bsth/service/oil/impl/YlbServiceImpl.java
@@ -1545,15 +1545,22 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS @@ -1545,15 +1545,22 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
1545 for (int j = 0; j < ylbList.size(); j++) { 1545 for (int j = 0; j < ylbList.size(); j++) {
1546 Ylb t=ylbList.get(j); 1546 Ylb t=ylbList.get(j);
1547 boolean fage=true; 1547 boolean fage=true;
1548 - for (int i = 0; i < listpbYc.size(); i++) {  
1549 - Map<String, Object> m = listpbYc.get(i);  
1550 - if(t.getNbbm().equals(m.get("clZbh").toString())  
1551 - &&t.getJsy().equals(m.get("jGh").toString())  
1552 - &&t.getXlbm().equals(m.get("xlBm").toString())  
1553 - &&t.getLp().equals(m.get("lpName").toString())){  
1554 - //该条记录不用删除  
1555 - fage =false;  
1556 - ylbList_upd.add(t); 1548 + if(t.getLp().isEmpty()){
  1549 + fage=false;
  1550 + }else{
  1551 + for (int i = 0; i < listpbYc.size(); i++) {
  1552 + Map<String, Object> m = listpbYc.get(i);
  1553 + if(t.getNbbm().equals(m.get("clZbh").toString())
  1554 + &&t.getJsy().equals(m.get("jGh").toString())
  1555 + &&t.getXlbm().equals(m.get("xlBm").toString())
  1556 + &&t.getLp().equals(m.get("lpName").toString())){
  1557 + //该条记录不用删除
  1558 +
  1559 +
  1560 +
  1561 + fage =false;
  1562 + ylbList_upd.add(t);
  1563 + }
1557 } 1564 }
1558 } 1565 }
1559 if(fage){ 1566 if(fage){
@@ -1582,43 +1589,45 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS @@ -1582,43 +1589,45 @@ public class YlbServiceImpl extends BaseServiceImpl&lt;Ylb,Integer&gt; implements YlbS
1582 type = "update"; 1589 type = "update";
1583 } 1590 }
1584 } 1591 }
1585 - // 当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量  
1586 - if (maps.get("seqNumber").toString().equals("1")) {  
1587 - boolean fage = true;  
1588 - for (int i = 0; i < ylListBe.size(); i++) {  
1589 - Ylb ylb = ylListBe.get(i);  
1590 - if (maps.get("clZbh").toString().equals(ylb.getNbbm())) {  
1591 - if(ylb.getJzyl()>0){  
1592 - t.setCzyl(ylb.getJzyl());  
1593 - fage = false;  
1594 - break; 1592 + if(type.equals("add")){
  1593 + // 当日的第一个班次,出场油量等于前一天的最后一个班次的进场油量
  1594 + if (maps.get("seqNumber").toString().equals("1")) {
  1595 + boolean fage = true;
  1596 + for (int i = 0; i < ylListBe.size(); i++) {
  1597 + Ylb ylb = ylListBe.get(i);
  1598 + if (maps.get("clZbh").toString().equals(ylb.getNbbm())) {
  1599 + if(ylb.getJzyl()>0){
  1600 + t.setCzyl(ylb.getJzyl());
  1601 + fage = false;
  1602 + break;
  1603 + }
1595 } 1604 }
1596 } 1605 }
1597 - }  
1598 - if (fage) {  
1599 - for (int y = 0; y < clyList.size(); y++) {  
1600 - Cyl cyl = clyList.get(y);  
1601 - if (maps.get("clZbh").toString().equals(cyl.getNbbm())) {  
1602 - if(cyl!=null){  
1603 - if(cyl.getCyl()>=0){  
1604 - t.setCzyl(cyl.getCyl());  
1605 - fage = false;  
1606 - break;  
1607 - }else {  
1608 - if(cyl.getCxrl()!=null){  
1609 - if(cyl.getCxrl()>0){  
1610 - t.setCzyl(cyl.getCxrl());  
1611 - fage = false;  
1612 - break; 1606 + if (fage) {
  1607 + for (int y = 0; y < clyList.size(); y++) {
  1608 + Cyl cyl = clyList.get(y);
  1609 + if (maps.get("clZbh").toString().equals(cyl.getNbbm())) {
  1610 + if(cyl!=null){
  1611 + if(cyl.getCyl()>=0){
  1612 + t.setCzyl(cyl.getCyl());
  1613 + fage = false;
  1614 + break;
  1615 + }else {
  1616 + if(cyl.getCxrl()!=null){
  1617 + if(cyl.getCxrl()>0){
  1618 + t.setCzyl(cyl.getCxrl());
  1619 + fage = false;
  1620 + break;
  1621 + }
1613 } 1622 }
1614 } 1623 }
1615 } 1624 }
1616 } 1625 }
1617 } 1626 }
1618 } 1627 }
1619 - }  
1620 - if (fage) {  
1621 - t.setCzyl(0.0); 1628 + if (fage) {
  1629 + t.setCzyl(0.0);
  1630 + }
1622 } 1631 }
1623 } 1632 }
1624 1633
src/main/java/com/bsth/service/report/ReportService.java
@@ -46,6 +46,8 @@ public interface ReportService { @@ -46,6 +46,8 @@ public interface ReportService {
46 List<Map<String, String>> userList(Map<String, Object> map); 46 List<Map<String, String>> userList(Map<String, Object> map);
47 47
48 List<Map<String, Object>> countByList(Map<String, Object> map); 48 List<Map<String, Object>> countByList(Map<String, Object> map);
  49 + List<Map<String, Object>> countByList2(Map<String, Object> map);
  50 +
49 51
50 List<Map<String, Object>> countByBusList(Map<String, Object> map); 52 List<Map<String, Object>> countByBusList(Map<String, Object> map);
51 53
src/main/java/com/bsth/service/report/impl/CulateMileageServiceImpl.java
@@ -1198,7 +1198,7 @@ public class CulateMileageServiceImpl implements CulateMileageService{ @@ -1198,7 +1198,7 @@ public class CulateMileageServiceImpl implements CulateMileageService{
1198 Iterator<ChildTaskPlan> it = childTaskPlans.iterator(); 1198 Iterator<ChildTaskPlan> it = childTaskPlans.iterator();
1199 while (it.hasNext()) { 1199 while (it.hasNext()) {
1200 ChildTaskPlan childTaskPlan = it.next(); 1200 ChildTaskPlan childTaskPlan = it.next();
1201 - if(item.equals("空放")){ 1201 +// if(item.equals("空放")){
1202 /*if(childTaskPlan.getType2().equals("1")){ 1202 /*if(childTaskPlan.getType2().equals("1")){
1203 if (!childTaskPlan.isDestroy()) { 1203 if (!childTaskPlan.isDestroy()) {
1204 if(childTaskPlan.getReason().equals(item)){ 1204 if(childTaskPlan.getReason().equals(item)){
@@ -1206,7 +1206,7 @@ public class CulateMileageServiceImpl implements CulateMileageService{ @@ -1206,7 +1206,7 @@ public class CulateMileageServiceImpl implements CulateMileageService{
1206 } 1206 }
1207 } 1207 }
1208 }*/ 1208 }*/
1209 - }else{ 1209 +// }else{
1210 if(childTaskPlan.getType2().equals("2")||childTaskPlan.getType2().equals("3")){ 1210 if(childTaskPlan.getType2().equals("2")||childTaskPlan.getType2().equals("3")){
1211 if (!childTaskPlan.isDestroy()) { 1211 if (!childTaskPlan.isDestroy()) {
1212 if(childTaskPlan.getReason().equals(item)){ 1212 if(childTaskPlan.getReason().equals(item)){
@@ -1214,7 +1214,7 @@ public class CulateMileageServiceImpl implements CulateMileageService{ @@ -1214,7 +1214,7 @@ public class CulateMileageServiceImpl implements CulateMileageService{
1214 } 1214 }
1215 } 1215 }
1216 } 1216 }
1217 - } 1217 +// }
1218 } 1218 }
1219 } 1219 }
1220 } 1220 }
src/main/java/com/bsth/service/report/impl/ReportServiceImpl.java
@@ -2546,6 +2546,111 @@ public class ReportServiceImpl implements ReportService{ @@ -2546,6 +2546,111 @@ public class ReportServiceImpl implements ReportService{
2546 } 2546 }
2547 2547
2548 2548
  2549 + @Override
  2550 + public List<Map<String, Object>> countByList2(Map<String, Object> map) {
  2551 + // TODO Auto-generated method stub
  2552 +
  2553 + List<Map<String, Object>> lMap = new ArrayList<Map<String, Object>>();
  2554 + String gsdm="";
  2555 + if(map.get("gsdm")!=null){
  2556 + gsdm=map.get("gsdm").toString();
  2557 + }
  2558 + String fgsdm="";
  2559 + if(map.get("fgsdm")!=null){
  2560 + fgsdm=map.get("fgsdm").toString();
  2561 + }
  2562 + String line="";
  2563 + if(map.get("line")!=null){
  2564 + line=map.get("line").toString();
  2565 + }
  2566 + String date="";
  2567 + if(map.get("date")!=null){
  2568 + date=map.get("date").toString();
  2569 + }
  2570 + String date2="";
  2571 + if(map.get("date2")!=null){
  2572 + date2=map.get("date2").toString();
  2573 + }
  2574 + String xlName="";
  2575 + if(map.get("xlName")!=null){
  2576 + xlName=map.get("xlName").toString();
  2577 + }
  2578 + String type="";
  2579 + if(map.get("type")!=null){
  2580 + type=map.get("type").toString();
  2581 + }
  2582 + //所有班次信息
  2583 + List<ScheduleRealInfo> list = new ArrayList<ScheduleRealInfo>();
  2584 + line =line.trim();
  2585 + List<Line> lineList=lineRepository.findLineBygsBm(gsdm, fgsdm, "");
  2586 +// if(line.equals("")){
  2587 +// //查询所有线路
  2588 +// list = scheduleRealInfoRepository.scheduleByDateAndLineTj(line, date,date2,gsdm,fgsdm);
  2589 +// }else{
  2590 + //查询单条线路
  2591 +// list = scheduleRealInfoRepository.scheduleByDateAndLineTj2(line, date,date2);
  2592 +// }
  2593 +
  2594 +
  2595 + String sql="select r.xl_bm"
  2596 + + " from bsth_c_s_sp_info_real r where"
  2597 + + " r.schedule_date_str >= '"+date+"' and r.schedule_date_str >= '"+date2+"'";
  2598 +
  2599 +
  2600 + if(line.equals("")){
  2601 + sql +="and r.gs_bm='"+gsdm+"' "
  2602 + + " and r.fgs_bm='"+fgsdm+"'";
  2603 + }else{
  2604 + sql += " and r.xl_bm = '"+line+"'";
  2605 + }
  2606 + sql += " group by r.xl_bm";
  2607 +
  2608 + List<String> listLine=jdbcTemplate.query(sql, new RowMapper<String>() {
  2609 + @Override
  2610 + public String mapRow(ResultSet arg0, int arg1) throws SQLException {
  2611 + String ve = arg0.getString("xl_bm");
  2612 + return ve;
  2613 + }
  2614 + });
  2615 + for (int i = 0; i < listLine.size(); i++) {
  2616 + List<ScheduleRealInfo> lists =scheduleRealInfoRepository.scheduleByDateAndLineTj2(listLine.get(i), date,date2);
  2617 + list.addAll(lists);
  2618 + //计算线路的各项公里
  2619 + if(lists.size()>0){
  2620 + Map<String, Object> newMap=staticTj(lists,"z");
  2621 + lMap.add(newMap);
  2622 + }
  2623 + }
  2624 + if(list.size()>0){
  2625 + Map<String, Object> newMap=staticTj(list,"f");
  2626 + lMap.add(newMap);
  2627 + }
  2628 + if(type.equals("export")){
  2629 + List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
  2630 + Map<String, Object> m = new HashMap<String, Object>();
  2631 + m.put("date", date);
  2632 + m.put("date1", date2);
  2633 + String by=map.get("by").toString();
  2634 + String xls="";
  2635 + if(by.equals("sj")){
  2636 + xls="countByLine.xls";
  2637 + }else{
  2638 + xls="countByLines.xls";
  2639 + }
  2640 + ReportUtils ee = new ReportUtils();
  2641 + try {
  2642 + listI.add(lMap.iterator());
  2643 + String path = this.getClass().getResource("/").getPath() + "static/pages/forms/";
  2644 + ee.excelReplace(listI, new Object[]{m}, path + "mould/"+xls,
  2645 + path + "export/线路公里统计表.xls");
  2646 + } catch (Exception e) {
  2647 + // TODO: handle exception
  2648 + e.printStackTrace();
  2649 + }
  2650 + }
  2651 + return lMap;
  2652 + }
  2653 +
2549 public final Map<String, Object> staticTj(List<ScheduleRealInfo> list,String status){ 2654 public final Map<String, Object> staticTj(List<ScheduleRealInfo> list,String status){
2550 2655
2551 List<ScheduleRealInfo> lists=new ArrayList<ScheduleRealInfo>(); 2656 List<ScheduleRealInfo> lists=new ArrayList<ScheduleRealInfo>();
src/main/resources/static/pages/report/countMileage/countBus/company/countBusMileage.html
@@ -155,7 +155,7 @@ @@ -155,7 +155,7 @@
155 var tempData = {}; 155 var tempData = {};
156 $.get('/report/lineList',function(xlList){ 156 $.get('/report/lineList',function(xlList){
157 var data = []; 157 var data = [];
158 - data.push({id: " ", text: "全部线路"}); 158 +// data.push({id: " ", text: "全部线路"});
159 $.get('/user/companyData', function(result){ 159 $.get('/user/companyData', function(result){
160 for(var i = 0; i < result.length; i++){ 160 for(var i = 0; i < result.length; i++){
161 var companyCode = result[i].companyCode; 161 var companyCode = result[i].companyCode;
src/main/resources/static/pages/report/countMileage/countBus/countBusMileage.html
@@ -155,7 +155,7 @@ @@ -155,7 +155,7 @@
155 var tempData = {}; 155 var tempData = {};
156 $.get('/report/lineList',function(xlList){ 156 $.get('/report/lineList',function(xlList){
157 var data = []; 157 var data = [];
158 - data.push({id: " ", text: "全部线路"}); 158 +// data.push({id: " ", text: "全部线路"});
159 $.get('/user/companyData', function(result){ 159 $.get('/user/companyData', function(result){
160 for(var i = 0; i < result.length; i++){ 160 for(var i = 0; i < result.length; i++){
161 var companyCode = result[i].companyCode; 161 var companyCode = result[i].companyCode;
src/main/resources/static/pages/report/countMileage/countLine/countLineMileage.html
@@ -263,7 +263,7 @@ @@ -263,7 +263,7 @@
263 params['xlName'] = xlName; 263 params['xlName'] = xlName;
264 params['type'] = "query"; 264 params['type'] = "query";
265 var i = layer.load(2); 265 var i = layer.load(2);
266 - $get('/report/countLineMileage',params,function(result){ 266 + $get('/report/countLineMileage2',params,function(result){
267 $("#datetodate").html(date+"至"+date2); 267 $("#datetodate").html(date+"至"+date2);
268 layer.close(i); 268 layer.close(i);
269 // 把数据填充到模版中 269 // 把数据填充到模版中
@@ -290,7 +290,7 @@ @@ -290,7 +290,7 @@
290 params['xlName'] = xlName; 290 params['xlName'] = xlName;
291 params['type'] = "export"; 291 params['type'] = "export";
292 params['by']='sj'; 292 params['by']='sj';
293 - $get('/report/countLineMileage',params,function(result){ 293 + $get('/report/countLineMileage2',params,function(result){
294 window.open("/downloadFile/download?fileName=线路公里统计表"); 294 window.open("/downloadFile/download?fileName=线路公里统计表");
295 }); 295 });
296 }); 296 });