Commit f2ca883eef8e08c9f95d5061e6d5dcade648f4ef
Merge branch 'pudong_test' of 192.168.168.201:panzhaov5/bsth_control into pudong_test
Showing
9 changed files
with
549 additions
and
56 deletions
src/main/java/com/bsth/controller/calc/CalcIntervalController.java
| 1 | 1 | package com.bsth.controller.calc; |
| 2 | 2 | |
| 3 | +import java.util.ArrayList; | |
| 3 | 4 | import java.util.List; |
| 4 | 5 | import java.util.Map; |
| 5 | 6 | |
| ... | ... | @@ -31,7 +32,18 @@ public class CalcIntervalController extends BaseController<CalcInterval,Integer |
| 31 | 32 | |
| 32 | 33 | @RequestMapping(value="/interval") |
| 33 | 34 | public List<Map<String,Object>> interval(@RequestParam Map<String, Object> map){ |
| 34 | - List<Map<String,Object>> list=calcIntervalService.interval(map); | |
| 35 | + List<Map<String,Object>> list=new ArrayList<Map<String,Object>>(); | |
| 36 | + if(map.get("status")==null){ | |
| 37 | + list=calcIntervalService.interval(map); | |
| 38 | + }else{ | |
| 39 | + list=calcIntervalService.intervalDetail(map); | |
| 40 | + } | |
| 41 | + return list; | |
| 42 | + } | |
| 43 | + | |
| 44 | + @RequestMapping(value="/sumInterval") | |
| 45 | + public List<Map<String,Object>> sumInterval(@RequestParam Map<String, Object> map){ | |
| 46 | + List<Map<String, Object>> list=calcIntervalService.sumInterval(map); | |
| 35 | 47 | return list; |
| 36 | 48 | } |
| 37 | 49 | ... | ... |
src/main/java/com/bsth/repository/calc/CalcIntervalRepository.java
| ... | ... | @@ -25,7 +25,7 @@ public interface CalcIntervalRepository extends BaseRepository<CalcInterval, Int |
| 25 | 25 | |
| 26 | 26 | |
| 27 | 27 | //按照时间段统计,单条线路 |
| 28 | - @Query(value="select DISTINCT c from CalcInterval c where c.xlBm = ?1 and c.date >= ?2 and c.date <=?3 and c.level like %?4% order by c.xlBm") | |
| 28 | + @Query(value="select DISTINCT c from CalcInterval c where c.xlBm = ?1 and c.date >= ?2 and c.date <=?3 and c.level like %?4% order by c.xlBm, date") | |
| 29 | 29 | List<CalcInterval> selectByDateAndLine(String line,String date,String date2,String level); |
| 30 | 30 | |
| 31 | 31 | ... | ... |
src/main/java/com/bsth/service/calc/CalcIntervalService.java
| ... | ... | @@ -13,5 +13,11 @@ public interface CalcIntervalService extends BaseService<CalcInterval,Integer> { |
| 13 | 13 | |
| 14 | 14 | List<Map<String,Object>> countList(Map<String, Object> map); |
| 15 | 15 | List<Map<String,Object>> listInterval(Map<String, Object> map); |
| 16 | + //根据排班表查询 | |
| 16 | 17 | List<Map<String,Object>> interval(Map<String, Object> map); |
| 18 | + //根据预统计表查询 | |
| 19 | + List<Map<String,Object>> intervalDetail(Map<String, Object> map); | |
| 20 | + //大间隔统计表(大间隔发生次数统计表) | |
| 21 | + List<Map<String,Object>> sumInterval(Map<String, Object> map); | |
| 22 | + | |
| 17 | 23 | } | ... | ... |
src/main/java/com/bsth/service/calc/impl/CalcIntervalServiceImpl.java
| 1 | 1 | package com.bsth.service.calc.impl; |
| 2 | 2 | |
| 3 | +import java.math.BigDecimal; | |
| 3 | 4 | import java.sql.ResultSet; |
| 4 | 5 | import java.sql.SQLException; |
| 5 | 6 | import java.text.DecimalFormat; |
| ... | ... | @@ -31,10 +32,13 @@ import com.bsth.entity.sheet.Sheet; |
| 31 | 32 | import com.bsth.repository.LineRepository; |
| 32 | 33 | import com.bsth.repository.calc.CalcIntervalRepository; |
| 33 | 34 | import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; |
| 35 | +import com.bsth.service.LineService; | |
| 34 | 36 | import com.bsth.service.calc.CalcIntervalService; |
| 35 | 37 | import com.bsth.service.impl.BaseServiceImpl; |
| 38 | +import com.bsth.util.Arith; | |
| 36 | 39 | import com.bsth.util.ComparableReal; |
| 37 | 40 | import com.bsth.util.ReportUtils; |
| 41 | +import com.mysql.fabric.xmlrpc.base.Array; | |
| 38 | 42 | |
| 39 | 43 | @Service |
| 40 | 44 | public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Integer> implements CalcIntervalService { |
| ... | ... | @@ -51,6 +55,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 51 | 55 | LineRepository lineRepository; |
| 52 | 56 | @Autowired |
| 53 | 57 | JdbcTemplate jdbcTemplate; |
| 58 | + @Autowired | |
| 59 | + LineService lineService; | |
| 54 | 60 | @Override |
| 55 | 61 | public List<Map<String, Object>> countList(Map<String, Object> map) { |
| 56 | 62 | // TODO Auto-generated method stub |
| ... | ... | @@ -62,9 +68,10 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 62 | 68 | String fgs=map.get("fgs").toString().trim(); |
| 63 | 69 | String sDate=map.get("date").toString(); |
| 64 | 70 | String eDate=map.get("endDate").toString(); |
| 71 | + String nature=map.get("nature").toString(); | |
| 65 | 72 | |
| 66 | 73 | //D级线路显示发车准点率 |
| 67 | - if(level.equals("D")){ | |
| 74 | + if(level.equals("D") && false){ //新的计算规则D级也显示大间隔 | |
| 68 | 75 | String sql1=" select xl_bm,gsbm,fgsbm,xl_name from bsth_c_calc_interval where date >='"+sDate+"' and date <= '"+eDate+"' and `level`='D'"; |
| 69 | 76 | if(line.equals("")){ |
| 70 | 77 | if(fgs.equals("")){ |
| ... | ... | @@ -124,10 +131,13 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 124 | 131 | }); |
| 125 | 132 | }else{ |
| 126 | 133 | //统计信息中需要查询所有班次 |
| 127 | -// and djg_all >0 | |
| 134 | + //and djg_all >0 | |
| 135 | +// String sql="select gsbm,fgsbm,xl_bm,xl_name,SUM(bcs) as bcs,MAX(id) as id,SUM(djg_all) as djgAll,SUM(djg_gf) as djgGf," | |
| 136 | +// + "SUM(djg_dg) as djgDg,SUM(djg_zgf) as djgZgf,SUM(djg_wgf) as djgWgf,MAX(djg_time) as djgTime " | |
| 137 | +// + "from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"' and level <> 'D' "; | |
| 128 | 138 | String sql="select gsbm,fgsbm,xl_bm,xl_name,SUM(bcs) as bcs,MAX(id) as id,SUM(djg_all) as djgAll,SUM(djg_gf) as djgGf," |
| 129 | - + "SUM(djg_dg) as djgDg,SUM(djg_zgf) as djgZgf,SUM(djg_wgf) as djgWgf,MAX(djg_time) as djgTime " | |
| 130 | - + "from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"' and level <> 'D' "; | |
| 139 | + + "SUM(djg_dg) as djgDg,SUM(djg_zgf) as djgZgf,SUM(djg_wgf) as djgWgf,MAX(djg_time) as djgTime " | |
| 140 | + + "from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"' and level like '%"+level+"%' and level is not null and level <> '' "; | |
| 131 | 141 | if(line.equals("")){ |
| 132 | 142 | if(fgs.equals("")){ |
| 133 | 143 | sql +=" and gsbm = '"+gs+"'"; |
| ... | ... | @@ -164,22 +174,46 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 164 | 174 | m.put("djgZgf", rs.getString("djgZgf")); |
| 165 | 175 | m.put("djgWgf", rs.getString("djgWgf")); |
| 166 | 176 | m.put("djgDg", rs.getString("djgDg")); |
| 167 | - m.put("djgTime", rs.getString("djgTime")); | |
| 177 | + if("0".equals(rs.getString("djgTime")) || "0.0".equals(rs.getString("djgTime"))){ | |
| 178 | + m.put("djgTime", ""); | |
| 179 | + } else { | |
| 180 | + m.put("djgTime", rs.getString("djgTime")); | |
| 181 | + } | |
| 168 | 182 | return m; |
| 169 | 183 | } |
| 170 | 184 | }); |
| 171 | 185 | } |
| 172 | 186 | |
| 187 | + //根据线路类型确定是否营运 | |
| 188 | + Map<String, Boolean> lineMap=lineService.lineNature(); | |
| 189 | + List<Map<String, Object>> listAll=new ArrayList<Map<String, Object>>(); | |
| 190 | + for (int i = 0; i < list.size(); i++) { | |
| 191 | + Map<String, Object> m=list.get(i); | |
| 192 | + if (nature.equals("0")) { | |
| 193 | + listAll.add(m); | |
| 194 | + }else if(nature.equals("1")){ | |
| 195 | + if(lineMap.get(m.get("xlBm").toString())){ | |
| 196 | + listAll.add(m); | |
| 197 | + } | |
| 198 | + }else{ | |
| 199 | + if(!lineMap.get(m.get("xlBm").toString())){ | |
| 200 | + listAll.add(m); | |
| 201 | + } | |
| 202 | + } | |
| 203 | + } | |
| 204 | + | |
| 173 | 205 | if(map.get("type").equals("export")){ |
| 174 | 206 | String lineName=""; |
| 175 | - if(line.equals("")){ | |
| 176 | - if(fgs.equals("")){ | |
| 177 | - lineName=list.get(0).get("gs").toString(); | |
| 178 | - }else{ | |
| 179 | - lineName=list.get(0).get("fgs").toString(); | |
| 207 | + if(listAll.size()>0){ | |
| 208 | + if(line.equals("")){ | |
| 209 | + if(fgs.equals("")){ | |
| 210 | + lineName=listAll.get(0).get("gs").toString(); | |
| 211 | + }else{ | |
| 212 | + lineName=listAll.get(0).get("fgs").toString(); | |
| 213 | + } | |
| 214 | + }else{ | |
| 215 | + lineName=listAll.get(0).get("xlName").toString(); | |
| 180 | 216 | } |
| 181 | - }else{ | |
| 182 | - lineName=list.get(0).get("xlName").toString(); | |
| 183 | 217 | } |
| 184 | 218 | List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); |
| 185 | 219 | Map<String, Object> m = new HashMap<String, Object>(); |
| ... | ... | @@ -193,21 +227,21 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 193 | 227 | dateTime = sDate.replaceAll("-", "")+"-"+ |
| 194 | 228 | eDate.replaceAll("-", ""); |
| 195 | 229 | } |
| 196 | - listI.add(list.iterator()); | |
| 230 | + listI.add(listAll.iterator()); | |
| 197 | 231 | String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; |
| 198 | 232 | String xls=""; |
| 199 | 233 | String xlsName=""; |
| 200 | - if(level.equals("D")){ | |
| 201 | - m.put("date", sDate); | |
| 202 | - m.put("endDate", eDate); | |
| 203 | - xls="calcSheetList.xls"; | |
| 204 | - xlsName="发车到站准点率.xls"; | |
| 205 | - }else{ | |
| 234 | +// if(level.equals("D")){ | |
| 235 | +// m.put("date", sDate); | |
| 236 | +// m.put("endDate", eDate); | |
| 237 | +// xls="calcSheetList.xls"; | |
| 238 | +// xlsName="发车到站准点率.xls"; | |
| 239 | +// }else{ | |
| 206 | 240 | m.put("sDate", sDate); |
| 207 | 241 | m.put("eDate", eDate); |
| 208 | 242 | xls="calcIntervalCount.xls"; |
| 209 | - xlsName="大间隔汇总表.xls"; | |
| 210 | - } | |
| 243 | + xlsName="大间隔情况表.xls"; | |
| 244 | +// } | |
| 211 | 245 | |
| 212 | 246 | ee.excelReplace(listI, new Object[]{m}, path + "mould/" + ""+xls, |
| 213 | 247 | path + "export/"+dateTime+"-"+lineName+"-"+xlsName); |
| ... | ... | @@ -216,7 +250,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 216 | 250 | e.printStackTrace(); |
| 217 | 251 | } |
| 218 | 252 | } |
| 219 | - return list; | |
| 253 | + return listAll; | |
| 220 | 254 | } |
| 221 | 255 | @Override |
| 222 | 256 | public List<Map<String, Object>> listInterval(Map<String, Object> map) { |
| ... | ... | @@ -230,7 +264,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 230 | 264 | List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>(); |
| 231 | 265 | for (int i = 0; i < listAll.size(); i++) { |
| 232 | 266 | CalcInterval t=listAll.get(i); |
| 233 | - if(!t.getLevel().equals("D") && t.getDjgAll()>0){ | |
| 267 | +// if(!t.getLevel().equals("D") && t.getDjgAll()>0){ | |
| 268 | + if(t.getDjgAll() != null && t.getDjgAll() > 0){ | |
| 234 | 269 | Map<String, Object> m=new HashMap<>(); |
| 235 | 270 | m.put("gs", t.getGsname()); |
| 236 | 271 | m.put("fgs", t.getFgsname()); |
| ... | ... | @@ -607,6 +642,49 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 607 | 642 | return list; |
| 608 | 643 | } |
| 609 | 644 | |
| 645 | + @Override | |
| 646 | + public List<Map<String, Object>> intervalDetail(Map<String, Object> map) { | |
| 647 | + // TODO Auto-generated method stub | |
| 648 | + String line=map.get("line").toString(); | |
| 649 | + String date=map.get("date").toString(); | |
| 650 | + String sql="select * from bsth_c_calc_interval_detail where line_code='"+line+"' and " | |
| 651 | + + " date ='"+date+"'"; | |
| 652 | + | |
| 653 | + List<Map<String, Object>> list=jdbcTemplate.query(sql, | |
| 654 | + new RowMapper<Map<String,Object>>(){ | |
| 655 | + @Override | |
| 656 | + public Map<String, Object> mapRow(ResultSet rs, int rowNum) throws SQLException { | |
| 657 | + Map<String, Object> m=new HashMap<String,Object>(); | |
| 658 | + m.put("xlName", rs.getString("line_name")); | |
| 659 | + m.put("level", rs.getString("level")); | |
| 660 | + m.put("jhfc1", rs.getString("jhfc1")); | |
| 661 | + m.put("sjfc1", rs.getString("sjfc1")); | |
| 662 | + m.put("jhfc2", rs.getString("jhfc2")); | |
| 663 | + m.put("sjfc2", rs.getString("sjfc2")); | |
| 664 | + m.put("subTime", rs.getString("sub_time")); | |
| 665 | + m.put("date", rs.getString("date")); | |
| 666 | + m.put("station", rs.getString("station")); | |
| 667 | + | |
| 668 | + return m; | |
| 669 | + } | |
| 670 | + }); | |
| 671 | + if(map.get("type").toString().equals("export")){ | |
| 672 | + List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); | |
| 673 | + Map<String, Object> m = new HashMap<String, Object>(); | |
| 674 | + m.put("date", date); | |
| 675 | + ReportUtils ee = new ReportUtils(); | |
| 676 | + try { | |
| 677 | + listI.add(list.iterator()); | |
| 678 | + String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; | |
| 679 | + ee.excelReplace(listI, new Object[]{m}, path + "mould/" + "interval.xls", | |
| 680 | + path + "export/"+date+"大间隔详细.xls"); | |
| 681 | + } catch (Exception e) { | |
| 682 | + // TODO: handle exception | |
| 683 | + e.printStackTrace(); | |
| 684 | + } | |
| 685 | + } | |
| 686 | + return list; | |
| 687 | + } | |
| 610 | 688 | |
| 611 | 689 | private Long minFcsjs(int id){ |
| 612 | 690 | String minfcsj="02:00"; |
| ... | ... | @@ -620,6 +698,154 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Intege |
| 620 | 698 | Long minSj=Long.parseLong(minSjs[0])*60+Long.parseLong(minSjs[1]); |
| 621 | 699 | return minSj; |
| 622 | 700 | } |
| 701 | + | |
| 702 | + public List<Map<String, Object>> sumInterval(Map<String, Object> map) { | |
| 703 | + // TODO Auto-generated method stub | |
| 704 | + final DecimalFormat df = new DecimalFormat("0.00"); | |
| 705 | + List<Map<String, Object>> list=new ArrayList<>(); | |
| 706 | + String gs=map.get("gs").toString().trim(); | |
| 707 | + String fgs=map.get("fgs").toString().trim(); | |
| 708 | + String sDate=map.get("date").toString(); | |
| 709 | + String eDate=map.get("endDate").toString(); | |
| 710 | +// String nature=map.get("nature").toString(); | |
| 711 | + | |
| 712 | + List<Map<String, Object>> listAll=new ArrayList<Map<String, Object>>(); | |
| 713 | + | |
| 714 | + String sql="select gsbm,fgsbm,level,djg_all,bcs" | |
| 715 | + + " from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"'" | |
| 716 | + + " and level is not null and level <> '' "; | |
| 717 | + if(gs.length() > 0){ | |
| 718 | + if(fgs.length() > 0){ | |
| 719 | + sql +=" and gsbm = '"+gs+"' and fgsbm = '"+fgs+"'"; | |
| 720 | + } else { | |
| 721 | + sql +=" and gsbm = '"+gs+"'"; | |
| 722 | + } | |
| 723 | + } | |
| 724 | + sql += " order by gsbm,fgsbm,level"; | |
| 725 | + | |
| 726 | + List<Map<String, Object>> countList=jdbcTemplate.query(sql, | |
| 727 | + new RowMapper<Map<String,Object>>(){ | |
| 728 | + @Override | |
| 729 | + public Map<String, Object> mapRow(ResultSet rs, int rowNum) throws SQLException { | |
| 730 | + Map<String, Object> m=new HashMap<String,Object>(); | |
| 731 | + m.put("gs", BasicData.businessCodeNameMap.get(rs.getString("gsbm"))); | |
| 732 | + m.put("fgs", BasicData.businessFgsCodeNameMap.get(rs.getString("fgsbm")+"_"+rs.getString("gsbm"))); | |
| 733 | + m.put("level", rs.getString("level")); | |
| 734 | + m.put("djgAll", rs.getInt("djg_all")); | |
| 735 | + m.put("bcs", rs.getInt("bcs")); | |
| 736 | + return m; | |
| 737 | + } | |
| 738 | + }); | |
| 739 | + | |
| 740 | + List<String> keyList = new ArrayList<String>(); | |
| 741 | + Map<String, Map<String, Object>> keyMap = new HashMap<String, Map<String, Object>>(); | |
| 742 | + Map<String, Object> sumMap1 = new HashMap<String, Object>(); | |
| 743 | + Map<String, Object> sumMap2 = new HashMap<String, Object>(); | |
| 744 | + sumMap1.put("fgs", "合计"); //分公司合计 | |
| 745 | + sumMap1.put("djgNum", "0"); | |
| 746 | + sumMap1.put("bcs", "0"); | |
| 747 | + sumMap2.put("gs", "合计"); //公司合计 | |
| 748 | + sumMap2.put("djgNum", "0"); | |
| 749 | + sumMap2.put("bcs", "0"); | |
| 750 | + for(Map<String, Object> m : countList){ | |
| 751 | + String gsName = m.get("gs").toString(); | |
| 752 | + String fgsName = m.get("fgs").toString(); | |
| 753 | + String level = m.get("level").toString(); | |
| 754 | + String key = gsName + "^" + fgsName + "/" + level; | |
| 755 | + Map<String, Object> temp = new HashMap<String, Object>(); | |
| 756 | + if(keyList.size() == 0){ | |
| 757 | + sumMap1.put("gs", gsName); | |
| 758 | + } | |
| 759 | + if(!(keyMap.containsKey(key))){ | |
| 760 | + if(keyList.size() > 0 && !(keyList.get(keyList.size() - 1).split("/")[0].equals(key.split("/")[0]))){ | |
| 761 | + keyList.add(sumMap1.get("gs").toString() + "^合计_" + fgsName); | |
| 762 | + keyMap.put(sumMap1.get("gs").toString() + "^合计_" + fgsName, sumMap1); | |
| 763 | + sumMap1 = new HashMap<String, Object>(); | |
| 764 | + sumMap1.put("gs", gsName); | |
| 765 | + sumMap1.put("fgs", "合计"); | |
| 766 | + sumMap1.put("djgNum", "0"); | |
| 767 | + sumMap1.put("bcs", "0"); | |
| 768 | + } | |
| 769 | + temp.put("gs", gsName); | |
| 770 | + temp.put("fgs", fgsName); | |
| 771 | + temp.put("level", level); | |
| 772 | + temp.put("djgNum", "0"); | |
| 773 | + temp.put("bcs", "0"); | |
| 774 | + keyList.add(key); | |
| 775 | + keyMap.put(key, temp); | |
| 776 | + } else { | |
| 777 | + temp = keyMap.get(key); | |
| 778 | + } | |
| 779 | + if(m.get("djgAll") != null && m.get("djgAll").toString().trim().length() > 0){ | |
| 780 | + temp.put("djgNum", Arith.add(temp.get("djgNum"), m.get("djgAll"))); | |
| 781 | + sumMap1.put("djgNum", Arith.add(sumMap1.get("djgNum"), m.get("djgAll"))); | |
| 782 | + sumMap2.put("djgNum", Arith.add(sumMap2.get("djgNum"), m.get("djgAll"))); | |
| 783 | + } | |
| 784 | + if(m.get("bcs") != null && m.get("bcs").toString().trim().length() > 0){ | |
| 785 | + temp.put("bcs", Arith.add(temp.get("bcs"), m.get("bcs"))); | |
| 786 | + sumMap1.put("bcs", Arith.add(sumMap1.get("bcs"), m.get("bcs"))); | |
| 787 | + sumMap2.put("bcs", Arith.add(sumMap2.get("bcs"), m.get("bcs"))); | |
| 788 | + } | |
| 789 | + } | |
| 790 | + keyList.add((sumMap1.get("gs")!=null?sumMap1.get("gs").toString():"") + "^合计_"); | |
| 791 | + keyMap.put((sumMap1.get("gs")!=null?sumMap1.get("gs").toString():"") + "^合计_", sumMap1); | |
| 792 | + keyList.add("合计"); | |
| 793 | + keyMap.put("合计", sumMap2); | |
| 794 | + | |
| 795 | + for(String key : keyList){ | |
| 796 | + Map<String, Object> m = keyMap.get(key); | |
| 797 | + double djgAll = new BigDecimal(m.get("djgNum").toString()).doubleValue(); | |
| 798 | + double bcs = new BigDecimal(m.get("bcs").toString()).doubleValue(); | |
| 799 | + //万班次发生率 (大间隔次数/全日班次数*10000) | |
| 800 | + if(bcs > 0){ | |
| 801 | + double fsl = djgAll / bcs * 10000; | |
| 802 | + m.put("fsl", df.format(fsl)); | |
| 803 | + } else { | |
| 804 | + m.put("fsl", "0.0"); | |
| 805 | + } | |
| 806 | + listAll.add(m); | |
| 807 | + } | |
| 808 | + | |
| 809 | + if(map.get("type").equals("export")){ | |
| 810 | + String lineName=""; | |
| 811 | + if(listAll.size()>0){ | |
| 812 | + if(fgs.equals("")){ | |
| 813 | + lineName=listAll.get(0).get("gs").toString(); | |
| 814 | + }else{ | |
| 815 | + lineName=listAll.get(0).get("fgs").toString(); | |
| 816 | + } | |
| 817 | + } | |
| 818 | + List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); | |
| 819 | + Map<String, Object> m = new HashMap<String, Object>(); | |
| 820 | + | |
| 821 | + ReportUtils ee = new ReportUtils(); | |
| 822 | + try { | |
| 823 | + String dateTime = ""; | |
| 824 | + if(sDate.equals(eDate)){ | |
| 825 | + dateTime = sDate.replaceAll("-", ""); | |
| 826 | + } else { | |
| 827 | + dateTime = sDate.replaceAll("-", "")+"-"+ | |
| 828 | + eDate.replaceAll("-", ""); | |
| 829 | + } | |
| 830 | + listI.add(listAll.iterator()); | |
| 831 | + String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; | |
| 832 | + String xls=""; | |
| 833 | + String xlsName=""; | |
| 834 | + m.put("sDate", sDate); | |
| 835 | + m.put("eDate", eDate); | |
| 836 | + xls="calcIntervalCount.xls"; | |
| 837 | + xlsName="大间隔情况表.xls"; | |
| 838 | + | |
| 839 | + ee.excelReplace(listI, new Object[]{m}, path + "mould/" + ""+xls, | |
| 840 | + path + "export/"+dateTime+"-"+lineName+"-"+xlsName); | |
| 841 | + } catch (Exception e) { | |
| 842 | + // TODO: handle exception | |
| 843 | + e.printStackTrace(); | |
| 844 | + } | |
| 845 | + } | |
| 846 | + return listAll; | |
| 847 | + } | |
| 848 | + | |
| 623 | 849 | } |
| 624 | 850 | |
| 625 | 851 | class ComparableJhfc implements Comparator<ScheduleRealInfo>{ | ... | ... |
src/main/resources/static/pages/forms/mould/calcIntervalCount.xls
No preview for this file type
src/main/resources/static/pages/forms/mould/calcIntervalList1.xls
No preview for this file type
src/main/resources/static/pages/report/sheet/intervalCount.html
| ... | ... | @@ -31,7 +31,7 @@ |
| 31 | 31 | <span class="item-label" style="width: 80px;">公司: </span> |
| 32 | 32 | <select class="form-control" name="company" id="gsdm" style="width: 180px;"></select> |
| 33 | 33 | </div> |
| 34 | - <div style="display: inline-block; margin-left: 38px;" id="fgsdmDiv"> | |
| 34 | + <div style="display: inline-block; margin-left: 28px;" id="fgsdmDiv"> | |
| 35 | 35 | <span class="item-label" style="width: 80px;">分公司: </span> |
| 36 | 36 | <select class="form-control" name="subCompany" id="fgsdm" style="width: 180px;"></select> |
| 37 | 37 | </div> |
| ... | ... | @@ -39,21 +39,35 @@ |
| 39 | 39 | <span class="item-label" style="width: 80px;">线路: </span> |
| 40 | 40 | <select class="form-control" name="line" id="line" style="width: 180px;"></select> |
| 41 | 41 | </div> |
| 42 | + <div style="display: inline-block;margin-left: 18px;"> | |
| 43 | + <span class="item-label" style="width: 80px;">线路性质: </span> | |
| 44 | + <select | |
| 45 | + class="form-control" name="nature" id="nature" | |
| 46 | + style="width: 180px;"> | |
| 47 | + <option value="0">全部线路</option> | |
| 48 | + <option value="1" selected="selected">营运线路</option> | |
| 49 | + <option value="2">非营运线路</option> | |
| 50 | + </select> | |
| 51 | + </div> | |
| 42 | 52 | <div style="margin-top: 10px"> |
| 43 | 53 | </div> |
| 44 | 54 | <div style="display: inline-block;margin-left: 33px;"> |
| 45 | 55 | <span class="item-label" style="width: 80px;">等级: </span> |
| 46 | 56 | <select class="form-control" style="width: 180px;" id=levelType> |
| 47 | - <option value="A,B,C">A,B,C级线路</option> | |
| 57 | + <option id="levelTypeAll" value="">全部</option> | |
| 58 | + <option value="A" selected="selected">A级线路</option> | |
| 59 | + <option value="B">B级线路</option> | |
| 60 | + <option value="C">C级线路</option> | |
| 48 | 61 | <option value="D">D级线路</option> |
| 62 | + <option value="E">E级线路</option> | |
| 49 | 63 | </select> |
| 50 | 64 | </div> |
| 51 | 65 | <div style="display: inline-block;"> |
| 52 | - <span class="item-label" style="width: 80px;margin-left: 24px;">开始时间: </span> | |
| 66 | + <span class="item-label" style="width: 80px;margin-left: 14px;">开始时间: </span> | |
| 53 | 67 | <input class="form-control" type="text" id="date" style="width: 180px;"/> |
| 54 | 68 | </div> |
| 55 | 69 | <div style="display: inline-block;"> |
| 56 | - <span class="item-label" style="width: 80px;margin-left: 24px;">结束时间: </span> | |
| 70 | + <span class="item-label" style="width: 80px;margin-left: 14px;">结束时间: </span> | |
| 57 | 71 | <input class="form-control" type="text" id="endDate" style="width: 180px;"/> |
| 58 | 72 | </div> |
| 59 | 73 | |
| ... | ... | @@ -106,7 +120,6 @@ |
| 106 | 120 | </tbody> |
| 107 | 121 | </table> |
| 108 | 122 | |
| 109 | - | |
| 110 | 123 | </div> |
| 111 | 124 | |
| 112 | 125 | <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px"> |
| ... | ... | @@ -126,7 +139,7 @@ |
| 126 | 139 | <td>低谷次数</td> |
| 127 | 140 | <td>全日班次数</td> |
| 128 | 141 | <td>万班次发生率</td> |
| 129 | - <td>最大间隔</td> | |
| 142 | + <td>最大间隔时间</td> | |
| 130 | 143 | <td>查看</td> |
| 131 | 144 | </tr> |
| 132 | 145 | </thead> |
| ... | ... | @@ -255,10 +268,13 @@ |
| 255 | 268 | if($("#line").val() == " "){ |
| 256 | 269 | $("#gsdm").attr("disabled", false); |
| 257 | 270 | $("#fgsdm").attr("disabled", false); |
| 271 | + $("#levelType").val('A'); | |
| 258 | 272 | } else { |
| 259 | 273 | var temp = tempData[$("#line").val()].split(":"); |
| 260 | 274 | $("#gsdm").val(temp[0]); |
| 261 | 275 | updateCompany(); |
| 276 | + $("#nature").val(0); | |
| 277 | + $("#levelType").val(''); | |
| 262 | 278 | $("#fgsdm").val(temp[1]); |
| 263 | 279 | $("#gsdm").attr("disabled", true); |
| 264 | 280 | $("#fgsdm").attr("disabled", true); |
| ... | ... | @@ -275,21 +291,22 @@ |
| 275 | 291 | var fgs=$('#fgsdm').val(); |
| 276 | 292 | var gs=$('#gsdm').val(); |
| 277 | 293 | var levelType=$('#levelType').val(); |
| 294 | + var nature=$("#nature").val(); | |
| 278 | 295 | var i = layer.load(2); |
| 279 | - $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,type:'query'},function(result){ | |
| 280 | - if(levelType=="D"){ | |
| 281 | - var intervalList_d = template('intervalList_d',{list:result}); | |
| 282 | - $('#forms_d tbody').html(intervalList_d); | |
| 283 | - $('.btn-intervalList_d').on('click', showSheetList); | |
| 284 | - $("#forms").hide(); | |
| 285 | - $("#forms_d").show(); | |
| 286 | - }else{ | |
| 296 | + $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,nature:nature,type:'query'},function(result){ | |
| 297 | +// if(levelType=="D"){ | |
| 298 | +// var intervalList_d = template('intervalList_d',{list:result}); | |
| 299 | +// $('#forms_d tbody').html(intervalList_d); | |
| 300 | +// $('.btn-intervalList_d').on('click', showSheetList); | |
| 301 | +// $("#forms").hide(); | |
| 302 | +// $("#forms_d").show(); | |
| 303 | +// }else{ | |
| 287 | 304 | var intervalList = template('intervalList',{list:result}); |
| 288 | 305 | $('#forms tbody').html(intervalList); |
| 289 | 306 | $('.btn-intervalList').on('click', showIntervalList); |
| 290 | 307 | $("#forms_d").hide(); |
| 291 | 308 | $("#forms").show(); |
| 292 | - } | |
| 309 | +// } | |
| 293 | 310 | $("#forms_d_1").hide(); |
| 294 | 311 | $("#forms_1").hide(); |
| 295 | 312 | $("#export_1").hide(); |
| ... | ... | @@ -396,6 +413,7 @@ |
| 396 | 413 | var fgs=$('#fgsdm').val(); |
| 397 | 414 | var gs=$('#gsdm').val(); |
| 398 | 415 | var levelType=$('#levelType').val(); |
| 416 | + var nature=$('#nature').val(); | |
| 399 | 417 | var lineName = $('#line option:selected').text(); |
| 400 | 418 | if(lineName == "全部线路") |
| 401 | 419 | lineName = $('#fgsdm option:selected').text(); |
| ... | ... | @@ -403,7 +421,7 @@ |
| 403 | 421 | lineName = $('#gsdm option:selected').text(); |
| 404 | 422 | |
| 405 | 423 | var i = layer.load(2); |
| 406 | - $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,type:"export",lineName:lineName},function(result){ | |
| 424 | + $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,nature:nature,type:"export",lineName:lineName},function(result){ | |
| 407 | 425 | var dateTime = ""; |
| 408 | 426 | if(date == endDate){ |
| 409 | 427 | dateTime = moment(date).format("YYYYMMDD"); |
| ... | ... | @@ -411,13 +429,13 @@ |
| 411 | 429 | dateTime = moment(date).format("YYYYMMDD")+"-"+ |
| 412 | 430 | moment(endDate).format("YYYYMMDD"); |
| 413 | 431 | } |
| 414 | - if(levelType=="D"){ | |
| 415 | - window.open("/downloadFile/download?fileName=" | |
| 416 | - +dateTime+"-"+lineName+"-发车到站准点率"); | |
| 417 | - }else{ | |
| 432 | +// if(levelType=="D"){ | |
| 433 | +// window.open("/downloadFile/download?fileName=" | |
| 434 | +// +dateTime+"-"+lineName+"-发车到站准点率"); | |
| 435 | +// }else{ | |
| 418 | 436 | window.open("/downloadFile/download?fileName=" |
| 419 | - +dateTime+"-"+lineName+"-大间隔汇总表"); | |
| 420 | - } | |
| 437 | + +dateTime+"-"+lineName+"-大间情况表"); | |
| 438 | +// } | |
| 421 | 439 | |
| 422 | 440 | layer.close(i); |
| 423 | 441 | }); |
| ... | ... | @@ -428,18 +446,19 @@ |
| 428 | 446 | var date = $("#date").val(); |
| 429 | 447 | var endDate = $("#endDate").val(); |
| 430 | 448 | var levelType=$("#levelType").val(); |
| 431 | - if(levelType=='D'){ | |
| 449 | +// if(levelType=='D'){ | |
| 450 | +// var i = layer.load(2); | |
| 451 | +// $get('/calcSheet/calcListSheet',{line:id,date:date,endDate:endDate,type:'export'},function(result){ | |
| 452 | +// window.open("/downloadFile/download?fileName=发车到站准点率"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")); | |
| 453 | +// layer.close(i); | |
| 454 | +// }); | |
| 455 | +// }else{ | |
| 432 | 456 | var i = layer.load(2); |
| 433 | - $get('/calcSheet/calcListSheet',{line:id,date:date,endDate:endDate,type:'export'},function(result){ | |
| 434 | - window.open("/downloadFile/download?fileName=发车到站准点率"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")); | |
| 435 | - layer.close(i); | |
| 436 | - }); | |
| 437 | - }else{ | |
| 438 | 457 | $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,type:'export'},function(result){ |
| 439 | 458 | window.open("/downloadFile/download?fileName=大间距汇总表"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")); |
| 440 | 459 | layer.close(i); |
| 441 | 460 | }); |
| 442 | - } | |
| 461 | +// } | |
| 443 | 462 | |
| 444 | 463 | }) |
| 445 | 464 | ... | ... |
src/main/resources/static/pages/report/sheet/intervalList.html
| ... | ... | @@ -63,7 +63,7 @@ |
| 63 | 63 | no=id.split(",")[0]; |
| 64 | 64 | dates = id.split(",")[1]; |
| 65 | 65 | var i = layer.load(2); |
| 66 | - $get('/calcInterval/interval',{line:no,date:dates,type:'query'},function(result){ | |
| 66 | + $get('/calcInterval/interval',{line:no,date:dates,status:"detail",type:'query'},function(result){ | |
| 67 | 67 | layer.close(i); |
| 68 | 68 | var calcIntervalList_2 = template('calcIntervalList_2',{list:result}); |
| 69 | 69 | $('#forms_2 tbody').html(calcIntervalList_2); |
| ... | ... | @@ -71,7 +71,7 @@ |
| 71 | 71 | }) |
| 72 | 72 | $("#exportList").on('click',function(){ |
| 73 | 73 | var i = layer.load(2); |
| 74 | - $get('/calcInterval/interval',{line:no,date:dates,type:'export'},function(result){ | |
| 74 | + $get('/calcInterval/interval',{line:no,date:dates,status:"detail",type:'export'},function(result){ | |
| 75 | 75 | window.open("/downloadFile/download?fileName="+dates+"大间隔详细"); |
| 76 | 76 | layer.close(i); |
| 77 | 77 | }); | ... | ... |
src/main/resources/static/pages/report/sheet/intervalSum.html
0 → 100644
| 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 | +</style> | |
| 18 | + | |
| 19 | +<div class="page-head"> | |
| 20 | + <div class="page-title"> | |
| 21 | + <h1>大间隔统计表</h1> | |
| 22 | + </div> | |
| 23 | +</div> | |
| 24 | + | |
| 25 | +<div class="row"> | |
| 26 | + <div class="col-md-12"> | |
| 27 | + <div class="portlet light porttlet-fit bordered"> | |
| 28 | + <div class="portlet-title"> | |
| 29 | + <form class="form-inline" action=""> | |
| 30 | + <div style="display: inline-block; margin-left: 33px;" id="gsdmDiv"> | |
| 31 | + <span class="item-label" style="width: 80px;">公司: </span> | |
| 32 | + <select class="form-control" name="company" id="gsdm" style="width: 180px;"></select> | |
| 33 | + </div> | |
| 34 | + <div style="display: inline-block; margin-left: 28px;" id="fgsdmDiv"> | |
| 35 | + <span class="item-label" style="width: 80px;">分公司: </span> | |
| 36 | + <select class="form-control" name="subCompany" id="fgsdm" style="width: 180px;"></select> | |
| 37 | + </div> | |
| 38 | +<!-- <div style="display: inline-block;margin-left: 18px;"> --> | |
| 39 | +<!-- <span class="item-label" style="width: 80px;">线路性质: </span> --> | |
| 40 | +<!-- <select --> | |
| 41 | +<!-- class="form-control" name="nature" id="nature" --> | |
| 42 | +<!-- style="width: 180px;"> --> | |
| 43 | +<!-- <option value="0">全部线路</option> --> | |
| 44 | +<!-- <option value="1" selected="selected">营运线路</option> --> | |
| 45 | +<!-- <option value="2">非营运线路</option> --> | |
| 46 | +<!-- </select> --> | |
| 47 | +<!-- </div> --> | |
| 48 | + <div style="margin-top: 10px"> | |
| 49 | + </div> | |
| 50 | + <div style="display: inline-block;"> | |
| 51 | + <span class="item-label" style="width: 80px;margin-left: 14px;">开始时间: </span> | |
| 52 | + <input class="form-control" type="text" id="date" style="width: 180px;"/> | |
| 53 | + </div> | |
| 54 | + <div style="display: inline-block;"> | |
| 55 | + <span class="item-label" style="width: 80px;margin-left: 14px;">结束时间: </span> | |
| 56 | + <input class="form-control" type="text" id="endDate" style="width: 180px;"/> | |
| 57 | + </div> | |
| 58 | + | |
| 59 | + <div class="form-group"> | |
| 60 | + <input type="hidden" id="id"/> | |
| 61 | + <input class="btn btn-default" type="button" id="query" value="查询"/> | |
| 62 | +<!-- <input class="btn btn-default" type="button" id="export" value="导出"/> --> | |
| 63 | + </div> | |
| 64 | + </form> | |
| 65 | + </div> | |
| 66 | + | |
| 67 | + <div class="portlet-body"> | |
| 68 | + <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px"> | |
| 69 | + <table class="table table-bordered table-hover table-checkable" id="forms_djg_sum"> | |
| 70 | + <thead> | |
| 71 | + <tr> | |
| 72 | + <td>公司</td> | |
| 73 | + <td>分公司</td> | |
| 74 | + <td>线路等级</td> | |
| 75 | + <td>发生次数</td> | |
| 76 | + <td>班次数</td> | |
| 77 | + <td>万班次发生率</td> | |
| 78 | + </tr> | |
| 79 | + </thead> | |
| 80 | + <tbody> | |
| 81 | + </tbody> | |
| 82 | + </table> | |
| 83 | + | |
| 84 | + </div> | |
| 85 | + | |
| 86 | + </div> | |
| 87 | + </div> | |
| 88 | + </div> | |
| 89 | +</div> | |
| 90 | +<script src="/pages/mforms/singledatas/jquery.table2excel.min.js"></script> | |
| 91 | +<script> | |
| 92 | + $(function(){ | |
| 93 | + // 关闭左侧栏 | |
| 94 | + if (!$('body').hasClass('page-sidebar-closed')) | |
| 95 | + $('.menu-toggler.sidebar-toggler').click(); | |
| 96 | + | |
| 97 | + var d = new Date(); | |
| 98 | + d.setTime(d.getTime() - 1*1000*60*60*24); | |
| 99 | + var year = d.getFullYear(); | |
| 100 | + var month = d.getMonth() + 1; | |
| 101 | + var day = d.getDate(); | |
| 102 | + if(month < 10) | |
| 103 | + month = "0"+month; | |
| 104 | + if(day < 10) | |
| 105 | + day = "0"+day; | |
| 106 | + var dateTime = year + "-" + month + "-" + day; | |
| 107 | + $("#date").datetimepicker({ | |
| 108 | + format : 'YYYY-MM-DD', | |
| 109 | + locale : 'zh-cn', | |
| 110 | + maxDate : dateTime | |
| 111 | + }); | |
| 112 | + $("#endDate").datetimepicker({ | |
| 113 | + format : 'YYYY-MM-DD', | |
| 114 | + locale : 'zh-cn', | |
| 115 | + maxDate : dateTime | |
| 116 | + }); | |
| 117 | + $("#date").val(dateTime); | |
| 118 | + $("#endDate").val(dateTime); | |
| 119 | + | |
| 120 | + var fage=false; | |
| 121 | + var obj = []; | |
| 122 | + var xlList; | |
| 123 | + $.get('/report/lineList',function(result){ | |
| 124 | + xlList=result; | |
| 125 | + | |
| 126 | + $.get('/user/companyData', function(result){ | |
| 127 | + obj = result; | |
| 128 | + var options = ''; | |
| 129 | + for(var i = 0; i < obj.length; i++){ | |
| 130 | + options += '<option value="'+obj[i].companyCode+'">'+obj[i].companyName+'</option>'; | |
| 131 | + } | |
| 132 | + if(obj.length == 0){ | |
| 133 | + $("#gsdmDiv").css('display','none'); | |
| 134 | + }else if(obj.length == 1){ | |
| 135 | + $("#gsdmDiv").css('display','none'); | |
| 136 | + if(obj[0].children.length == 1 || obj[0].children.length == 0) | |
| 137 | + $('#fgsdmDiv').css('display','none'); | |
| 138 | + } | |
| 139 | + $('#gsdm').html(options); | |
| 140 | + | |
| 141 | + updateCompany(); | |
| 142 | + }); | |
| 143 | + }); | |
| 144 | + | |
| 145 | + $("#gsdm").on("change",updateCompany); | |
| 146 | + function updateCompany(){ | |
| 147 | + var company = $('#gsdm').val(); | |
| 148 | + var options = '<option value="">全部分公司</option>'; | |
| 149 | + for(var i = 0; i < obj.length; i++){ | |
| 150 | + if(obj[i].companyCode == company){ | |
| 151 | + var children = obj[i].children; | |
| 152 | + for(var j = 0; j < children.length; j++){ | |
| 153 | + options += '<option value="'+children[j].code+'">'+children[j].name+'</option>'; | |
| 154 | + } | |
| 155 | + } | |
| 156 | + } | |
| 157 | + $('#fgsdm').html(options); | |
| 158 | + } | |
| 159 | + | |
| 160 | + | |
| 161 | + $("#export").attr('disabled',"true"); | |
| 162 | + | |
| 163 | + //查询 | |
| 164 | + $("#query").on('click',function(){ | |
| 165 | + var date = $("#date").val(); | |
| 166 | + var endDate = $("#endDate").val(); | |
| 167 | + var fgs=$('#fgsdm').val(); | |
| 168 | + var gs=$('#gsdm').val(); | |
| 169 | +// var nature=$("#nature").val(); | |
| 170 | + var i = layer.load(2); | |
| 171 | + $get('/calcInterval/sumInterval',{date:date,endDate:endDate,gs:gs,fgs:fgs,type:'query'},function(result){ | |
| 172 | + var intervalList_sum = template('intervalList_sum',{list:result}); | |
| 173 | + $('#forms_djg_sum tbody').html(intervalList_sum); | |
| 174 | + | |
| 175 | + layer.close(i); | |
| 176 | + if(result.length == 0) | |
| 177 | + $("#export").attr('disabled',"true"); | |
| 178 | + else | |
| 179 | + $("#export").removeAttr("disabled"); | |
| 180 | + }); | |
| 181 | + }); | |
| 182 | + | |
| 183 | + $("#export").on("click",function(){ | |
| 184 | + var date = $("#date").val(); | |
| 185 | + var endDate = $("#endDate").val(); | |
| 186 | + var fgs=$('#fgsdm').val(); | |
| 187 | + var gs=$('#gsdm').val(); | |
| 188 | +// var nature=$('#nature').val(); | |
| 189 | + var lineName = $('#fgsdm option:selected').text(); | |
| 190 | + if(lineName=="全部分公司") | |
| 191 | + lineName = $('#gsdm option:selected').text(); | |
| 192 | + | |
| 193 | + var i = layer.load(2); | |
| 194 | + $get('/calcInterval/countList',{date:date,endDate:endDate,gs:gs,fgs:fgs,nature:nature,type:"export",lineName:lineName},function(result){ | |
| 195 | + var dateTime = ""; | |
| 196 | + if(date == endDate){ | |
| 197 | + dateTime = moment(date).format("YYYYMMDD"); | |
| 198 | + } else { | |
| 199 | + dateTime = moment(date).format("YYYYMMDD")+"-"+ | |
| 200 | + moment(endDate).format("YYYYMMDD"); | |
| 201 | + } | |
| 202 | + window.open("/downloadFile/download?fileName=" | |
| 203 | + +dateTime+"-"+lineName+"-大间统计表"); | |
| 204 | + | |
| 205 | + layer.close(i); | |
| 206 | + }); | |
| 207 | + }); | |
| 208 | + | |
| 209 | + | |
| 210 | + }); | |
| 211 | +</script> | |
| 212 | +<script type="text/html" id="intervalList_sum"> | |
| 213 | + {{each list as obj i}} | |
| 214 | + <tr> | |
| 215 | + <td>{{obj.gs}}</td> | |
| 216 | + <td>{{obj.fgs}}</td> | |
| 217 | + <td>{{obj.level}}</td> | |
| 218 | + <td>{{obj.djgNum}}</td> | |
| 219 | + <td>{{obj.bcs}}</td> | |
| 220 | + <td>{{obj.fsl}}</td> | |
| 221 | + </tr> | |
| 222 | + {{/each}} | |
| 223 | + {{if list.length == 0}} | |
| 224 | + <tr> | |
| 225 | + <td colspan="12"><h6 class="muted">没有找到相关数据</h6></td> | |
| 226 | + </tr> | |
| 227 | + {{/if}} | |
| 228 | +</script> | |
| 229 | + | |
| 230 | + | ... | ... |