Commit ede0e52a4cd0bb55c549adbb33694895f61df903

Authored by 娄高锋
2 parents 59aad645 3c00b31d

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

src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
@@ -319,8 +319,9 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, @@ -319,8 +319,9 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo,
319 319
320 @RequestMapping(value = "/correctForm") 320 @RequestMapping(value = "/correctForm")
321 public List<SchEditInfoDto> correctForm(@RequestParam String line, @RequestParam String date, 321 public List<SchEditInfoDto> correctForm(@RequestParam String line, @RequestParam String date,
  322 + @RequestParam String endDate,
322 @RequestParam String lpName, @RequestParam String code, @RequestParam String type) { 323 @RequestParam String lpName, @RequestParam String code, @RequestParam String type) {
323 - return scheduleRealInfoService.correctForm(line, date, lpName, code, type); 324 + return scheduleRealInfoService.correctForm(line, date, endDate, lpName, code, type);
324 } 325 }
325 /** 326 /**
326 * @Title queryListWaybill 327 * @Title queryListWaybill
src/main/java/com/bsth/controller/report/ReportController.java
@@ -110,6 +110,7 @@ public class ReportController { @@ -110,6 +110,7 @@ public class ReportController {
110 Map<String, Object> m = new HashMap<String, Object>(); 110 Map<String, Object> m = new HashMap<String, Object>();
111 m.put("i", i); 111 m.put("i", i);
112 m.put("nbbm", a.getNbbm()); 112 m.put("nbbm", a.getNbbm());
  113 + m.put("pzh", a.getPzh());
113 m.put("stopName", a.getStopName()); 114 m.put("stopName", a.getStopName());
114 m.put("jzsj", a.getJzsj()); 115 m.put("jzsj", a.getJzsj());
115 m.put("czsj", a.getCzsj()); 116 m.put("czsj", a.getCzsj());
src/main/java/com/bsth/controller/report/SheetController.java
@@ -36,9 +36,21 @@ public class SheetController extends BaseController&lt;Sheet, Integer&gt;{ @@ -36,9 +36,21 @@ public class SheetController extends BaseController&lt;Sheet, Integer&gt;{
36 List<Sheet> list=sheetService.sheetList(id); 36 List<Sheet> list=sheetService.sheetList(id);
37 return list; 37 return list;
38 } 38 }
  39 + @RequestMapping(value = "/exportList",method = RequestMethod.GET)
  40 + public List<Sheet> exportList(@RequestParam Integer id){
  41 + List<Sheet> list=sheetService.exportList(id);
  42 + return list;
  43 + }
  44 +
39 @RequestMapping(value = "/countList",method = RequestMethod.GET) 45 @RequestMapping(value = "/countList",method = RequestMethod.GET)
40 public List<Map<String, Object>> countList(@RequestParam Map<String, Object> map){ 46 public List<Map<String, Object>> countList(@RequestParam Map<String, Object> map){
41 List<Map<String, Object>> list=sheetService.countList(map); 47 List<Map<String, Object>> list=sheetService.countList(map);
42 return list; 48 return list;
43 } 49 }
  50 +
  51 + @RequestMapping(value = "/listSheet",method = RequestMethod.GET)
  52 + public List<Map<String, Object>> listSheet(@RequestParam Map<String, Object> map){
  53 + List<Map<String, Object>> list=sheetService.listSheet(map);
  54 + return list;
  55 + }
44 } 56 }
src/main/java/com/bsth/entity/excep/ArrivalInfo.java
@@ -20,6 +20,8 @@ public class ArrivalInfo { @@ -20,6 +20,8 @@ public class ArrivalInfo {
20 20
21 private String nbbm; 21 private String nbbm;
22 22
  23 +
  24 + private String pzh;
23 /** 站点名称 */ 25 /** 站点名称 */
24 private String stopName; 26 private String stopName;
25 27
@@ -243,6 +245,14 @@ public class ArrivalInfo { @@ -243,6 +245,14 @@ public class ArrivalInfo {
243 public void setJzsj(String jzsj) { 245 public void setJzsj(String jzsj) {
244 this.jzsj = jzsj; 246 this.jzsj = jzsj;
245 } 247 }
  248 +
  249 + public String getPzh() {
  250 + return pzh;
  251 + }
  252 +
  253 + public void setPzh(String pzh) {
  254 + this.pzh = pzh;
  255 + }
246 256
247 257
248 258
src/main/java/com/bsth/entity/mcy_forms/Changetochange.java
@@ -12,6 +12,8 @@ public class Changetochange { @@ -12,6 +12,8 @@ public class Changetochange {
12 @GeneratedValue 12 @GeneratedValue
13 private Integer id; 13 private Integer id;
14 14
  15 + private Long sId;
  16 +
15 private String rq;//日期 17 private String rq;//日期
16 18
17 private String gs;//公司 19 private String gs;//公司
@@ -171,7 +173,15 @@ public class Changetochange { @@ -171,7 +173,15 @@ public class Changetochange {
171 public void setXgr(String xgr) { 173 public void setXgr(String xgr) {
172 this.xgr = xgr; 174 this.xgr = xgr;
173 } 175 }
174 -  
175 176
  177 + public Long getsId() {
  178 + return sId;
  179 + }
  180 +
  181 + public void setsId(Long sId) {
  182 + this.sId = sId;
  183 + }
  184 +
  185 +
176 186
177 } 187 }
src/main/java/com/bsth/service/realcontrol/ScheduleRealInfoService.java
@@ -105,7 +105,7 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L @@ -105,7 +105,7 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L
105 List<Map<String,Object>> accountPx(String line,String date,String code,String xlName, String px); 105 List<Map<String,Object>> accountPx(String line,String date,String code,String xlName, String px);
106 106
107 107
108 - List<SchEditInfoDto> correctForm(String line,String date,String lpName,String code, String type); 108 + List<SchEditInfoDto> correctForm(String line,String date,String endDate,String lpName,String code, String type);
109 109
110 List<ScheduleRealInfo> queryListWaybill(String jName,String clZbh,String lpName,String date,String line); 110 List<ScheduleRealInfo> queryListWaybill(String jName,String clZbh,String lpName,String date,String line);
111 111
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
@@ -1965,7 +1965,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1965,7 +1965,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1965 }*/ 1965 }*/
1966 1966
1967 @Override 1967 @Override
1968 - public List<SchEditInfoDto> correctForm(String line,String date, 1968 + public List<SchEditInfoDto> correctForm(String line,String date,String endDate,
1969 String lpName,String code, String type) { 1969 String lpName,String code, String type) {
1970 1970
1971 // var types = {'DFTZ': '待发调整', 'FCXXWT':'发车信息微调', 'JHLB': '计划烂班', 'CXLB': '撤销烂班', 1971 // var types = {'DFTZ': '待发调整', 'FCXXWT':'发车信息微调', 'JHLB': '计划烂班', 'CXLB': '撤销烂班',
@@ -1991,17 +1991,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1991,17 +1991,17 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1991 String sql = "select t1.*, " 1991 String sql = "select t1.*, "
1992 + "t2.fcsj,t2.lp_name,t2.cl_zbh,t2.j_gh,t2.j_name," 1992 + "t2.fcsj,t2.lp_name,t2.cl_zbh,t2.j_gh,t2.j_name,"
1993 + "t2.xl_dir,t2.real_exec_date from (select * from " 1993 + "t2.xl_dir,t2.real_exec_date from (select * from "
1994 - + "logger_sch_modify where rq=? and line_code=? )" 1994 + + "logger_sch_modify where rq BETWEEN ? and ? and line_code=? )"
1995 + " t1 INNER JOIN bsth_c_s_sp_info_real t2 on " 1995 + " t1 INNER JOIN bsth_c_s_sp_info_real t2 on "
1996 + "t1.sch_id=t2.id where 1=1 " + cont; 1996 + "t1.sch_id=t2.id where 1=1 " + cont;
1997 1997
1998 List<SchEditInfoDto> list = jdbcTemplate.query(sql, 1998 List<SchEditInfoDto> list = jdbcTemplate.query(sql,
1999 - new BeanPropertyRowMapper(SchEditInfoDto.class),date, line); 1999 + new BeanPropertyRowMapper(SchEditInfoDto.class),date,endDate, line);
2000 List<SchEditInfoDto> lists=new ArrayList<SchEditInfoDto>(); 2000 List<SchEditInfoDto> lists=new ArrayList<SchEditInfoDto>();
2001 for (int i = 0; i < list.size(); i++) { 2001 for (int i = 0; i < list.size(); i++) {
2002 SchEditInfoDto t=list.get(i); 2002 SchEditInfoDto t=list.get(i);
2003 if(map.get(t.getType())!=null){ 2003 if(map.get(t.getType())!=null){
2004 - t.setType2(t.getTimeStr()+":"+map.get(t.getType()).toString()); 2004 + t.setType2(t.getUser()+"于"+t.getTimeStr()+"进行"+map.get(t.getType()).toString()+";");
2005 }else{ 2005 }else{
2006 t.setType2(""); 2006 t.setType2("");
2007 } 2007 }
@@ -2013,6 +2013,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2013,6 +2013,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2013 fage=false; 2013 fage=false;
2014 } 2014 }
2015 } 2015 }
  2016 +
2016 if(fage){ 2017 if(fage){
2017 lists.add(t); 2018 lists.add(t);
2018 } 2019 }
@@ -2030,6 +2031,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -2030,6 +2031,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
2030 for (SchEditInfoDto d : lists) { 2031 for (SchEditInfoDto d : lists) {
2031 Map<String, Object> tempMap = new HashMap<String, Object>(); 2032 Map<String, Object> tempMap = new HashMap<String, Object>();
2032 tempMap.put("lpName", d.getLpName()); 2033 tempMap.put("lpName", d.getLpName());
  2034 + tempMap.put("rq", d.getRq());
2033 tempMap.put("clZbh", d.getClZbh()); 2035 tempMap.put("clZbh", d.getClZbh());
2034 tempMap.put("jName", d.getjName()+"/"+d.getjGh()); 2036 tempMap.put("jName", d.getjName()+"/"+d.getjGh());
2035 tempMap.put("fcsj", d.getFcsj()); 2037 tempMap.put("fcsj", d.getFcsj());
src/main/java/com/bsth/service/report/SheetService.java
@@ -10,6 +10,7 @@ public interface SheetService extends BaseService&lt;Sheet, Integer&gt;{ @@ -10,6 +10,7 @@ public interface SheetService extends BaseService&lt;Sheet, Integer&gt;{
10 public List<Map<String, Object>> bcPunctual(Map<String, Object> map); 10 public List<Map<String, Object>> bcPunctual(Map<String, Object> map);
11 public String saveSheetList(String date) throws Exception; 11 public String saveSheetList(String date) throws Exception;
12 public List<Map<String, Object>> countList(Map<String, Object> map); 12 public List<Map<String, Object>> countList(Map<String, Object> map);
13 - 13 + public List<Map<String, Object>> listSheet(Map<String, Object> map);
14 public List<Sheet> sheetList(Integer id); 14 public List<Sheet> sheetList(Integer id);
  15 + public List<Sheet> exportList(Integer id);
15 } 16 }
src/main/java/com/bsth/service/report/impl/ReportServiceImpl.java
@@ -156,7 +156,9 @@ public class ReportServiceImpl implements ReportService{ @@ -156,7 +156,9 @@ public class ReportServiceImpl implements ReportService{
156 while(rs.next()){ 156 while(rs.next()){
157 arr = new ArrivalInfo(); 157 arr = new ArrivalInfo();
158 arr.setDeviceId(rs.getString("device_id")); 158 arr.setDeviceId(rs.getString("device_id"));
159 - arr.setNbbm(BasicData.deviceId2NbbmMap.get(arr.getDeviceId())); 159 + String nbbm=BasicData.deviceId2NbbmMap.get(arr.getDeviceId());
  160 + arr.setNbbm(nbbm);
  161 + arr.setPzh(BasicData.nbbmCompanyPlateMap.get(nbbm));
160 if(null == arr.getNbbm()){ 162 if(null == arr.getNbbm()){
161 logger.warn("未注册的设备号," + arr.getDeviceId()); 163 logger.warn("未注册的设备号," + arr.getDeviceId());
162 continue; 164 continue;
src/main/java/com/bsth/service/report/impl/SheetServiceImpl.java
1 package com.bsth.service.report.impl; 1 package com.bsth.service.report.impl;
2 2
  3 +import java.lang.reflect.InvocationTargetException;
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;
@@ -42,6 +43,7 @@ import com.bsth.service.report.SheetService; @@ -42,6 +43,7 @@ import com.bsth.service.report.SheetService;
42 import com.bsth.util.BatchSaveUtils; 43 import com.bsth.util.BatchSaveUtils;
43 import com.bsth.util.ComparableChild; 44 import com.bsth.util.ComparableChild;
44 import com.bsth.util.ComparableReal; 45 import com.bsth.util.ComparableReal;
  46 +import com.bsth.util.ReportRelatedUtils;
45 import com.google.common.util.concurrent.AbstractScheduledService.Scheduler; 47 import com.google.common.util.concurrent.AbstractScheduledService.Scheduler;
46 48
47 @Service 49 @Service
@@ -658,7 +660,8 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements @@ -658,7 +660,8 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements
658 fgs=map.get("fgs").toString(); 660 fgs=map.get("fgs").toString();
659 } 661 }
660 String date=map.get("date").toString(); 662 String date=map.get("date").toString();
661 - String sql="select * from bsth_c_sheet where date='"+date+"'"; 663 + String endDate=map.get("endDate").toString();
  664 + String sql="select * from bsth_c_sheet where date BETWEEN '"+date+"' and '"+endDate+"'";
662 if(line.trim().equals("")){ 665 if(line.trim().equals("")){
663 sql +=" and gs like '%"+gs+"%' and fgs like '%"+fgs+"%'"; 666 sql +=" and gs like '%"+gs+"%' and fgs like '%"+fgs+"%'";
664 }else{ 667 }else{
@@ -721,6 +724,7 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements @@ -721,6 +724,7 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements
721 String gs=BasicData.businessCodeNameMap.get(list.get(0).getGs()); 724 String gs=BasicData.businessCodeNameMap.get(list.get(0).getGs());
722 String fgs=BasicData.businessFgsCodeNameMap.get(list.get(0).getFgs()+"_"+list.get(0).getGs()); 725 String fgs=BasicData.businessFgsCodeNameMap.get(list.get(0).getFgs()+"_"+list.get(0).getGs());
723 String line=BasicData.lineCode2NameMap.get(list.get(0).getLine()); 726 String line=BasicData.lineCode2NameMap.get(list.get(0).getLine());
  727 + String date=list.get(0).getDate();
724 Integer id=list.get(0).getId(); 728 Integer id=list.get(0).getId();
725 int bcs=list.size(); 729 int bcs=list.size();
726 int zdbcs=0; 730 int zdbcs=0;
@@ -740,6 +744,7 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements @@ -740,6 +744,7 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements
740 map.put("zdbcs", zdbcs); 744 map.put("zdbcs", zdbcs);
741 map.put("zdlv", df.format(zdlv)+"%"); 745 map.put("zdlv", df.format(zdlv)+"%");
742 map.put("id", id); 746 map.put("id", id);
  747 + map.put("date", date);
743 return map; 748 return map;
744 } 749 }
745 @Override 750 @Override
@@ -781,6 +786,128 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements @@ -781,6 +786,128 @@ public class SheetServiceImpl extends BaseServiceImpl&lt;Sheet, Integer&gt; implements
781 return list; 786 return list;
782 } 787 }
783 788
  789 + @Override
  790 + public List<Sheet> exportList(Integer id) {
  791 + // TODO Auto-generated method stub
  792 + ReportRelatedUtils rru = new ReportRelatedUtils();
  793 + Sheet sheet=sheetRepository.findOne(id);
  794 + String sql="select * from bsth_c_sheet where date='"+sheet.getDate()+"' and line = '"+sheet.getLine()+"'"
  795 + + " order by xl_dir,jhsj";
  796 +
  797 + List<Sheet> list=jdbcTemplate.query(sql,
  798 + new RowMapper<Sheet>(){
  799 + @Override
  800 + public Sheet mapRow(ResultSet rs, int rowNum) throws SQLException {
  801 + Sheet s=new Sheet();
  802 + s.setId(rs.getInt("id"));
  803 + s.setGs(rs.getString("gs"));
  804 + s.setFgs(rs.getString("fgs"));
  805 + s.setLine(rs.getString("line"));
  806 + s.setDate(rs.getString("date"));
  807 + s.setJhsj(rs.getString("jhsj"));
  808 + s.setJhsjt(rs.getLong("jhsjt"));
  809 + s.setSjsj(rs.getString("sjsj"));
  810 + s.setSjsjt(rs.getLong("sjsjt"));
  811 + s.setZdname(rs.getString("zdname"));
  812 + return s;
  813 + }
  814 + });
  815 +
  816 + List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>();
  817 + for (int i = 0; i < list.size(); i++) {
  818 + Sheet t=list.get(i);
  819 + t.setLine(BasicData.lineCode2NameMap.get(t.getLine()));
  820 + Long sjc=t.getJhsjt()-t.getSjsjt();
  821 + if(sjc>= 3*60*1000*-1 && sjc <=1*60*1000){
  822 + t.setSfzd("准点");
  823 + }else{
  824 + t.setSfzd("不准点");
  825 + }
  826 +
  827 + try {
  828 + Map<String, Object> map = rru.getMapValue(t);
  829 + listMap.add(map);
  830 + } catch (ClassNotFoundException e) {
  831 + // TODO Auto-generated catch block
  832 + e.printStackTrace();
  833 + } catch (IllegalAccessException e) {
  834 + // TODO Auto-generated catch block
  835 + e.printStackTrace();
  836 + } catch (InvocationTargetException e) {
  837 + // TODO Auto-generated catch block
  838 + e.printStackTrace();
  839 + } catch (NoSuchMethodException e) {
  840 + // TODO Auto-generated catch block
  841 + e.printStackTrace();
  842 + } catch (NoSuchFieldException e) {
  843 + // TODO Auto-generated catch block
  844 + e.printStackTrace();
  845 + }
  846 +
  847 + }
  848 +
  849 + return list;
  850 + }
  851 + @Override
  852 + public List<Map<String, Object>> listSheet(Map<String, Object> map) {
  853 + // TODO Auto-generated method stub
  854 + List<Map<String, Object>> listmap=new ArrayList<Map<String,Object>>();
  855 + Integer id=Integer.parseInt(map.get("id").toString());
  856 + Sheet sheet=sheetRepository.findOne(id);
  857 + String date=map.get("date").toString();
  858 + String endDate=map.get("endDate").toString();
  859 +
  860 + String sqlByDate="select date from bsth_c_sheet where date BETWEEN '"+date+"' and '"+endDate+"'"
  861 + + "and line = '"+sheet.getLine()+"' group by date order by date";
  862 +
  863 + List<String> dateList=jdbcTemplate.query(sqlByDate,
  864 + new RowMapper<String>(){
  865 + @Override
  866 + public String mapRow(ResultSet rs, int rowNum) throws SQLException {
  867 + String date=rs.getString("date");
  868 +
  869 + return date;
  870 + }
  871 + });
  872 +
  873 + String sql="select * from bsth_c_sheet where date BETWEEN '"+date+"' and '"+endDate+"'"
  874 + + " and line ='"+sheet.getLine()+"' order by date";
  875 +
  876 + List<Sheet> list=jdbcTemplate.query(sql,
  877 + new RowMapper<Sheet>(){
  878 + @Override
  879 + public Sheet mapRow(ResultSet rs, int rowNum) throws SQLException {
  880 + Sheet s=new Sheet();
  881 + s.setGs(rs.getString("gs"));
  882 + s.setFgs(rs.getString("fgs"));
  883 + s.setLine(rs.getString("line"));
  884 + s.setDate(rs.getString("date"));
  885 + s.setJhsj(rs.getString("jhsj"));
  886 + s.setJhsjt(rs.getLong("jhsjt"));
  887 + s.setSjsj(rs.getString("sjsj"));
  888 + s.setSjsjt(rs.getLong("sjsjt"));
  889 + s.setId(rs.getInt("id"));
  890 + return s;
  891 + }
  892 + });
  893 + for (int i = 0; i < dateList.size(); i++) {
  894 + String s=dateList.get(i);
  895 + List<Sheet> newList=new ArrayList<Sheet>();
  896 + for (int j = 0; j < list.size(); j++) {
  897 + Sheet t=list.get(j);
  898 + if(t.getDate().equals(s)){
  899 + newList.add(t);
  900 + }
  901 + }
  902 +
  903 + if(newList.size()>0){
  904 + Map<String, Object> newmap=culateByLine(newList);
  905 + listmap.add(newmap);
  906 + }
  907 + }
  908 + return listmap;
  909 + }
  910 +
784 911
785 } 912 }
786 class ComparableAcual implements Comparator<ScheduleRealInfo>{ 913 class ComparableAcual implements Comparator<ScheduleRealInfo>{
src/main/java/com/bsth/service/traffic/YgcBasicDataService.java
1 -package com.bsth.service.traffic;  
2 -  
3 -/**  
4 - * 运管处基础数据操作接口类  
5 - * Created by zlz on 2017/6/16.  
6 - */  
7 -public interface YgcBasicDataService {  
8 - /**  
9 - * 更新运管处基础数据  
10 - */  
11 - void updateYgcBasicData();  
12 -}  
13 - 1 +package com.bsth.service.traffic;
  2 +
  3 +/**
  4 + * 运管处基础数据操作接口类
  5 + * Created by zlz on 2017/6/16.
  6 + */
  7 +public interface YgcBasicDataService {
  8 + /**
  9 + * 更新运管处基础数据
  10 + */
  11 + void updateYgcBasicData();
  12 +}
  13 +
src/main/java/com/bsth/service/traffic/impl/YgcBasicDataServiceImpl.java
1 -package com.bsth.service.traffic.impl;  
2 -  
3 -import com.bsth.service.impl.TrafficManageServiceImpl;  
4 -import com.bsth.service.traffic.YgcBasicDataService;  
5 -import com.bsth.util.db.DBUtils_oldSystem;  
6 -import org.apache.axiom.om.*;  
7 -import org.apache.axis2.addressing.EndpointReference;  
8 -import org.apache.axis2.client.Options;  
9 -import org.apache.axis2.client.ServiceClient;  
10 -import org.apache.commons.codec.digest.DigestUtils;  
11 -import org.slf4j.Logger;  
12 -import org.slf4j.LoggerFactory;  
13 -import org.springframework.beans.factory.annotation.Autowired;  
14 -import org.springframework.jdbc.core.BatchPreparedStatementSetter;  
15 -import org.springframework.jdbc.core.JdbcTemplate;  
16 -import org.springframework.stereotype.Service;  
17 -import org.w3c.dom.Document;  
18 -import org.w3c.dom.NodeList;  
19 -  
20 -import javax.activation.DataHandler;  
21 -import javax.xml.parsers.DocumentBuilder;  
22 -import javax.xml.parsers.DocumentBuilderFactory;  
23 -import java.io.*;  
24 -import java.sql.PreparedStatement;  
25 -import java.sql.SQLException;  
26 -import java.util.ArrayList;  
27 -import java.util.HashMap;  
28 -import java.util.List;  
29 -import java.util.zip.ZipEntry;  
30 -import java.util.zip.ZipFile;  
31 -import java.util.zip.ZipInputStream;  
32 -  
33 -/**  
34 - * 运管处基础数据操作类  
35 - * Created by zq on 2017/6/15.  
36 - */  
37 -@Service  
38 -public class YgcBasicDataServiceImpl implements YgcBasicDataService{  
39 - Logger logger = LoggerFactory.getLogger(TrafficManageServiceImpl.class);  
40 -  
41 - @Autowired  
42 - JdbcTemplate jdbcTemplate;  
43 -  
44 - private static String IP = "218.242.195.76:9091";  
45 - private static String targetEndpoint = "http://" + IP +"/ygc.TransManager.Basicdown?wsdl";  
46 - private static String namespace = "http://service.shygc.com";  
47 - private static String userName = "admin";  
48 - private static String passWord = "000000";  
49 - private static EndpointReference targetEPR;  
50 - {  
51 - try {  
52 - targetEPR = new EndpointReference(targetEndpoint);  
53 - } catch (Exception e) {  
54 - e.printStackTrace();  
55 - }  
56 - }  
57 -  
58 - /**  
59 - * 更新运管处基础数据  
60 - */  
61 - public void updateYgcBasicData(){  
62 - String saveFile = "ygcBasicData.zip";  
63 - String flag = "failure";  
64 - try {  
65 - // 调用接口下载基础数据  
66 - if(download(userName, DigestUtils.md5Hex(passWord), saveFile)){  
67 - // 读取基础数据zip  
68 - StringBuffer sb = readZipFile(saveFile);  
69 - // 解析xml  
70 - List<HashMap<String,String>> result = parseXml(sb);  
71 - // 插入数据库  
72 - if(result != null && result.size() > 0){  
73 - insertRecord(result);  
74 - }  
75 - }  
76 - flag = "success";  
77 - }catch (Exception e){  
78 - e.printStackTrace();  
79 - }  
80 - finally {  
81 - // 删除文件  
82 - File fill = new File(saveFile);  
83 - logger.info("updateYgcBasicData:"+fill.getAbsolutePath());  
84 - logger.info("updateYgcBasicData:"+flag);  
85 - if(fill.exists()){  
86 - fill.delete();  
87 - }  
88 - }  
89 - }  
90 - /**  
91 - * 下载基础数据,并生成rar文件  
92 - * @param userName  
93 - * @param password  
94 - * @param saveFile  
95 - * @return  
96 - */  
97 - private boolean download(String userName, String password, String saveFile)  
98 - {  
99 - try  
100 - {  
101 - OMElement data = buildDownloadEnvelope(userName, password);  
102 - ServiceClient sender = new ServiceClient();  
103 - Options options = sender.getOptions();  
104 - options.setProperty("SO_TIMEOUT", Integer.valueOf(1800000));  
105 - options.setTo(targetEPR);  
106 - sender.setOptions(options);  
107 - System.out.println("The data in method download: " + data);  
108 - data.build();  
109 - OMElement ome = sender.sendReceive(data);  
110 -  
111 - OMText binaryNode = (OMText)ome.getFirstOMChild();  
112 - binaryNode.setOptimize(true);  
113 - DataHandler actualDH = (DataHandler)binaryNode.getDataHandler();  
114 - FileOutputStream imageOutStream = new FileOutputStream(saveFile);  
115 - InputStream is = actualDH.getInputStream();  
116 - int read ;  
117 - byte[] buffer = new byte[1024];  
118 - while ((read = is.read(buffer)) != -1) {  
119 - imageOutStream.write(buffer, 0, read);  
120 - }  
121 - return true;  
122 - } catch (Exception e) {  
123 - e.printStackTrace();  
124 - }return false;  
125 - }  
126 -  
127 - /**  
128 - * 构建webservice接口参数  
129 - * @param userName  
130 - * @param password  
131 - * @return  
132 - */  
133 - private OMElement buildDownloadEnvelope(String userName, String password)  
134 - {  
135 - OMFactory fac = OMAbstractFactory.getOMFactory();  
136 - OMNamespace omNs = fac.createOMNamespace(namespace,  
137 - "ser");  
138 - OMElement data = fac.createOMElement("downloadAllDataFile", omNs);  
139 - OMElement _userName = fac.createOMElement("userName", omNs);  
140 - _userName.setText(userName);  
141 - OMElement _passWord = fac.createOMElement("passWord", omNs);  
142 - _passWord.setText(String.valueOf(password));  
143 -  
144 - data.addChild(_userName);  
145 - data.addChild(_passWord);  
146 -  
147 - OMElement soap = fac.createOMElement("downloadAllDataFile", omNs);  
148 - soap.addChild(data);  
149 - return soap;  
150 - }  
151 -  
152 - /**  
153 - * 读取zip文件的内容  
154 - * @param file  
155 - * @return  
156 - * @throws Exception  
157 - */  
158 - public StringBuffer readZipFile(String file) throws Exception {  
159 - ZipFile zf = new ZipFile(file);  
160 - InputStream in = new BufferedInputStream(new FileInputStream(file));  
161 - ZipInputStream zin = new ZipInputStream(in);  
162 - ZipEntry ze;  
163 - StringBuffer sb = new StringBuffer();  
164 - while ((ze = zin.getNextEntry()) != null) {  
165 - System.out.print(ze);  
166 - if (ze.isDirectory()) {  
167 - } else {  
168 - System.err.println("file - " + ze.getName() + " : "  
169 - + ze.getSize() + " bytes");  
170 - long size = ze.getSize();  
171 - if (size > 0) {  
172 - BufferedReader br = new BufferedReader(  
173 - new InputStreamReader(zf.getInputStream(ze),"GBK"));  
174 - String line;  
175 - boolean addFlag = false;  
176 - while ((line = br.readLine()) != null) {  
177 - if(line.indexOf("BusLineList") != -1){  
178 - addFlag = true;  
179 - }  
180 - if(addFlag){  
181 - sb.append(line);  
182 - }  
183 -  
184 - if(line.indexOf("/BusLineList") != -1){  
185 - break;  
186 - }  
187 - }  
188 - br.close();  
189 - }  
190 - }  
191 - }  
192 - zin.closeEntry();  
193 - return sb;  
194 - }  
195 -  
196 - /**  
197 - * 解析xml  
198 - * @param sb  
199 - */  
200 - private List<HashMap<String,String>> parseXml(StringBuffer sb){  
201 - List<HashMap<String,String>> list = new ArrayList<>();  
202 - HashMap<String,String> map;  
203 - try {  
204 - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();  
205 - DocumentBuilder builder = factory.newDocumentBuilder();  
206 - Document doc = builder.parse(new ByteArrayInputStream(sb.toString().getBytes()));  
207 - NodeList nl = doc.getElementsByTagName("BusLine");  
208 - String lineName; //线路名称  
209 - String lineId; // 线路ID  
210 - String abbreviation ; // 公司名称  
211 - String ddfs ; // 调度方式  
212 - String lineStandardCode; // 上海市线路编码  
213 - String parentUnitName ; // 总公司  
214 - for (int i = 0; i < nl.getLength(); i++) {  
215 - parentUnitName = doc.getElementsByTagName("ParentUnitName").item(i).getFirstChild() == null ?"":  
216 - doc.getElementsByTagName("ParentUnitName").item(i).getFirstChild().getNodeValue();  
217 - if(parentUnitName.indexOf("浦东") != -1){// 只查找浦东的数据  
218 - lineName = doc.getElementsByTagName("LineName").item(i).getFirstChild() == null ?"":  
219 - doc.getElementsByTagName("LineName").item(i).getFirstChild().getNodeValue();  
220 - lineId = doc.getElementsByTagName("LineId").item(i).getFirstChild() == null ?"":  
221 - doc.getElementsByTagName("LineId").item(i).getFirstChild().getNodeValue();  
222 - abbreviation = doc.getElementsByTagName("Abbreviation").item(i).getFirstChild() == null ?"":  
223 - doc.getElementsByTagName("Abbreviation").item(i).getFirstChild().getNodeValue();  
224 - ddfs = doc.getElementsByTagName("DDFS").item(i).getFirstChild() == null ?"":  
225 - doc.getElementsByTagName("DDFS").item(i).getFirstChild().getNodeValue();  
226 - lineStandardCode = doc.getElementsByTagName("LineStandardCode").item(i).getFirstChild() == null ?"":  
227 - doc.getElementsByTagName("LineStandardCode").item(i).getFirstChild().getNodeValue();  
228 - map = new HashMap<>();  
229 - map.put("lineName",lineName);  
230 - map.put("lineId",lineId);  
231 - map.put("abbreviation",abbreviation);  
232 - map.put("ddfs",ddfs);  
233 - map.put("lineStandardCode",lineStandardCode);  
234 - list.add(map);  
235 - }  
236 - }  
237 - }catch (Exception e){  
238 - e.printStackTrace();;  
239 - }  
240 - return list;  
241 - }  
242 -  
243 - /**  
244 - * 批量插入用法  
245 - * @param list  
246 - */  
247 - public boolean insertRecord(List<HashMap<String,String>> list)  
248 - {  
249 - boolean flag = false;  
250 - final List<HashMap<String,String>> tempList=list;  
251 - String sql="INSERT INTO JJWGPS_T_SHSXLFILE(XLID,SHSXLBM,XLMC,GSMC,DDFS,CREATETIME,XLMC_ALL) VALUES (?,?,?,?,?,SYSDATE,?)";  
252 - jdbcTemplate = new JdbcTemplate(DBUtils_oldSystem.getDataSource());  
253 - jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter()  
254 - {  
255 - public void setValues(PreparedStatement ps, int i)throws SQLException  
256 - {  
257 - String lineId =tempList.get(i).get("lineId");  
258 - String lineStandardCode =tempList.get(i).get("lineStandardCode");  
259 - String lineName =tempList.get(i).get("lineName");  
260 - String abbreviation =tempList.get(i).get("abbreviation");  
261 - String ddfs =tempList.get(i).get("ddfs");  
262 - String lineNameAll = lineName;  
263 - if(ddfs.equals("2")){  
264 - lineNameAll = lineName+"区间(走向部分在全程线路之外)";  
265 - }else if(ddfs.equals("7")){  
266 - lineNameAll = lineName+"区间(走向在全程线路之内)";  
267 - }  
268 - ps.setString(1, lineId);  
269 - ps.setString(2, lineStandardCode);  
270 - ps.setString(3, lineName);  
271 - ps.setString(4, abbreviation);  
272 - ps.setString(5, ddfs);  
273 - ps.setString(6, lineNameAll);  
274 - }  
275 - public int getBatchSize()  
276 - {  
277 - return tempList.size();  
278 - }  
279 - });  
280 - flag = true;  
281 - return flag;  
282 - }  
283 -} 1 +package com.bsth.service.traffic.impl;
  2 +
  3 +import com.bsth.service.impl.TrafficManageServiceImpl;
  4 +import com.bsth.service.traffic.YgcBasicDataService;
  5 +import com.bsth.util.db.DBUtils_oldSystem;
  6 +import org.apache.axiom.om.*;
  7 +import org.apache.axis2.addressing.EndpointReference;
  8 +import org.apache.axis2.client.Options;
  9 +import org.apache.axis2.client.ServiceClient;
  10 +import org.apache.commons.codec.digest.DigestUtils;
  11 +import org.slf4j.Logger;
  12 +import org.slf4j.LoggerFactory;
  13 +import org.springframework.beans.factory.annotation.Autowired;
  14 +import org.springframework.jdbc.core.BatchPreparedStatementSetter;
  15 +import org.springframework.jdbc.core.JdbcTemplate;
  16 +import org.springframework.stereotype.Service;
  17 +import org.w3c.dom.Document;
  18 +import org.w3c.dom.NodeList;
  19 +
  20 +import javax.activation.DataHandler;
  21 +import javax.xml.parsers.DocumentBuilder;
  22 +import javax.xml.parsers.DocumentBuilderFactory;
  23 +import java.io.*;
  24 +import java.sql.PreparedStatement;
  25 +import java.sql.SQLException;
  26 +import java.util.ArrayList;
  27 +import java.util.HashMap;
  28 +import java.util.List;
  29 +import java.util.zip.ZipEntry;
  30 +import java.util.zip.ZipFile;
  31 +import java.util.zip.ZipInputStream;
  32 +
  33 +/**
  34 + * 运管处基础数据操作类
  35 + * Created by zq on 2017/6/15.
  36 + */
  37 +@Service
  38 +public class YgcBasicDataServiceImpl implements YgcBasicDataService{
  39 + Logger logger = LoggerFactory.getLogger(TrafficManageServiceImpl.class);
  40 +
  41 + @Autowired
  42 + JdbcTemplate jdbcTemplate;
  43 +
  44 + private static String IP = "218.242.195.76:9091";
  45 + private static String targetEndpoint = "http://" + IP +"/ygc.TransManager.Basicdown?wsdl";
  46 + private static String namespace = "http://service.shygc.com";
  47 + private static String userName = "admin";
  48 + private static String passWord = "000000";
  49 + private static EndpointReference targetEPR;
  50 + {
  51 + try {
  52 + targetEPR = new EndpointReference(targetEndpoint);
  53 + } catch (Exception e) {
  54 + e.printStackTrace();
  55 + }
  56 + }
  57 +
  58 + /**
  59 + * 更新运管处基础数据
  60 + */
  61 + public void updateYgcBasicData(){
  62 + String saveFile = "ygcBasicData.zip";
  63 + String flag = "failure";
  64 + try {
  65 + // 调用接口下载基础数据
  66 + if(download(userName, DigestUtils.md5Hex(passWord), saveFile)){
  67 + // 读取基础数据zip
  68 + StringBuffer sb = readZipFile(saveFile);
  69 + // 解析xml
  70 + List<HashMap<String,String>> result = parseXml(sb);
  71 + // 插入数据库
  72 + if(result != null && result.size() > 0){
  73 + insertRecord(result);
  74 + }
  75 + }
  76 + flag = "success";
  77 + }catch (Exception e){
  78 + e.printStackTrace();
  79 + }
  80 + finally {
  81 + // 删除文件
  82 + File fill = new File(saveFile);
  83 + logger.info("updateYgcBasicData:"+fill.getAbsolutePath());
  84 + logger.info("updateYgcBasicData:"+flag);
  85 + if(fill.exists()){
  86 + fill.delete();
  87 + }
  88 + }
  89 + }
  90 + /**
  91 + * 下载基础数据,并生成rar文件
  92 + * @param userName
  93 + * @param password
  94 + * @param saveFile
  95 + * @return
  96 + */
  97 + private boolean download(String userName, String password, String saveFile)
  98 + {
  99 + try
  100 + {
  101 + OMElement data = buildDownloadEnvelope(userName, password);
  102 + ServiceClient sender = new ServiceClient();
  103 + Options options = sender.getOptions();
  104 + options.setProperty("SO_TIMEOUT", Integer.valueOf(1800000));
  105 + options.setTo(targetEPR);
  106 + sender.setOptions(options);
  107 + System.out.println("The data in method download: " + data);
  108 + data.build();
  109 + OMElement ome = sender.sendReceive(data);
  110 +
  111 + OMText binaryNode = (OMText)ome.getFirstOMChild();
  112 + binaryNode.setOptimize(true);
  113 + DataHandler actualDH = (DataHandler)binaryNode.getDataHandler();
  114 + FileOutputStream imageOutStream = new FileOutputStream(saveFile);
  115 + InputStream is = actualDH.getInputStream();
  116 + int read ;
  117 + byte[] buffer = new byte[1024];
  118 + while ((read = is.read(buffer)) != -1) {
  119 + imageOutStream.write(buffer, 0, read);
  120 + }
  121 + return true;
  122 + } catch (Exception e) {
  123 + e.printStackTrace();
  124 + }return false;
  125 + }
  126 +
  127 + /**
  128 + * 构建webservice接口参数
  129 + * @param userName
  130 + * @param password
  131 + * @return
  132 + */
  133 + private OMElement buildDownloadEnvelope(String userName, String password)
  134 + {
  135 + OMFactory fac = OMAbstractFactory.getOMFactory();
  136 + OMNamespace omNs = fac.createOMNamespace(namespace,
  137 + "ser");
  138 + OMElement data = fac.createOMElement("downloadAllDataFile", omNs);
  139 + OMElement _userName = fac.createOMElement("userName", omNs);
  140 + _userName.setText(userName);
  141 + OMElement _passWord = fac.createOMElement("passWord", omNs);
  142 + _passWord.setText(String.valueOf(password));
  143 +
  144 + data.addChild(_userName);
  145 + data.addChild(_passWord);
  146 +
  147 + OMElement soap = fac.createOMElement("downloadAllDataFile", omNs);
  148 + soap.addChild(data);
  149 + return soap;
  150 + }
  151 +
  152 + /**
  153 + * 读取zip文件的内容
  154 + * @param file
  155 + * @return
  156 + * @throws Exception
  157 + */
  158 + public StringBuffer readZipFile(String file) throws Exception {
  159 + ZipFile zf = new ZipFile(file);
  160 + InputStream in = new BufferedInputStream(new FileInputStream(file));
  161 + ZipInputStream zin = new ZipInputStream(in);
  162 + ZipEntry ze;
  163 + StringBuffer sb = new StringBuffer();
  164 + while ((ze = zin.getNextEntry()) != null) {
  165 + System.out.print(ze);
  166 + if (ze.isDirectory()) {
  167 + } else {
  168 + System.err.println("file - " + ze.getName() + " : "
  169 + + ze.getSize() + " bytes");
  170 + long size = ze.getSize();
  171 + if (size > 0) {
  172 + BufferedReader br = new BufferedReader(
  173 + new InputStreamReader(zf.getInputStream(ze),"GBK"));
  174 + String line;
  175 + boolean addFlag = false;
  176 + while ((line = br.readLine()) != null) {
  177 + if(line.indexOf("BusLineList") != -1){
  178 + addFlag = true;
  179 + }
  180 + if(addFlag){
  181 + sb.append(line);
  182 + }
  183 +
  184 + if(line.indexOf("/BusLineList") != -1){
  185 + break;
  186 + }
  187 + }
  188 + br.close();
  189 + }
  190 + }
  191 + }
  192 + zin.closeEntry();
  193 + return sb;
  194 + }
  195 +
  196 + /**
  197 + * 解析xml
  198 + * @param sb
  199 + */
  200 + private List<HashMap<String,String>> parseXml(StringBuffer sb){
  201 + List<HashMap<String,String>> list = new ArrayList<>();
  202 + HashMap<String,String> map;
  203 + try {
  204 + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  205 + DocumentBuilder builder = factory.newDocumentBuilder();
  206 + Document doc = builder.parse(new ByteArrayInputStream(sb.toString().getBytes()));
  207 + NodeList nl = doc.getElementsByTagName("BusLine");
  208 + String lineName; //线路名称
  209 + String lineId; // 线路ID
  210 + String abbreviation ; // 公司名称
  211 + String ddfs ; // 调度方式
  212 + String lineStandardCode; // 上海市线路编码
  213 + String parentUnitName ; // 总公司
  214 + for (int i = 0; i < nl.getLength(); i++) {
  215 + parentUnitName = doc.getElementsByTagName("ParentUnitName").item(i).getFirstChild() == null ?"":
  216 + doc.getElementsByTagName("ParentUnitName").item(i).getFirstChild().getNodeValue();
  217 + if(parentUnitName.indexOf("浦东") != -1){// 只查找浦东的数据
  218 + lineName = doc.getElementsByTagName("LineName").item(i).getFirstChild() == null ?"":
  219 + doc.getElementsByTagName("LineName").item(i).getFirstChild().getNodeValue();
  220 + lineId = doc.getElementsByTagName("LineId").item(i).getFirstChild() == null ?"":
  221 + doc.getElementsByTagName("LineId").item(i).getFirstChild().getNodeValue();
  222 + abbreviation = doc.getElementsByTagName("Abbreviation").item(i).getFirstChild() == null ?"":
  223 + doc.getElementsByTagName("Abbreviation").item(i).getFirstChild().getNodeValue();
  224 + ddfs = doc.getElementsByTagName("DDFS").item(i).getFirstChild() == null ?"":
  225 + doc.getElementsByTagName("DDFS").item(i).getFirstChild().getNodeValue();
  226 + lineStandardCode = doc.getElementsByTagName("LineStandardCode").item(i).getFirstChild() == null ?"":
  227 + doc.getElementsByTagName("LineStandardCode").item(i).getFirstChild().getNodeValue();
  228 + map = new HashMap<>();
  229 + map.put("lineName",lineName);
  230 + map.put("lineId",lineId);
  231 + map.put("abbreviation",abbreviation);
  232 + map.put("ddfs",ddfs);
  233 + map.put("lineStandardCode",lineStandardCode);
  234 + list.add(map);
  235 + }
  236 + }
  237 + }catch (Exception e){
  238 + e.printStackTrace();;
  239 + }
  240 + return list;
  241 + }
  242 +
  243 + /**
  244 + * 批量插入用法
  245 + * @param list
  246 + */
  247 + public boolean insertRecord(List<HashMap<String,String>> list)
  248 + {
  249 + boolean flag = false;
  250 + final List<HashMap<String,String>> tempList=list;
  251 + String sql="INSERT INTO JJWGPS_T_SHSXLFILE(XLID,SHSXLBM,XLMC,GSMC,DDFS,CREATETIME,XLMC_ALL) VALUES (?,?,?,?,?,SYSDATE,?)";
  252 + jdbcTemplate = new JdbcTemplate(DBUtils_oldSystem.getDataSource());
  253 + jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter()
  254 + {
  255 + public void setValues(PreparedStatement ps, int i)throws SQLException
  256 + {
  257 + String lineId =tempList.get(i).get("lineId");
  258 + String lineStandardCode =tempList.get(i).get("lineStandardCode");
  259 + String lineName =tempList.get(i).get("lineName");
  260 + String abbreviation =tempList.get(i).get("abbreviation");
  261 + String ddfs =tempList.get(i).get("ddfs");
  262 + String lineNameAll = lineName;
  263 + if(ddfs.equals("2")){
  264 + lineNameAll = lineName+"区间(走向部分在全程线路之外)";
  265 + }else if(ddfs.equals("7")){
  266 + lineNameAll = lineName+"区间(走向在全程线路之内)";
  267 + }
  268 + ps.setString(1, lineId);
  269 + ps.setString(2, lineStandardCode);
  270 + ps.setString(3, lineName);
  271 + ps.setString(4, abbreviation);
  272 + ps.setString(5, ddfs);
  273 + ps.setString(6, lineNameAll);
  274 + }
  275 + public int getBatchSize()
  276 + {
  277 + return tempList.size();
  278 + }
  279 + });
  280 + flag = true;
  281 + return flag;
  282 + }
  283 +}
src/main/resources/static/pages/forms/mould/correctForm.xls
No preview for this file type
src/main/resources/static/pages/forms/mould/inoutstation.xls
No preview for this file type
src/main/resources/static/pages/forms/statement/correctForm.html
@@ -32,13 +32,13 @@ @@ -32,13 +32,13 @@
32 <select class="form-control" name="line" id="line" style="width: 136px;"></select> 32 <select class="form-control" name="line" id="line" style="width: 136px;"></select>
33 </div> 33 </div>
34 <div style="display: inline-block;margin-left: 15px;"> 34 <div style="display: inline-block;margin-left: 15px;">
35 - <span class="item-label" style="width: 80px;">时间: </span> 35 + <span class="item-label" style="width: 80px;">开始时间: </span>
36 <input class="form-control" type="text" id="date" style="width: 120px;"/> 36 <input class="form-control" type="text" id="date" style="width: 120px;"/>
37 </div> 37 </div>
38 -<!-- <div style="display: inline-block;margin-left: 15px;"> -->  
39 -<!-- <span class="item-label" style="width: 80px;">结束时间: </span> -->  
40 -<!-- <input class="form-control" type="text" id="endDate" style="width: 120px;"/> -->  
41 -<!-- </div> --> 38 + <div style="display: inline-block;margin-left: 15px;">
  39 + <span class="item-label" style="width: 80px;">结束时间: </span>
  40 + <input class="form-control" type="text" id="endDate" style="width: 120px;"/>
  41 + </div>
42 <div style="display: inline-block;margin-left: 15px"> 42 <div style="display: inline-block;margin-left: 15px">
43 <span class="item-label" style="width: 140px;">路牌: </span> 43 <span class="item-label" style="width: 140px;">路牌: </span>
44 <select class="form-control" name="lpName" id="lpName" style="width: 136px;"></select> 44 <select class="form-control" name="lpName" id="lpName" style="width: 136px;"></select>
@@ -59,10 +59,11 @@ @@ -59,10 +59,11 @@
59 <table class="table table-bordered table-hover table-checkable" id="forms"> 59 <table class="table table-bordered table-hover table-checkable" id="forms">
60 <thead> 60 <thead>
61 <tr> 61 <tr>
62 - <th colspan="6">营运车辆修正统计表</th> 62 + <th colspan="7">营运车辆修正统计表</th>
63 </tr> 63 </tr>
64 <tr> 64 <tr>
65 <td>编号</td> 65 <td>编号</td>
  66 + <td>日期</td>
66 <td>路牌</td> 67 <td>路牌</td>
67 <td>车号</td> 68 <td>车号</td>
68 <td>司机</td> 69 <td>司机</td>
@@ -96,6 +97,10 @@ @@ -96,6 +97,10 @@
96 format : 'YYYY-MM-DD', 97 format : 'YYYY-MM-DD',
97 locale : 'zh-cn' 98 locale : 'zh-cn'
98 }); 99 });
  100 + $("#endDate").datetimepicker({
  101 + format : 'YYYY-MM-DD',
  102 + locale : 'zh-cn'
  103 + });
