Commit f2ca883eef8e08c9f95d5061e6d5dcade648f4ef

Authored by 徐烜
2 parents caf8d7f7 ef3da1b4

Merge branch 'pudong_test' of 192.168.168.201:panzhaov5/bsth_control into pudong_test

src/main/java/com/bsth/controller/calc/CalcIntervalController.java
1 package com.bsth.controller.calc; 1 package com.bsth.controller.calc;
2 2
  3 +import java.util.ArrayList;
3 import java.util.List; 4 import java.util.List;
4 import java.util.Map; 5 import java.util.Map;
5 6
@@ -31,7 +32,18 @@ public class CalcIntervalController extends BaseController<CalcInterval,Integer @@ -31,7 +32,18 @@ public class CalcIntervalController extends BaseController<CalcInterval,Integer
31 32
32 @RequestMapping(value="/interval") 33 @RequestMapping(value="/interval")
33 public List<Map<String,Object>> interval(@RequestParam Map<String, Object> map){ 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 return list; 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&lt;CalcInterval, Int @@ -25,7 +25,7 @@ public interface CalcIntervalRepository extends BaseRepository&lt;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 List<CalcInterval> selectByDateAndLine(String line,String date,String date2,String level); 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&lt;CalcInterval,Integer&gt; { @@ -13,5 +13,11 @@ public interface CalcIntervalService extends BaseService&lt;CalcInterval,Integer&gt; {
13 13
14 List<Map<String,Object>> countList(Map<String, Object> map); 14 List<Map<String,Object>> countList(Map<String, Object> map);
15 List<Map<String,Object>> listInterval(Map<String, Object> map); 15 List<Map<String,Object>> listInterval(Map<String, Object> map);
  16 + //根据排班表查询
16 List<Map<String,Object>> interval(Map<String, Object> map); 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 package com.bsth.service.calc.impl; 1 package com.bsth.service.calc.impl;
2 2
  3 +import java.math.BigDecimal;
3 import java.sql.ResultSet; 4 import java.sql.ResultSet;
4 import java.sql.SQLException; 5 import java.sql.SQLException;
5 import java.text.DecimalFormat; 6 import java.text.DecimalFormat;
@@ -31,10 +32,13 @@ import com.bsth.entity.sheet.Sheet; @@ -31,10 +32,13 @@ import com.bsth.entity.sheet.Sheet;
31 import com.bsth.repository.LineRepository; 32 import com.bsth.repository.LineRepository;
32 import com.bsth.repository.calc.CalcIntervalRepository; 33 import com.bsth.repository.calc.CalcIntervalRepository;
33 import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; 34 import com.bsth.repository.realcontrol.ScheduleRealInfoRepository;
  35 +import com.bsth.service.LineService;
34 import com.bsth.service.calc.CalcIntervalService; 36 import com.bsth.service.calc.CalcIntervalService;
35 import com.bsth.service.impl.BaseServiceImpl; 37 import com.bsth.service.impl.BaseServiceImpl;
  38 +import com.bsth.util.Arith;
36 import com.bsth.util.ComparableReal; 39 import com.bsth.util.ComparableReal;
37 import com.bsth.util.ReportUtils; 40 import com.bsth.util.ReportUtils;
  41 +import com.mysql.fabric.xmlrpc.base.Array;
38 42
39 @Service 43 @Service
40 public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Integer> implements CalcIntervalService { 44 public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Integer> implements CalcIntervalService {
@@ -51,6 +55,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -51,6 +55,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
51 LineRepository lineRepository; 55 LineRepository lineRepository;
52 @Autowired 56 @Autowired
53 JdbcTemplate jdbcTemplate; 57 JdbcTemplate jdbcTemplate;
  58 + @Autowired
  59 + LineService lineService;
54 @Override 60 @Override
55 public List<Map<String, Object>> countList(Map<String, Object> map) { 61 public List<Map<String, Object>> countList(Map<String, Object> map) {
56 // TODO Auto-generated method stub 62 // TODO Auto-generated method stub
@@ -62,9 +68,10 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -62,9 +68,10 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
62 String fgs=map.get("fgs").toString().trim(); 68 String fgs=map.get("fgs").toString().trim();
63 String sDate=map.get("date").toString(); 69 String sDate=map.get("date").toString();
64 String eDate=map.get("endDate").toString(); 70 String eDate=map.get("endDate").toString();
  71 + String nature=map.get("nature").toString();
65 72
66 //D级线路显示发车准点率 73 //D级线路显示发车准点率
67 - if(level.equals("D")){ 74 + if(level.equals("D") && false){ //新的计算规则D级也显示大间隔
68 String sql1=" select xl_bm,gsbm,fgsbm,xl_name from bsth_c_calc_interval where date >='"+sDate+"' and date <= '"+eDate+"' and `level`='D'"; 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 if(line.equals("")){ 76 if(line.equals("")){
70 if(fgs.equals("")){ 77 if(fgs.equals("")){
@@ -124,10 +131,13 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -124,10 +131,13 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
124 }); 131 });
125 }else{ 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 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," 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 if(line.equals("")){ 141 if(line.equals("")){
132 if(fgs.equals("")){ 142 if(fgs.equals("")){
133 sql +=" and gsbm = '"+gs+"'"; 143 sql +=" and gsbm = '"+gs+"'";
@@ -164,22 +174,46 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -164,22 +174,46 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
164 m.put("djgZgf", rs.getString("djgZgf")); 174 m.put("djgZgf", rs.getString("djgZgf"));
165 m.put("djgWgf", rs.getString("djgWgf")); 175 m.put("djgWgf", rs.getString("djgWgf"));
166 m.put("djgDg", rs.getString("djgDg")); 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 return m; 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 if(map.get("type").equals("export")){ 205 if(map.get("type").equals("export")){
174 String lineName=""; 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 List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); 218 List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
185 Map<String, Object> m = new HashMap<String, Object>(); 219 Map<String, Object> m = new HashMap<String, Object>();
@@ -193,21 +227,21 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -193,21 +227,21 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
193 dateTime = sDate.replaceAll("-", "")+"-"+ 227 dateTime = sDate.replaceAll("-", "")+"-"+
194 eDate.replaceAll("-", ""); 228 eDate.replaceAll("-", "");
195 } 229 }
196 - listI.add(list.iterator()); 230 + listI.add(listAll.iterator());
197 String path = this.getClass().getResource("/").getPath() + "static/pages/forms/"; 231 String path = this.getClass().getResource("/").getPath() + "static/pages/forms/";
198 String xls=""; 232 String xls="";
199 String xlsName=""; 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 m.put("sDate", sDate); 240 m.put("sDate", sDate);
207 m.put("eDate", eDate); 241 m.put("eDate", eDate);
208 xls="calcIntervalCount.xls"; 242 xls="calcIntervalCount.xls";
209 - xlsName="大间隔汇总表.xls";  
210 - } 243 + xlsName="大间隔情况表.xls";
  244 +// }
211 245
212 ee.excelReplace(listI, new Object[]{m}, path + "mould/" + ""+xls, 246 ee.excelReplace(listI, new Object[]{m}, path + "mould/" + ""+xls,
213 path + "export/"+dateTime+"-"+lineName+"-"+xlsName); 247 path + "export/"+dateTime+"-"+lineName+"-"+xlsName);
@@ -216,7 +250,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -216,7 +250,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
216 e.printStackTrace(); 250 e.printStackTrace();
217 } 251 }
218 } 252 }
219 - return list; 253 + return listAll;
220 } 254 }
221 @Override 255 @Override
222 public List<Map<String, Object>> listInterval(Map<String, Object> map) { 256 public List<Map<String, Object>> listInterval(Map<String, Object> map) {
@@ -230,7 +264,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -230,7 +264,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
230 List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>(); 264 List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>();
231 for (int i = 0; i < listAll.size(); i++) { 265 for (int i = 0; i < listAll.size(); i++) {
232 CalcInterval t=listAll.get(i); 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 Map<String, Object> m=new HashMap<>(); 269 Map<String, Object> m=new HashMap<>();
235 m.put("gs", t.getGsname()); 270 m.put("gs", t.getGsname());
236 m.put("fgs", t.getFgsname()); 271 m.put("fgs", t.getFgsname());
@@ -607,6 +642,49 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -607,6 +642,49 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
607 return list; 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 private Long minFcsjs(int id){ 689 private Long minFcsjs(int id){
612 String minfcsj="02:00"; 690 String minfcsj="02:00";
@@ -620,6 +698,154 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -620,6 +698,154 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
620 Long minSj=Long.parseLong(minSjs[0])*60+Long.parseLong(minSjs[1]); 698 Long minSj=Long.parseLong(minSjs[0])*60+Long.parseLong(minSjs[1]);
621 return minSj; 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 class ComparableJhfc implements Comparator<ScheduleRealInfo>{ 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,7 +31,7 @@
31 <span class="item-label" style="width: 80px;">公司: </span> 31 <span class="item-label" style="width: 80px;">公司: </span>
32 <select class="form-control" name="company" id="gsdm" style="width: 180px;"></select> 32 <select class="form-control" name="company" id="gsdm" style="width: 180px;"></select>
33 </div> 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 <span class="item-label" style="width: 80px;">分公司: </span> 35 <span class="item-label" style="width: 80px;">分公司: </span>
36 <select class="form-control" name="subCompany" id="fgsdm" style="width: 180px;"></select> 36 <select class="form-control" name="subCompany" id="fgsdm" style="width: 180px;"></select>
37 </div> 37 </div>
@@ -39,21 +39,35 @@ @@ -39,21 +39,35 @@
39 <span class="item-label" style="width: 80px;">线路: </span> 39 <span class="item-label" style="width: 80px;">线路: </span>
40 <select class="form-control" name="line" id="line" style="width: 180px;"></select> 40 <select class="form-control" name="line" id="line" style="width: 180px;"></select>
41 </div> 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 <div style="margin-top: 10px"> 52 <div style="margin-top: 10px">
43 </div> 53 </div>
44 <div style="display: inline-block;margin-left: 33px;"> 54 <div style="display: inline-block;margin-left: 33px;">
45 <span class="item-label" style="width: 80px;">等级: </span> 55 <span class="item-label" style="width: 80px;">等级: </span>
46 <select class="form-control" style="width: 180px;" id=levelType> 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 <option value="D">D级线路</option> 61 <option value="D">D级线路</option>
  62 + <option value="E">E级线路</option>
49 </select> 63 </select>
50 </div> 64 </div>
51 <div style="display: inline-block;"> 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 <input class="form-control" type="text" id="date" style="width: 180px;"/> 67 <input class="form-control" type="text" id="date" style="width: 180px;"/>
54 </div> 68 </div>
55 <div style="display: inline-block;"> 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 <input class="form-control" type="text" id="endDate" style="width: 180px;"/> 71 <input class="form-control" type="text" id="endDate" style="width: 180px;"/>
58 </div> 72 </div>
59 73
@@ -106,7 +120,6 @@ @@ -106,7 +120,6 @@
106 </tbody> 120 </tbody>
107 </table> 121 </table>
108 122
109 -  
110 </div> 123 </div>
111 124
112 <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px"> 125 <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px">
@@ -126,7 +139,7 @@ @@ -126,7 +139,7 @@
126 <td>低谷次数</td> 139 <td>低谷次数</td>
127 <td>全日班次数</td> 140 <td>全日班次数</td>
128 <td>万班次发生率</td> 141 <td>万班次发生率</td>
129 - <td>最大间隔</td> 142 + <td>最大间隔时间</td>
130 <td>查看</td> 143 <td>查看</td>
131 </tr> 144 </tr>
132 </thead> 145 </thead>
@@ -255,10 +268,13 @@ @@ -255,10 +268,13 @@
255 if($("#line").val() == " "){ 268 if($("#line").val() == " "){
256 $("#gsdm").attr("disabled", false); 269 $("#gsdm").attr("disabled", false);
257 $("#fgsdm").attr("disabled", false); 270 $("#fgsdm").attr("disabled", false);
  271 + $("#levelType").val('A');
258 } else { 272 } else {
259 var temp = tempData[$("#line").val()].split(":"); 273 var temp = tempData[$("#line").val()].split(":");
260 $("#gsdm").val(temp[0]); 274 $("#gsdm").val(temp[0]);
261 updateCompany(); 275 updateCompany();
  276 + $("#nature").val(0);
  277 + $("#levelType").val('');
262 $("#fgsdm").val(temp[1]); 278 $("#fgsdm").val(temp[1]);
263 $("#gsdm").attr("disabled", true); 279 $("#gsdm").attr("disabled", true);
264 $("#fgsdm").attr("disabled", true); 280 $("#fgsdm").attr("disabled", true);
@@ -275,21 +291,22 @@ @@ -275,21 +291,22 @@
275 var fgs=$('#fgsdm').val(); 291 var fgs=$('#fgsdm').val();
276 var gs=$('#gsdm').val(); 292 var gs=$('#gsdm').val();
277 var levelType=$('#levelType').val(); 293 var levelType=$('#levelType').val();
  294 + var nature=$("#nature").val();
278 var i = layer.load(2); 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 var intervalList = template('intervalList',{list:result}); 304 var intervalList = template('intervalList',{list:result});
288 $('#forms tbody').html(intervalList); 305 $('#forms tbody').html(intervalList);
289 $('.btn-intervalList').on('click', showIntervalList); 306 $('.btn-intervalList').on('click', showIntervalList);
290 $("#forms_d").hide(); 307 $("#forms_d").hide();
291 $("#forms").show(); 308 $("#forms").show();
292 - } 309 +// }
293 $("#forms_d_1").hide(); 310 $("#forms_d_1").hide();
294 $("#forms_1").hide(); 311 $("#forms_1").hide();
295 $("#export_1").hide(); 312 $("#export_1").hide();
@@ -396,6 +413,7 @@ @@ -396,6 +413,7 @@
396 var fgs=$('#fgsdm').val(); 413 var fgs=$('#fgsdm').val();
397 var gs=$('#gsdm').val(); 414 var gs=$('#gsdm').val();
398 var levelType=$('#levelType').val(); 415 var levelType=$('#levelType').val();
  416 + var nature=$('#nature').val();
399 var lineName = $('#line option:selected').text(); 417 var lineName = $('#line option:selected').text();
400 if(lineName == "全部线路") 418 if(lineName == "全部线路")
401 lineName = $('#fgsdm option:selected').text(); 419 lineName = $('#fgsdm option:selected').text();
@@ -403,7 +421,7 @@ @@ -403,7 +421,7 @@
403 lineName = $('#gsdm option:selected').text(); 421 lineName = $('#gsdm option:selected').text();
404 422
405 var i = layer.load(2); 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 var dateTime = ""; 425 var dateTime = "";
408 if(date == endDate){ 426 if(date == endDate){
409 dateTime = moment(date).format("YYYYMMDD"); 427 dateTime = moment(date).format("YYYYMMDD");
@@ -411,13 +429,13 @@ @@ -411,13 +429,13 @@
411 dateTime = moment(date).format("YYYYMMDD")+"-"+ 429 dateTime = moment(date).format("YYYYMMDD")+"-"+
412 moment(endDate).format("YYYYMMDD"); 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 window.open("/downloadFile/download?fileName=" 436 window.open("/downloadFile/download?fileName="
419 - +dateTime+"-"+lineName+"-大间隔汇总表");  
420 - } 437 + +dateTime+"-"+lineName+"-大间情况表");
  438 +// }
421 439
422 layer.close(i); 440 layer.close(i);
423 }); 441 });
@@ -428,18 +446,19 @@ @@ -428,18 +446,19 @@
428 var date = $("#date").val(); 446 var date = $("#date").val();
429 var endDate = $("#endDate").val(); 447 var endDate = $("#endDate").val();
430 var levelType=$("#levelType").val(); 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 var i = layer.load(2); 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 $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,type:'export'},function(result){ 457 $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,type:'export'},function(result){
439 window.open("/downloadFile/download?fileName=大间距汇总表"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")); 458 window.open("/downloadFile/download?fileName=大间距汇总表"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD"));
440 layer.close(i); 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,7 +63,7 @@
63 no=id.split(",")[0]; 63 no=id.split(",")[0];
64 dates = id.split(",")[1]; 64 dates = id.split(",")[1];
65 var i = layer.load(2); 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 layer.close(i); 67 layer.close(i);
68 var calcIntervalList_2 = template('calcIntervalList_2',{list:result}); 68 var calcIntervalList_2 = template('calcIntervalList_2',{list:result});
69 $('#forms_2 tbody').html(calcIntervalList_2); 69 $('#forms_2 tbody').html(calcIntervalList_2);
@@ -71,7 +71,7 @@ @@ -71,7 +71,7 @@
71 }) 71 })
72 $("#exportList").on('click',function(){ 72 $("#exportList").on('click',function(){
73 var i = layer.load(2); 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 window.open("/downloadFile/download?fileName="+dates+"大间隔详细"); 75 window.open("/downloadFile/download?fileName="+dates+"大间隔详细");
76 layer.close(i); 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 +