Commit 5f5c072229c3c05517787840fdbd4fd5b3772de5

Authored by 娄高锋
1 parent 2d075400

大间隔统计表 新增周一至周五与周六日的查询条件

src/main/java/com/bsth/service/calc/impl/CalcIntervalServiceImpl.java
@@ -13,9 +13,11 @@ import java.util.Comparator; @@ -13,9 +13,11 @@ import java.util.Comparator;
13 import java.util.Date; 13 import java.util.Date;
14 import java.util.GregorianCalendar; 14 import java.util.GregorianCalendar;
15 import java.util.HashMap; 15 import java.util.HashMap;
  16 +import java.util.HashSet;
16 import java.util.Iterator; 17 import java.util.Iterator;
17 import java.util.List; 18 import java.util.List;
18 import java.util.Map; 19 import java.util.Map;
  20 +import java.util.Set;
19 21
20 import org.apache.commons.lang3.StringUtils; 22 import org.apache.commons.lang3.StringUtils;
21 import org.springframework.beans.factory.annotation.Autowired; 23 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,8 +29,6 @@ import com.bsth.data.BasicData; @@ -27,8 +29,6 @@ import com.bsth.data.BasicData;
27 import com.bsth.entity.Line; 29 import com.bsth.entity.Line;
28 import com.bsth.entity.calc.CalcInterval; 30 import com.bsth.entity.calc.CalcInterval;
29 import com.bsth.entity.realcontrol.ScheduleRealInfo; 31 import com.bsth.entity.realcontrol.ScheduleRealInfo;
30 -import com.bsth.entity.sheet.CalcSheet;  
31 -import com.bsth.entity.sheet.Sheet;  
32 import com.bsth.repository.LineRepository; 32 import com.bsth.repository.LineRepository;
33 import com.bsth.repository.calc.CalcIntervalRepository; 33 import com.bsth.repository.calc.CalcIntervalRepository;
34 import com.bsth.repository.realcontrol.ScheduleRealInfoRepository; 34 import com.bsth.repository.realcontrol.ScheduleRealInfoRepository;
@@ -36,9 +36,7 @@ import com.bsth.service.LineService; @@ -36,9 +36,7 @@ import com.bsth.service.LineService;
36 import com.bsth.service.calc.CalcIntervalService; 36 import com.bsth.service.calc.CalcIntervalService;
37 import com.bsth.service.impl.BaseServiceImpl; 37 import com.bsth.service.impl.BaseServiceImpl;
38 import com.bsth.util.Arith; 38 import com.bsth.util.Arith;
39 -import com.bsth.util.ComparableReal;  
40 import com.bsth.util.ReportUtils; 39 import com.bsth.util.ReportUtils;
41 -import com.mysql.fabric.xmlrpc.base.Array;  
42 40
43 @Service 41 @Service
44 public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Integer> implements CalcIntervalService { 42 public class CalcIntervalServiceImpl extends BaseServiceImpl<CalcInterval,Integer> implements CalcIntervalService {
@@ -61,6 +59,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -61,6 +59,8 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
61 public List<Map<String, Object>> countList(Map<String, Object> map) { 59 public List<Map<String, Object>> countList(Map<String, Object> map) {
62 // TODO Auto-generated method stub 60 // TODO Auto-generated method stub
63 final DecimalFormat df = new DecimalFormat("0.00"); 61 final DecimalFormat df = new DecimalFormat("0.00");
  62 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  63 +
64 List<Map<String, Object>> list=new ArrayList<>(); 64 List<Map<String, Object>> list=new ArrayList<>();
65 String level=map.get("levelType").toString(); 65 String level=map.get("levelType").toString();
66 String line=map.get("line").toString().trim(); 66 String line=map.get("line").toString().trim();
@@ -69,6 +69,25 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -69,6 +69,25 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
69 String sDate=map.get("date").toString(); 69 String sDate=map.get("date").toString();
70 String eDate=map.get("endDate").toString(); 70 String eDate=map.get("endDate").toString();
71 String nature=map.get("nature").toString(); 71 String nature=map.get("nature").toString();
  72 + String week=map.get("week").toString();
  73 + String weekend="";
  74 +
  75 + try {
  76 + if(!("0".equals(week))){
  77 + Date d1 = sdf.parse(sDate);
  78 + Date d2 = sdf.parse(eDate);
  79 + for(;d1.getTime() <= d2.getTime();d1.setTime(d1.getTime() + 1l*1000*60*60*24)){
  80 + if(d1.toString().contains("Sat") || d1.toString().contains("Sun")){
  81 + if(weekend.length() > 0){
  82 + weekend = weekend + ",";
  83 + }
  84 + weekend = weekend + "'" + sdf.format(d1) + "'";
  85 + }
  86 + }
  87 + }
  88 + } catch (Exception e) {
  89 + // TODO: handle exception
  90 + }
72 91
73 //D级线路显示发车准点率 92 //D级线路显示发车准点率
74 if(level.equals("D") && false){ //新的计算规则D级也显示大间隔 93 if(level.equals("D") && false){ //新的计算规则D级也显示大间隔
@@ -136,7 +155,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -136,7 +155,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
136 // + "SUM(djg_dg) as djgDg,SUM(djg_zgf) as djgZgf,SUM(djg_wgf) as djgWgf,MAX(djg_time) as djgTime " 155 // + "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' "; 156 // + "from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"' and level <> 'D' ";
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," 157 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,"
139 - + "SUM(djg_dg) as djgDg,SUM(djg_zgf) as djgZgf,SUM(djg_wgf) as djgWgf,MAX(djg_time) as djgTime, level " 158 + + "SUM(djg_dg) as djgDg,SUM(djg_zgf) as djgZgf,SUM(djg_wgf) as djgWgf,MAX(djg_time) as djgTime,substr(level,1,1) level "
140 + "from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"' and level like '%"+level+"%' " 159 + "from bsth_c_calc_interval where date>= '"+sDate+"' and date<='"+eDate+"' and level like '%"+level+"%' "
141 + "and level is not null and level <> '' "; 160 + "and level is not null and level <> '' ";
142 if(line.equals("")){ 161 if(line.equals("")){
@@ -148,8 +167,13 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -148,8 +167,13 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
148 }else{ 167 }else{
149 sql +=" and xl_bm ='"+line+"'"; 168 sql +=" and xl_bm ='"+line+"'";
150 } 169 }
151 - sql += " group by xl_bm,gsbm,fgsbm,xl_name,level"  
152 - +" order by xl_bm,level"; 170 + if(weekend.length() > 0 && "1".equals(week)){
  171 + sql +=" and date not in ("+weekend+")";
  172 + } else if(weekend.length() > 0 && "2".equals(week)){
  173 + sql +=" and date in ("+weekend+")";
  174 + }
  175 + sql += " group by xl_bm,gsbm,fgsbm,xl_name,substr(level,1,1)"
  176 + +" order by gsbm,fgsbm,xl_bm,level";
153 177
154 list=jdbcTemplate.query(sql, 178 list=jdbcTemplate.query(sql,
155 new RowMapper<Map<String,Object>>(){ 179 new RowMapper<Map<String,Object>>(){
@@ -171,15 +195,15 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -171,15 +195,15 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
171 }else{ 195 }else{
172 m.put("fsl", "0.0"); 196 m.put("fsl", "0.0");
173 } 197 }
174 - m.put("djgAll", rs.getString("djgAll"));  
175 - m.put("djgGf", rs.getString("djgGf"));  
176 - m.put("djgZgf", rs.getString("djgZgf"));  
177 - m.put("djgWgf", rs.getString("djgWgf"));  
178 - m.put("djgDg", rs.getString("djgDg")); 198 + m.put("djgAll", rs.getString("djgAll")!=null?rs.getString("djgAll"):"");
  199 + m.put("djgGf", rs.getString("djgGf")!=null?rs.getString("djgGf"):"");
  200 + m.put("djgZgf", rs.getString("djgZgf")!=null?rs.getString("djgZgf"):"");
  201 + m.put("djgWgf", rs.getString("djgWgf")!=null?rs.getString("djgWgf"):"");
  202 + m.put("djgDg", rs.getString("djgDg")!=null?rs.getString("djgDg"):"");
179 if("0".equals(rs.getString("djgTime")) || "0.0".equals(rs.getString("djgTime"))){ 203 if("0".equals(rs.getString("djgTime")) || "0.0".equals(rs.getString("djgTime"))){
180 m.put("djgTime", ""); 204 m.put("djgTime", "");
181 } else { 205 } else {
182 - m.put("djgTime", rs.getString("djgTime")); 206 + m.put("djgTime", rs.getString("djgTime")!=null?rs.getString("djgTime"):"");
183 } 207 }
184 if(rs.getString("level").toString().trim().length() > 1){ 208 if(rs.getString("level").toString().trim().length() > 1){
185 m.put("level", rs.getString("level").trim().substring(0, 1)); 209 m.put("level", rs.getString("level").trim().substring(0, 1));
@@ -263,15 +287,44 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -263,15 +287,44 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
263 public List<Map<String, Object>> listInterval(Map<String, Object> map) { 287 public List<Map<String, Object>> listInterval(Map<String, Object> map) {
264 // TODO Auto-generated method stub 288 // TODO Auto-generated method stub
265 final DecimalFormat df = new DecimalFormat("0.00"); 289 final DecimalFormat df = new DecimalFormat("0.00");
  290 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
266 291
267 String line=map.get("line").toString(); 292 String line=map.get("line").toString();
268 String date=map.get("date").toString(); 293 String date=map.get("date").toString();
269 String endDate=map.get("endDate").toString(); 294 String endDate=map.get("endDate").toString();
270 String levelType=map.get("levelType").toString(); 295 String levelType=map.get("levelType").toString();
  296 + String week=map.get("week").toString();
  297 + Set<String> weekend = new HashSet<String>();
  298 +
  299 + try {
  300 + if(!("0".equals(week))){
  301 + Date d1 = sdf.parse(date);
  302 + Date d2 = sdf.parse(endDate);
  303 + for(;d1.getTime() <= d2.getTime();d1.setTime(d1.getTime() + 1l*1000*60*60*24)){
  304 + if(d1.toString().contains("Sat") || d1.toString().contains("Sun")){
  305 + weekend.add(sdf.format(d1));
  306 + }
  307 + }
  308 + }
  309 + } catch (Exception e) {
  310 + // TODO: handle exception
  311 + }
  312 +
271 List<CalcInterval> listAll=calcIntervalRepository.selectByDateAndLine(line, date, endDate, levelType); 313 List<CalcInterval> listAll=calcIntervalRepository.selectByDateAndLine(line, date, endDate, levelType);
272 List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>(); 314 List<Map<String, Object>> tempList = new ArrayList<Map<String, Object>>();
273 for (int i = 0; i < listAll.size(); i++) { 315 for (int i = 0; i < listAll.size(); i++) {
274 CalcInterval t=listAll.get(i); 316 CalcInterval t=listAll.get(i);
  317 +
  318 + if("1".equals(week)){
  319 + if(weekend.contains(t.getDate())){
  320 + continue;
  321 + }
  322 + } else if("2".equals(week)){
  323 + if(!(weekend.contains(t.getDate()))){
  324 + continue;
  325 + }
  326 + }
  327 +
275 // if(!t.getLevel().equals("D") && t.getDjgAll()>0){ 328 // if(!t.getLevel().equals("D") && t.getDjgAll()>0){
276 if(t.getDjgAll() != null && t.getDjgAll() > 0){ 329 if(t.getDjgAll() != null && t.getDjgAll() > 0){
277 Map<String, Object> m=new HashMap<>(); 330 Map<String, Object> m=new HashMap<>();
@@ -300,7 +353,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -300,7 +353,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
300 tempList.add(m); 353 tempList.add(m);
301 } 354 }
302 } 355 }
303 - if(map.get("type").equals("export")){ 356 + if(map.get("type").equals("export")){
304 List<Iterator<?>> listI = new ArrayList<Iterator<?>>(); 357 List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
305 Map<String, Object> m = new HashMap<String, Object>(); 358 Map<String, Object> m = new HashMap<String, Object>();
306 m.put("date", date); 359 m.put("date", date);
@@ -710,10 +763,29 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -710,10 +763,29 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
710 @Override 763 @Override
711 public List<Map<String, Object>> exportDetail(Map<String, Object> map) { 764 public List<Map<String, Object>> exportDetail(Map<String, Object> map) {
712 // TODO Auto-generated method stub 765 // TODO Auto-generated method stub
  766 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  767 +
713 String line=map.get("line").toString().trim(); 768 String line=map.get("line").toString().trim();
714 String date=map.get("date").toString(); 769 String date=map.get("date").toString();
715 String endDate=map.get("endDate").toString(); 770 String endDate=map.get("endDate").toString();
716 String level=map.get("levelType").toString(); 771 String level=map.get("levelType").toString();
  772 + String week=map.get("week").toString();
  773 + Set<String> weekend = new HashSet<String>();
  774 +
  775 + try {
  776 + if(!("0".equals(week))){
  777 + Date d1 = sdf.parse(date);
  778 + Date d2 = sdf.parse(endDate);
  779 + for(;d1.getTime() <= d2.getTime();d1.setTime(d1.getTime() + 1l*1000*60*60*24)){
  780 + if(d1.toString().contains("Sat") || d1.toString().contains("Sun")){
  781 + weekend.add(sdf.format(d1));
  782 + }
  783 + }
  784 + }
  785 + } catch (Exception e) {
  786 + // TODO: handle exception
  787 + }
  788 +
717 String nature="0", gs = "", fgs = ""; 789 String nature="0", gs = "", fgs = "";
718 if(map.containsKey("nature")){ 790 if(map.containsKey("nature")){
719 nature = map.get("nature").toString().trim(); 791 nature = map.get("nature").toString().trim();
@@ -735,7 +807,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -735,7 +807,7 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
735 + " d.date >= '"+date+"' and d.date <= '"+endDate+"' " 807 + " d.date >= '"+date+"' and d.date <= '"+endDate+"' "
736 + " and d.level like '%"+level+"%' " 808 + " and d.level like '%"+level+"%' "
737 + " and d.level is not null and d.level <> '' " 809 + " and d.level is not null and d.level <> '' "
738 - + " order by d.line_code, d.date asc, d.level asc "; 810 + + " order by i.gsbm, i.fgsbm, d.line_code, d.date asc, d.level asc ";
739 811
740 List<Map<String, Object>> resList=jdbcTemplate.query(sql, 812 List<Map<String, Object>> resList=jdbcTemplate.query(sql,
741 new RowMapper<Map<String,Object>>(){ 813 new RowMapper<Map<String,Object>>(){
@@ -763,6 +835,17 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -763,6 +835,17 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
763 Map<String, Boolean> lineMap=lineService.lineNature(); 835 Map<String, Boolean> lineMap=lineService.lineNature();
764 for (int i = 0; i < resList.size(); i++) { 836 for (int i = 0; i < resList.size(); i++) {
765 Map<String, Object> m=resList.get(i); 837 Map<String, Object> m=resList.get(i);
  838 +
  839 + if("1".equals(week)){
  840 + if(weekend.contains(m.get("date"))){
  841 + continue;
  842 + }
  843 + } else if("2".equals(week)){
  844 + if(!(weekend.contains(m.get("date")))){
  845 + continue;
  846 + }
  847 + }
  848 +
766 if(null != line && line.length() > 0){ 849 if(null != line && line.length() > 0){
767 if(line.equals(m.get("xlBm").toString())){ 850 if(line.equals(m.get("xlBm").toString())){
768 list.add(m); 851 list.add(m);
@@ -811,12 +894,33 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -811,12 +894,33 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
811 894
812 public List<Map<String, Object>> sumInterval(Map<String, Object> map) { 895 public List<Map<String, Object>> sumInterval(Map<String, Object> map) {
813 // TODO Auto-generated method stub 896 // TODO Auto-generated method stub
814 - final DecimalFormat df = new DecimalFormat("0.00"); 897 + final DecimalFormat df = new DecimalFormat("0.00");
  898 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  899 +
815 String gs=map.get("gs").toString().trim(); 900 String gs=map.get("gs").toString().trim();
816 String fgs=map.get("fgs").toString().trim(); 901 String fgs=map.get("fgs").toString().trim();
817 String sDate=map.get("date").toString(); 902 String sDate=map.get("date").toString();
818 String eDate=map.get("endDate").toString(); 903 String eDate=map.get("endDate").toString();
819 String nature=map.get("nature").toString(); 904 String nature=map.get("nature").toString();
  905 + String week=map.get("week").toString();
  906 + String weekend="";
  907 +
  908 + try {
  909 + if(!("0".equals(week))){
  910 + Date d1 = sdf.parse(sDate);
  911 + Date d2 = sdf.parse(eDate);
  912 + for(;d1.getTime() <= d2.getTime();d1.setTime(d1.getTime() + 1l*1000*60*60*24)){
  913 + if(d1.toString().contains("Sat") || d1.toString().contains("Sun")){
  914 + if(weekend.length() > 0){
  915 + weekend = weekend + ",";
  916 + }
  917 + weekend = weekend + "'" + sdf.format(d1) + "'";
  918 + }
  919 + }
  920 + }
  921 + } catch (Exception e) {
  922 + // TODO: handle exception
  923 + }
820 924
821 List<Map<String, Object>> listAll=new ArrayList<Map<String, Object>>(); 925 List<Map<String, Object>> listAll=new ArrayList<Map<String, Object>>();
822 926
@@ -830,6 +934,11 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege @@ -830,6 +934,11 @@ public class CalcIntervalServiceImpl extends BaseServiceImpl&lt;CalcInterval,Intege
830 sql +=" and gsbm = '"+gs+"'"; 934 sql +=" and gsbm = '"+gs+"'";
831 } 935 }
832 } 936 }
  937 + if(weekend.length() > 0 && "1".equals(week)){
  938 + sql +=" and date not in ("+weekend+")";
  939 + } else if(weekend.length() > 0 && "2".equals(week)){
  940 + sql +=" and date in ("+weekend+")";
  941 + }
833 sql += " order by gsbm,fgsbm,level"; 942 sql += " order by gsbm,fgsbm,level";
834 943
835 List<Map<String, Object>> countList = new ArrayList<Map<String, Object>>(); 944 List<Map<String, Object>> countList = new ArrayList<Map<String, Object>>();
src/main/resources/static/pages/report/sheet/intervalCount.html
@@ -27,54 +27,60 @@ @@ -27,54 +27,60 @@
27 <div class="portlet light porttlet-fit bordered"> 27 <div class="portlet light porttlet-fit bordered">
28 <div class="portlet-title"> 28 <div class="portlet-title">
29 <form class="form-inline" action=""> 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: 33px;">  
39 - <span class="item-label" style="width: 80px;">线路: </span>  
40 - <select class="form-control" name="line" id="line" style="width: 180px;"></select>  
41 - </div>  
42 - <div style="display: inline-block;margin-left: 18px;"> 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: 160px;"></select>
  33 + </div>
  34 + <div style="display: inline-block; margin-left: 20px;" id="fgsdmDiv">
  35 + <span class="item-label" style="width: 80px;">分公司: </span>
  36 + <select class="form-control" name="subCompany" id="fgsdm" style="width: 160px;"></select>
  37 + </div>
  38 + <div style="display: inline-block;margin-left: 33px;">
  39 + <span class="item-label" style="width: 80px;">线路: </span>
  40 + <select class="form-control" name="line" id="line" style="width: 160px;"></select>
  41 + </div>
  42 + <div style="display: inline-block;margin-left: 6px;">
43 <span class="item-label" style="width: 80px;">线路性质: </span> 43 <span class="item-label" style="width: 80px;">线路性质: </span>
44 - <select  
45 - class="form-control" name="nature" id="nature"  
46 - style="width: 180px;"> 44 + <select class="form-control" name="nature" id="nature" style="width: 160px;">
47 <option value="0">全部线路</option> 45 <option value="0">全部线路</option>
48 <option value="1" selected="selected">营运线路</option> 46 <option value="1" selected="selected">营运线路</option>
49 <option value="2">非营运线路</option> 47 <option value="2">非营运线路</option>
50 </select> 48 </select>
51 - </div>  
52 - <div style="margin-top: 10px"> 49 + </div>
  50 + <div style="display: inline-block;margin-left: 20px;">
  51 + <span class="item-label" style="width: 80px;">日期: </span>
  52 + <select class="form-control" name="week" id="week" style="width: 160px;">
  53 + <option value="0" selected="selected">全部</option>
  54 + <option value="1">周一至周五</option>
  55 + <option value="2">周六日</option>
  56 + </select>
  57 + </div>
  58 + <div style="margin-top: 10px">
53 </div> 59 </div>
54 <div style="display: inline-block;margin-left: 33px;"> 60 <div style="display: inline-block;margin-left: 33px;">
55 - <span class="item-label" style="width: 80px;">等级: </span>  
56 - <select class="form-control" style="width: 180px;" id=levelType>  
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>  
61 - <option value="D">D级线路</option>  
62 - <option value="E">E级线路</option>  
63 - </select> 61 + <span class="item-label" style="width: 80px;">等级: </span>
  62 + <select class="form-control" style="width: 160px;" id=levelType>
  63 + <option id="levelTypeAll" value="">全部</option>
  64 + <option value="A" selected="selected">A级线路</option>
  65 + <option value="B">B级线路</option>
  66 + <option value="C">C级线路</option>
  67 + <option value="D">D级线路</option>
  68 + <option value="E">E级线路</option>
  69 + </select>
64 </div> 70 </div>
65 <div style="display: inline-block;"> 71 <div style="display: inline-block;">
66 - <span class="item-label" style="width: 80px;margin-left: 14px;">开始时间: </span>  
67 - <input class="form-control" type="text" id="date" style="width: 180px;"/> 72 + <span class="item-label" style="width: 80px;margin-left: 6px;">开始时间: </span>
  73 + <input class="form-control" type="text" id="date" style="width: 160px;"/>
68 </div> 74 </div>
69 <div style="display: inline-block;"> 75 <div style="display: inline-block;">
70 - <span class="item-label" style="width: 80px;margin-left: 14px;">结束时间: </span>  
71 - <input class="form-control" type="text" id="endDate" style="width: 180px;"/> 76 + <span class="item-label" style="width: 80px;margin-left: 6px;">结束时间: </span>
  77 + <input class="form-control" type="text" id="endDate" style="width: 160px;"/>
72 </div> 78 </div>
73 79
74 <div class="form-group"> 80 <div class="form-group">
75 <input type="hidden" id="id"/> 81 <input type="hidden" id="id"/>
76 <input type="hidden" id="dataLevel"/> 82 <input type="hidden" id="dataLevel"/>
77 - <input class="btn btn-default" type="button" id="query" value="查询"/> 83 + <input class="btn btn-default" type="button" id="query" value="查询" style="margin-left: 2px;"/>
78 <input class="btn btn-default" type="button" id="export" value="导出" title="导出查询的大间隔情况"/> 84 <input class="btn btn-default" type="button" id="export" value="导出" title="导出查询的大间隔情况"/>
79 <input class="btn btn-default" type="button" id="export2" value="导出全部详情" title="导出查询的全部线路的大间隔详细"/> 85 <input class="btn btn-default" type="button" id="export2" value="导出全部详情" title="导出查询的全部线路的大间隔详细"/>
80 </div> 86 </div>
@@ -297,8 +303,9 @@ @@ -297,8 +303,9 @@
297 var gs=$('#gsdm').val(); 303 var gs=$('#gsdm').val();
298 var levelType=$('#levelType').val(); 304 var levelType=$('#levelType').val();
299 var nature=$("#nature").val(); 305 var nature=$("#nature").val();
  306 + var week=$("#week").val();
300 var i = layer.load(2); 307 var i = layer.load(2);
301 - $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,nature:nature,type:'query'},function(result){ 308 + $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,nature:nature,week:week,type:'query'},function(result){
302 // if(levelType=="D"){ 309 // if(levelType=="D"){
303 // var intervalList_d = template('intervalList_d',{list:result}); 310 // var intervalList_d = template('intervalList_d',{list:result});
304 // $('#forms_d tbody').html(intervalList_d); 311 // $('#forms_d tbody').html(intervalList_d);
@@ -334,9 +341,10 @@ @@ -334,9 +341,10 @@
334 var date = $("#date").val(); 341 var date = $("#date").val();
335 var endDate = $("#endDate").val(); 342 var endDate = $("#endDate").val();
336 var levelType=$(this).data('level'); 343 var levelType=$(this).data('level');
  344 + var week=$("#week").val();
337 $("#id").val(id); 345 $("#id").val(id);
338 $("#dataLevel").val(levelType); 346 $("#dataLevel").val(levelType);
339 - $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,levelType:levelType,type:'query'},function(result){ 347 + $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,levelType:levelType,week:week,type:'query'},function(result){
340 var intervalList = template('intervalList_1',{list:result}); 348 var intervalList = template('intervalList_1',{list:result});
341 $('#forms_1 tbody').html(intervalList); 349 $('#forms_1 tbody').html(intervalList);
342 $('.btn-intervalList_1').on('click', openIntervalList); 350 $('.btn-intervalList_1').on('click', openIntervalList);
@@ -427,6 +435,7 @@ @@ -427,6 +435,7 @@
427 var gs=$('#gsdm').val(); 435 var gs=$('#gsdm').val();
428 var levelType=$('#levelType').val(); 436 var levelType=$('#levelType').val();
429 var nature=$('#nature').val(); 437 var nature=$('#nature').val();
  438 + var week=$("#week").val();
430 var lineName = $('#line option:selected').text(); 439 var lineName = $('#line option:selected').text();
431 if(lineName == "全部线路") 440 if(lineName == "全部线路")
432 lineName = $('#fgsdm option:selected').text(); 441 lineName = $('#fgsdm option:selected').text();
@@ -434,7 +443,7 @@ @@ -434,7 +443,7 @@
434 lineName = $('#gsdm option:selected').text(); 443 lineName = $('#gsdm option:selected').text();
435 444
436 var i = layer.load(2); 445 var i = layer.load(2);
437 - $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,nature:nature,type:"export",lineName:lineName},function(result){ 446 + $get('/calcInterval/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs,levelType:levelType,nature:nature,week:week,type:"export",lineName:lineName},function(result){
438 var dateTime = ""; 447 var dateTime = "";
439 if(date == endDate){ 448 if(date == endDate){
440 dateTime = moment(date).format("YYYYMMDD"); 449 dateTime = moment(date).format("YYYYMMDD");
@@ -462,9 +471,10 @@ @@ -462,9 +471,10 @@
462 var nature=$('#nature').val(); 471 var nature=$('#nature').val();
463 var fgs=$('#fgsdm').val(); 472 var fgs=$('#fgsdm').val();
464 var gs=$('#gsdm').val(); 473 var gs=$('#gsdm').val();
  474 + var week=$("#week").val();
465 475
466 var i = layer.load(2); 476 var i = layer.load(2);
467 - $get('/calcInterval/exportDetail',{gs:gs,fgs:fgs,line:id,date:date,endDate:endDate,levelType:levelType,nature:nature,type:'export'},function(result){ 477 + $get('/calcInterval/exportDetail',{gs:gs,fgs:fgs,line:id,date:date,endDate:endDate,levelType:levelType,nature:nature,week:week,type:'export'},function(result){
468 window.open("/downloadFile/download?fileName="+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")+"大间隔详细"); 478 window.open("/downloadFile/download?fileName="+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")+"大间隔详细");
469 layer.close(i); 479 layer.close(i);
470 }); 480 });
@@ -475,6 +485,7 @@ @@ -475,6 +485,7 @@
475 var date = $("#date").val(); 485 var date = $("#date").val();
476 var endDate = $("#endDate").val(); 486 var endDate = $("#endDate").val();
477 var levelType=$("#dataLevel").val(); 487 var levelType=$("#dataLevel").val();
  488 + var week=$("#week").val();
478 // if(levelType=='D'){ 489 // if(levelType=='D'){
479 // var i = layer.load(2); 490 // var i = layer.load(2);
480 // $get('/calcSheet/calcListSheet',{line:id,date:date,endDate:endDate,type:'export'},function(result){ 491 // $get('/calcSheet/calcListSheet',{line:id,date:date,endDate:endDate,type:'export'},function(result){
@@ -483,7 +494,7 @@ @@ -483,7 +494,7 @@
483 // }); 494 // });
484 // }else{ 495 // }else{
485 var i = layer.load(2); 496 var i = layer.load(2);
486 - $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,levelType:levelType,type:'export'},function(result){ 497 + $get('/calcInterval/listInterval',{line:id,date:date,endDate:endDate,levelType:levelType,week:week,type:'export'},function(result){
487 window.open("/downloadFile/download?fileName=大间距汇总表"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")); 498 window.open("/downloadFile/download?fileName=大间距汇总表"+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD"));
488 layer.close(i); 499 layer.close(i);
489 }); 500 });
@@ -496,8 +507,9 @@ @@ -496,8 +507,9 @@
496 var date = $("#date").val(); 507 var date = $("#date").val();
497 var endDate = $("#endDate").val(); 508 var endDate = $("#endDate").val();
498 var levelType=$("#dataLevel").val(); 509 var levelType=$("#dataLevel").val();
  510 + var week=$("#week").val();
499 var i = layer.load(2); 511 var i = layer.load(2);
500 - $get('/calcInterval/exportDetail',{line:id,date:date,endDate:endDate,levelType:levelType,type:'export'},function(result){ 512 + $get('/calcInterval/exportDetail',{line:id,date:date,endDate:endDate,levelType:levelType,week:week,type:'export'},function(result){
501 window.open("/downloadFile/download?fileName="+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")+"大间隔详细"); 513 window.open("/downloadFile/download?fileName="+moment(date).format("YYYYMMDD")+"-"+moment(endDate).format("YYYYMMDD")+"大间隔详细");
502 layer.close(i); 514 layer.close(i);
503 }); 515 });
src/main/resources/static/pages/report/sheet/intervalSum.html
@@ -27,24 +27,32 @@ @@ -27,24 +27,32 @@
27 <div class="portlet light porttlet-fit bordered"> 27 <div class="portlet light porttlet-fit bordered">
28 <div class="portlet-title"> 28 <div class="portlet-title">
29 <form class="form-inline" action=""> 29 <form class="form-inline" action="">
30 - <div style="display: inline-block; margin-left: 42px;" 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" selected="selected">全部线路</option>  
44 - <option value="1">营运线路</option>  
45 - <option value="2">非营运线路</option>  
46 - </select>  
47 - </div> 30 + <div style="display: inline-block; margin-left: 42px;" 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="display: inline-block;margin-left: 20px;">
  49 + <span class="item-label" style="width: 80px;">日期: </span>
  50 + <select class="form-control" name="week" id="week" style="width: 160px;">
  51 + <option value="0" selected="selected">全部</option>
  52 + <option value="1">周一至周五</option>
  53 + <option value="2">周六日</option>
  54 + </select>
  55 + </div>
48 <div style="margin-top: 10px"> 56 <div style="margin-top: 10px">
49 </div> 57 </div>
50 <div style="display: inline-block;"> 58 <div style="display: inline-block;">
@@ -167,8 +175,10 @@ @@ -167,8 +175,10 @@
167 var fgs=$('#fgsdm').val(); 175 var fgs=$('#fgsdm').val();
168 var gs=$('#gsdm').val(); 176 var gs=$('#gsdm').val();
169 var nature=$("#nature").val(); 177 var nature=$("#nature").val();
  178 + var week=$("#week").val();
  179 +
170 var i = layer.load(2); 180 var i = layer.load(2);
171 - $get('/calcInterval/sumInterval',{date:date,endDate:endDate,gs:gs,fgs:fgs,nature:nature,type:'query'},function(result){ 181 + $get('/calcInterval/sumInterval',{date:date,endDate:endDate,gs:gs,fgs:fgs,nature:nature,week:week,type:'query'},function(result){
172 var intervalList_sum = template('intervalList_sum',{list:result}); 182 var intervalList_sum = template('intervalList_sum',{list:result});
173 $('#forms_djg_sum tbody').html(intervalList_sum); 183 $('#forms_djg_sum tbody').html(intervalList_sum);
174 184
@@ -186,12 +196,13 @@ @@ -186,12 +196,13 @@
186 var fgs=$('#fgsdm').val(); 196 var fgs=$('#fgsdm').val();
187 var gs=$('#gsdm').val(); 197 var gs=$('#gsdm').val();
188 var nature=$('#nature').val(); 198 var nature=$('#nature').val();
  199 + var week=$("#week").val();
189 var lineName = $('#fgsdm option:selected').text(); 200 var lineName = $('#fgsdm option:selected').text();
190 if(lineName=="全部分公司") 201 if(lineName=="全部分公司")
191 lineName = $('#gsdm option:selected').text(); 202 lineName = $('#gsdm option:selected').text();
192 203
193 var i = layer.load(2); 204 var i = layer.load(2);
194 - $get('/calcInterval/sumInterval',{date:date,endDate:endDate,gs:gs,fgs:fgs,nature:nature,type:"export",lineName:lineName},function(result){ 205 + $get('/calcInterval/sumInterval',{date:date,endDate:endDate,gs:gs,fgs:fgs,nature:nature,week:week,type:"export",lineName:lineName},function(result){
195 var dateTime = ""; 206 var dateTime = "";
196 if(date == endDate){ 207 if(date == endDate){
197 dateTime = moment(date).format("YYYYMMDD"); 208 dateTime = moment(date).format("YYYYMMDD");