99 var d = new Date(); 104 var d = new Date();
100 var year = d.getFullYear(); 105 var year = d.getFullYear();
101 var month = d.getMonth() + 1; 106 var month = d.getMonth() + 1;
@@ -105,6 +110,7 @@ @@ -105,6 +110,7 @@
105 if(day < 10) 110 if(day < 10)
106 day = "0" + day; 111 day = "0" + day;
107 $("#date").val(year + "-" + month + "-" + day); 112 $("#date").val(year + "-" + month + "-" + day);
  113 + $("#endDate").val(year + "-" + month + "-" + day);
108 114
109 $.get('/basic/lineCode2Name',function(result){ 115 $.get('/basic/lineCode2Name',function(result){
110 var data=[]; 116 var data=[];
@@ -197,16 +203,18 @@ @@ -197,16 +203,18 @@
197 }); 203 });
198 204
199 var line = $("#line").val(); 205 var line = $("#line").val();
200 - var date = $("#startDate").val(); 206 + var date = $("#date").val();endDate
201 var lpName = $("#lpName").val(); 207 var lpName = $("#lpName").val();
  208 + var endDate = $("#endDate").val();
202 var code = $("#code").val(); 209 var code = $("#code").val();
203 $("#query").on("click",function(){ 210 $("#query").on("click",function(){
204 line = $("#line").val(); 211 line = $("#line").val();
205 date = $("#date").val(); 212 date = $("#date").val();
206 lpName = $("#lpName").val(); 213 lpName = $("#lpName").val();
207 code = $("#code").val(); 214 code = $("#code").val();
  215 + endDate = $("#endDate").val();
208 var type = "query"; 216 var type = "query";
209 - $get("/realSchedule/correctForm",{line:line,date:date,lpName:lpName,code:code,type:type},function(result){ 217 + $get("/realSchedule/correctForm",{line:line,date:date,endDate:endDate,lpName:lpName,code:code,type:type},function(result){
210 var list_correctForm = template('list_correctForm',{list:result}); 218 var list_correctForm = template('list_correctForm',{list:result});
211 // 把渲染好的模版html文本追加到表格中 219 // 把渲染好的模版html文本追加到表格中
212 $('#forms .list_correctForm').html(list_correctForm); 220 $('#forms .list_correctForm').html(list_correctForm);
@@ -224,7 +232,7 @@ @@ -224,7 +232,7 @@
224 232
225 $("#export").on("click",function(){ 233 $("#export").on("click",function(){
226 var type = "export"; 234 var type = "export";
227 - $get('/realSchedule/correctForm',{line:line,date:date,lpName:lpName,code:code,type:type},function(result){ 235 + $get('/realSchedule/correctForm',{line:line,date:date,endDate:endDate,lpName:lpName,code:code,type:type},function(result){
228 window.open("/downloadFile/download?fileName=修正报表"+date); 236 window.open("/downloadFile/download?fileName=修正报表"+date);
229 }); 237 });
230 }); 238 });
@@ -234,7 +242,8 @@ @@ -234,7 +242,8 @@
234 <script type="text/html" id="list_correctForm"> 242 <script type="text/html" id="list_correctForm">
235 {{each list as obj i}} 243 {{each list as obj i}}
236 <tr> 244 <tr>
237 - <td>{{i+1}}</td> 245 + <td>{{i+1}}</td>
  246 + <td>{{obj.rq}}</td>
238 <td>{{obj.lpName}}</td> 247 <td>{{obj.lpName}}</td>
239 <td>{{obj.clZbh}}</td> 248 <td>{{obj.clZbh}}</td>
240 <td>{{obj.jName}}/{{obj.jGh}}</td> 249 <td>{{obj.jName}}/{{obj.jGh}}</td>
@@ -244,7 +253,7 @@ @@ -244,7 +253,7 @@
244 {{/each}} 253 {{/each}}
245 {{if list.length == 0}} 254 {{if list.length == 0}}
246 <tr> 255 <tr>
247 - <td colspan="6"><h6 class="muted">没有找到相关数据</h6></td> 256 + <td colspan="7"><h6 class="muted">没有找到相关数据</h6></td>
248 </tr> 257 </tr>
249 {{/if}} 258 {{/if}}
250 </script> 259 </script>
src/main/resources/static/pages/oil/add.html
@@ -173,7 +173,7 @@ @@ -173,7 +173,7 @@
173 <div class="row"> 173 <div class="row">
174 <div class="col-md-offset-3 col-md-4"> 174 <div class="col-md-offset-3 col-md-4">
175 <button type="submit" class="btn green" ><i class="fa fa-check"></i> 提交</button> 175 <button type="submit" class="btn green" ><i class="fa fa-check"></i> 提交</button>
176 - <a type="button" class="btn default" href="list.html" data-pjax><i class="fa fa-times"></i> 取消</a> 176 + <a type="button" class="btn default" href="list_ph.html" data-pjax><i class="fa fa-times"></i> 取消</a>
177 </div> 177 </div>
178 </div> 178 </div>
179 </div> 179 </div>
src/main/resources/static/pages/report/inoutstation.html
@@ -31,7 +31,7 @@ @@ -31,7 +31,7 @@
31 <div style="display: inline-block;margin-left: 15px;"> 31 <div style="display: inline-block;margin-left: 15px;">
32 <input class="item-label" type="radio" name="typeLx" checked="checked" value="1" /> 32 <input class="item-label" type="radio" name="typeLx" checked="checked" value="1" />
33 班次执行情况 33 班次执行情况
34 - <input class="item-label" type="radio" name="typeLX" value="2" /> 34 + <input class="item-label" type="radio" name="typeLx" value="2" />
35 车辆/站点 35 车辆/站点
36 </div> 36 </div>
37 <div style="display: inline-block; margin-left: 33px;" id="gsdmDiv"> 37 <div style="display: inline-block; margin-left: 33px;" id="gsdmDiv">
@@ -116,16 +116,17 @@ @@ -116,16 +116,17 @@
116 <thead> 116 <thead>
117 <tr> 117 <tr>
118 <td width="3%"></td> 118 <td width="3%"></td>
119 - <td width="9%">内部编码</td>  
120 - <td width="8%">到站名称</td>  
121 - <td width="8%">到站时刻</td>  
122 - <td width="8%">离站时刻</td>  
123 - <td width="8%">是否开关门</td>  
124 - <td width="8%">上下行</td> 119 + <td width="8%">内部编码</td>
  120 + <td width="8%">牌照号</td>
  121 + <td width="7%">到站名称</td>
  122 + <td width="7%">到站时刻</td>
  123 + <td width="7%">离站时刻</td>
  124 + <td width="7%">是否开关门</td>
  125 + <td width="7%">上下行</td>
125 <td width="8%">开门速度(公里/小时)</td> 126 <td width="8%">开门速度(公里/小时)</td>
126 - <td width="8%">补发</td>  
127 - <td width="8%">刷卡次数</td>  
128 - <td width="8%">刷卡金额</td> 127 + <td width="7%">补发</td>
  128 + <td width="7%">刷卡次数</td>
  129 + <td width="7%">刷卡金额</td>
129 <td width="8%">免费刷卡次数</td> 130 <td width="8%">免费刷卡次数</td>
130 <td width="8%">免费刷卡金额</td> 131 <td width="8%">免费刷卡金额</td>
131 </tr> 132 </tr>
@@ -497,6 +498,7 @@ @@ -497,6 +498,7 @@
497 <tr> 498 <tr>
498 <td>{{i+1}}</td> 499 <td>{{i+1}}</td>
499 <td>{{obj.nbbm}}</td> 500 <td>{{obj.nbbm}}</td>
  501 + <td>{{obj.pzh}}</td>
500 <td>{{obj.stopName}}</td> 502 <td>{{obj.stopName}}</td>
501 <td>{{obj.jzsj}}</td> 503 <td>{{obj.jzsj}}</td>
502 <td>{{obj.czsj}}</td> 504 <td>{{obj.czsj}}</td>
src/main/resources/static/pages/report/sheet/list.html
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 18
19 <div class="page-head"> 19 <div class="page-head">
20 <div class="page-title" style="margin-left: 20px"> 20 <div class="page-title" style="margin-left: 20px">
21 - <button>数据导出</button> 21 + <button id="exportList">数据导出</button>
22 </div> 22 </div>
23 </div> 23 </div>
24 24
@@ -27,7 +27,7 @@ @@ -27,7 +27,7 @@
27 <div class="portlet light porttlet-fit bordered"> 27 <div class="portlet light porttlet-fit bordered">
28 <div class="portlet-body"> 28 <div class="portlet-body">
29 <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 600px"> 29 <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 600px">
30 - <table class="table table-bordered table-hover table-checkable" id="forms_1"> 30 + <table class="table table-bordered table-hover table-checkable" id="forms_2">
31 <thead> 31 <thead>
32 <tr> 32 <tr>
33 <td></td> 33 <td></td>
@@ -40,7 +40,7 @@ @@ -40,7 +40,7 @@
40 </tr> 40 </tr>
41 </thead> 41 </thead>
42 42
43 - <tbody > 43 + <tbody>
44 44
45 </tbody> 45 </tbody>
46 </table> 46 </table>
@@ -55,32 +55,28 @@ @@ -55,32 +55,28 @@
55 // 关闭左侧栏 55 // 关闭左侧栏
56 if (!$('body').hasClass('page-sidebar-closed')) 56 if (!$('body').hasClass('page-sidebar-closed'))
57 $('.menu-toggler.sidebar-toggler').click(); 57 $('.menu-toggler.sidebar-toggler').click();
58 - 58 + var no="";
59 $("#sheetList").on('init', function (e, id) { 59 $("#sheetList").on('init', function (e, id) {
  60 + no=id;
60 $get('/sheet/sheetList',{id:id},function(result){ 61 $get('/sheet/sheetList',{id:id},function(result){
61 - var sheetList_1 = template('sheetList_1',{list:result});  
62 - $('#forms_1 tbody').html(sheetList_1); 62 + var sheetList_2 = template('sheetList_2',{list:result});
  63 + $('#forms_2 tbody').html(sheetList_2);
63 }); 64 });
64 }) 65 })
65 - /* $("#query").on('click',function(){  
66 - var line = $("#line").val();  
67 - var date = $("#date").val();  
68 - var fgs=$('#fgsdm').val();  
69 - var gs=$('#gsdm').val();  
70 - $get('/sheet/countList',{line:line,date:date,gs:gs,fgs:fgs},function(result){  
71 - var sheetList = template('sheetList',{list:result});  
72 - $('#forms tbody').html(sheetList);  
73 - $('.btn-sheetList').on('click', openSheetList);  
74 - });  
75 - }); */ 66 + $("#exportList").on('click',function(){
  67 +
  68 + $get('/sheet/exportList',params,function(result){
  69 + window.open("/downloadFile/download?fileName=班次车辆人员月报表"+moment($("#startDate").val()).format("YYYYMMDD"));
  70 + });
  71 + });
76 72
77 73
78 }); 74 });
79 </script> 75 </script>
80 -<script type="text/html" id="sheetList_1"> 76 +<script type="text/html" id="sheetList_2">
81 {{each list as obj i}} 77 {{each list as obj i}}
82 <tr {{if obj.sfzd!="Y"}}style="color: red" {{/if}}> 78 <tr {{if obj.sfzd!="Y"}}style="color: red" {{/if}}>
83 - <td>{{i}}</td> 79 + <td>{{i+1}}</td>
84 <td>{{obj.date}}</td> 80 <td>{{obj.date}}</td>
85 <td>{{obj.line}}</td> 81 <td>{{obj.line}}</td>
86 <td>{{obj.zdname}}</td> 82 <td>{{obj.zdname}}</td>
src/main/resources/static/pages/report/sheet/sheetList.html
@@ -35,14 +35,20 @@ @@ -35,14 +35,20 @@
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>
38 - <div style="display: inline-block;margin-left: 15px;"> 38 + <div style="margin-top: 10px">
  39 + </div>
  40 + <div style="display: inline-block;margin-left: 33px;">
39 <span class="item-label" style="width: 80px;">线路: </span> 41 <span class="item-label" style="width: 80px;">线路: </span>
40 <select class="form-control" name="line" id="line" style="width: 180px;"></select> 42 <select class="form-control" name="line" id="line" style="width: 180px;"></select>
41 </div> 43 </div>
42 <div style="display: inline-block;"> 44 <div style="display: inline-block;">
43 - <span class="item-label" style="width: 80px;">时间: </span> 45 + <span class="item-label" style="width: 80px;margin-left: 24px;">开始时间: </span>
44 <input class="form-control" type="text" id="date" style="width: 180px;"/> 46 <input class="form-control" type="text" id="date" style="width: 180px;"/>
45 </div> 47 </div>
  48 + <div style="display: inline-block;">
  49 + <span class="item-label" style="width: 80px;margin-left: 24px;">结束时间: </span>
  50 + <input class="form-control" type="text" id="endDate" style="width: 180px;"/>
  51 + </div>
46 52
47 <div class="form-group"> 53 <div class="form-group">
48 <input class="btn btn-default" type="button" id="query" value="查询"/> 54 <input class="btn btn-default" type="button" id="query" value="查询"/>
@@ -65,7 +71,28 @@ @@ -65,7 +71,28 @@
65 </tr> 71 </tr>
66 </thead> 72 </thead>
67 73
68 - <tbody > 74 + <tbody>
  75 +
  76 + </tbody>
  77 + </table>
  78 + </div>
  79 +
  80 + <div class="table-container" style="margin-top: 10px;overflow:auto;min-width: 906px">
  81 + <table class="table table-bordered table-hover table-checkable" id="forms_1">
  82 + <thead>
  83 + <tr class="hidden">
  84 + <td>公司</td>
  85 + <td>分公司</td>
  86 + <td>日期</td>
  87 + <td>线路</td>
  88 + <td>班次数</td>
  89 + <td>准点班次数</td>
  90 + <td>准点率</td>
  91 + <td>查看</td>
  92 + </tr>
  93 + </thead>
  94 +
  95 + <tbody>
69 96
70 </tbody> 97 </tbody>
71 </table> 98 </table>
@@ -85,6 +112,10 @@ @@ -85,6 +112,10 @@
85 format : 'YYYY-MM-DD', 112 format : 'YYYY-MM-DD',
86 locale : 'zh-cn' 113 locale : 'zh-cn'
87 }); 114 });
  115 + $("#endDate").datetimepicker({
  116 + format : 'YYYY-MM-DD',
  117 + locale : 'zh-cn'
  118 + });
88 var d = new Date(); 119 var d = new Date();
89 var year = d.getFullYear(); 120 var year = d.getFullYear();
90 var month = d.getMonth() + 1; 121 var month = d.getMonth() + 1;
@@ -93,8 +124,10 @@ @@ -93,8 +124,10 @@
93 day = "0"+day; 124 day = "0"+day;
94 if(month > 9){ 125 if(month > 9){
95 $("#date").val(year + "-" + month + "-" + day); 126 $("#date").val(year + "-" + month + "-" + day);
  127 + $("#endDate").val(year + "-" + month + "-" + day);
96 } else { 128 } else {
97 $("#date").val(year + "-0" + month + "-" + day); 129 $("#date").val(year + "-0" + month + "-" + day);
  130 + $("#endDate").val(year + "-" + month + "-" + day);
98 } 131 }
99 132
100 var fage=false; 133 var fage=false;
@@ -172,19 +205,34 @@ @@ -172,19 +205,34 @@
172 $("#query").on('click',function(){ 205 $("#query").on('click',function(){
173 var line = $("#line").val(); 206 var line = $("#line").val();
174 var date = $("#date").val(); 207 var date = $("#date").val();
  208 + var endDate = $("#endDate").val();
175 var fgs=$('#fgsdm').val(); 209 var fgs=$('#fgsdm').val();
176 var gs=$('#gsdm').val(); 210 var gs=$('#gsdm').val();
177 - $get('/sheet/countList',{line:line,date:date,gs:gs,fgs:fgs},function(result){ 211 + $get('/sheet/countList',{line:line,date:date,endDate:endDate,gs:gs,fgs:fgs},function(result){
178 var sheetList = template('sheetList',{list:result}); 212 var sheetList = template('sheetList',{list:result});
179 $('#forms tbody').html(sheetList); 213 $('#forms tbody').html(sheetList);
180 - $('.btn-sheetList').on('click', openSheetList); 214 + $('.btn-sheetList').on('click', showSheetList);
181 }); 215 });
182 // $post('/sheet/saveListSheet',function(result){ 216 // $post('/sheet/saveListSheet',function(result){
183 // }); 217 // });
184 }); 218 });
185 - 219 + function showSheetList(){
  220 + var id = $(this).data('id');
  221 + var date = $("#date").val();
  222 + var endDate = $("#endDate").val();
  223 + $get('/sheet/listSheet',{id:id,date:date,endDate:endDate},function(result){
  224 + var sheetList = template('sheetList_1',{list:result});
  225 +
  226 + $('#forms_1 tbody').html(sheetList);
  227 + $('.btn-sheetList_1').on('click', openSheetList);
  228 + $("#forms_1 .hidden").removeClass("hidden");
  229 + $("html,body").animate({scrollTop:$("#forms_1").offset().top},1000);
  230 +
  231 + });
  232 + }
186 function openSheetList(){ 233 function openSheetList(){
187 var id = $(this).data('id'); 234 var id = $(this).data('id');
  235 + console.log(id);
188 $.get('/pages/report/sheet/list.html', function (content) { 236 $.get('/pages/report/sheet/list.html', function (content) {
189 layer.open({ 237 layer.open({
190 type: 1, 238 type: 1,
@@ -221,4 +269,27 @@ @@ -221,4 +269,27 @@
221 <td colspan="7"><h6 class="muted">没有找到相关数据</h6></td> 269 <td colspan="7"><h6 class="muted">没有找到相关数据</h6></td>
222 </tr> 270 </tr>
223 {{/if}} 271 {{/if}}
  272 +</script>
  273 +
  274 +<script type="text/html" id="sheetList_1">
  275 + {{each list as obj i}}
  276 + <tr>
  277 + <td>{{obj.gs}}</td>
  278 + <td>{{obj.fgs}}</td>
  279 + <td>{{obj.date}}</td>
  280 + <td>{{obj.line}}</td>
  281 + <td>{{obj.bcs}}</td>
  282 + <td>{{obj.zdbcs}}</td>
  283 + <td>{{obj.zdlv}}</td>
  284 + <td>
  285 + <button type="button" class="btn btn-sm blue btn-sheetList_1"
  286 + data-id="{{obj.id}}">详细</button>
  287 + </td>
  288 + </tr>
  289 + {{/each}}
  290 + {{if list.length == 0}}
  291 + <tr>
  292 + <td colspan="7"><h6 class="muted">没有找到相关数据</h6></td>
  293 + </tr>
  294 + {{/if}}
224 </script> 295 </script>
225 \ No newline at end of file 296 \ No newline at end of file