Commit 03466fc6513945487c91d0395f3375d235fa6d9b

Authored by 娄高锋
1 parent cd10c3cd

LGF 导出

src/main/java/com/bsth/controller/realcontrol/ScheduleRealInfoController.java
@@ -310,8 +310,8 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo, @@ -310,8 +310,8 @@ public class ScheduleRealInfoController extends BaseController<ScheduleRealInfo,
310 310
311 @RequestMapping(value = "/historyMessage") 311 @RequestMapping(value = "/historyMessage")
312 public List<Object[]> historyMessage(@RequestParam String line, @RequestParam String date, 312 public List<Object[]> historyMessage(@RequestParam String line, @RequestParam String date,
313 - @RequestParam String code) {  
314 - return scheduleRealInfoService.historyMessage(line, date, code); 313 + @RequestParam String code, @RequestParam String type) {
  314 + return scheduleRealInfoService.historyMessage(line, date, code, type);
315 } 315 }
316 316
317 @RequestMapping(value="/findLine") 317 @RequestMapping(value="/findLine")
@@ -332,8 +332,8 @@ public class ScheduleRealInfoController extends BaseController&lt;ScheduleRealInfo, @@ -332,8 +332,8 @@ public class ScheduleRealInfoController extends BaseController&lt;ScheduleRealInfo,
332 332
333 @RequestMapping(value = "/account") 333 @RequestMapping(value = "/account")
334 public List<Map<String,Object>> account(@RequestParam String line, @RequestParam String date, 334 public List<Map<String,Object>> account(@RequestParam String line, @RequestParam String date,
335 - @RequestParam String code,@RequestParam String xlName) {  
336 - return scheduleRealInfoService.account(line, date, code,xlName); 335 + @RequestParam String code,@RequestParam String xlName, @RequestParam String type) {
  336 + return scheduleRealInfoService.account(line, date, code, xlName, type);
337 } 337 }
338 338
339 @RequestMapping(value = "/correctForm") 339 @RequestMapping(value = "/correctForm")
src/main/java/com/bsth/repository/realcontrol/ScheduleRealInfoRepository.java
@@ -71,7 +71,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI @@ -71,7 +71,7 @@ public interface ScheduleRealInfoRepository extends BaseRepository&lt;ScheduleRealI
71 @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and sflj != 0") 71 @Query(value="select count(jName) from ScheduleRealInfo s where s.jName = ?1 and s.clZbh = ?2 and s.lpName = ?3 and sflj != 0")
72 int findLjbc(String jName,String clZbh,String lpName); 72 int findLjbc(String jName,String clZbh,String lpName);
73 73
74 - @Query(value="SELECT c.company,r.request_code,FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d %T') FROM bsth_v_report_80 r LEFT JOIN bsth_c_cars c ON c.equipment_code = r.device_id where FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d') = ?2 and r.line_id = ?1 and c.inside_code = ?3",nativeQuery=true) 74 + @Query(value="SELECT c.company,r.request_code,FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d %T'),c.inside_code FROM bsth_v_report_80 r LEFT JOIN bsth_c_cars c ON c.equipment_code = r.device_id where FROM_UNIXTIME(r.timestamp/1000,'%Y-%m-%d') = ?2 and r.line_id = ?1 and c.inside_code = ?3",nativeQuery=true)
75 List<Object[]> account(String line,String date,String code); 75 List<Object[]> account(String line,String date,String code);
76 76
77 @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and s.scheduleDate >= str_to_date(?2,'%Y-%m-%d') " 77 @Query(value="select s from ScheduleRealInfo s where s.xlBm = ?1 and s.scheduleDate >= str_to_date(?2,'%Y-%m-%d') "
src/main/java/com/bsth/service/realcontrol/ScheduleRealInfoService.java
@@ -65,7 +65,7 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L @@ -65,7 +65,7 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L
65 65
66 List<Map<String,Object>> dailyInfo(String line,String date,String type); 66 List<Map<String,Object>> dailyInfo(String line,String date,String type);
67 67
68 - List<Object[]> historyMessage(String line,String date,String code); 68 + List<Object[]> historyMessage(String line,String date,String code, String type);
69 69
70 Map<Integer, Integer> trustStatus(String lineCodes); 70 Map<Integer, Integer> trustStatus(String lineCodes);
71 71
@@ -93,7 +93,7 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L @@ -93,7 +93,7 @@ public interface ScheduleRealInfoService extends BaseService&lt;ScheduleRealInfo, L
93 93
94 List<Map<String,String>> findLpName(String lpName); 94 List<Map<String,String>> findLpName(String lpName);
95 95
96 - List<Map<String,Object>> account(String line,String date,String code,String xlName); 96 + List<Map<String,Object>> account(String line,String date,String code,String xlName, String type);
97 97
98 List<ScheduleRealInfo> correctForm(String line,String startDate,String endDate,String lpName,String code); 98 List<ScheduleRealInfo> correctForm(String line,String startDate,String endDate,String lpName,String code);
99 99
src/main/java/com/bsth/service/realcontrol/impl/ScheduleRealInfoServiceImpl.java
@@ -617,7 +617,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -617,7 +617,7 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
617 } 617 }
618 618
619 @Override 619 @Override
620 - public List<Object[]> historyMessage(String line, String date, String code) { 620 + public List<Object[]> historyMessage(String line, String date, String code, String type) {
621 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 621 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
622 long d= 0; 622 long d= 0;
623 long t=0; 623 long t=0;
@@ -639,6 +639,36 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -639,6 +639,36 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
639 obj[4] = BasicData.lineCode2NameMap.get(line); 639 obj[4] = BasicData.lineCode2NameMap.get(line);
640 } 640 }
641 } 641 }
  642 +
  643 + if(type != null && type.length() != 0 && type.equals("export")){
  644 + SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"),
  645 + sdfSimple = new SimpleDateFormat("yyyyMMdd");
  646 + List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
  647 + Map<String,Object> m = new HashMap<String, Object>();
  648 + ReportUtils ee = new ReportUtils();
  649 + List<Map<String, Object>> newList = new ArrayList<Map<String, Object>>();
  650 + for(int i = 0; i < list.size(); i++){
  651 + Map<String, Object> map = new HashMap<String, Object>();
  652 + Object[] obj = list.get(i);
  653 + map.put("num", i + 1);
  654 + map.put("line", obj[4]);
  655 + map.put("clZbh", obj[0]);
  656 + map.put("sender", obj[1]);
  657 + map.put("date", obj[3]);
  658 + map.put("text", obj[2]);
  659 + newList.add(map);
  660 + }
  661 + try {
  662 + listI.add(newList.iterator());
  663 + String path = this.getClass().getResource("/").getPath()+"static\\pages\\forms\\";
  664 + ee.excelReplace(listI, new Object[] { m }, path+"mould\\historyMessage.xls",
  665 + path+"export\\调度历史消息" + sdfSimple.format(sdfMonth.parse(date)) + ".xls");
  666 + } catch (Exception e) {
  667 + // TODO: handle exception
  668 + e.printStackTrace();
  669 + }
  670 + }
  671 +
642 return list; 672 return list;
643 } 673 }
644 674
@@ -1218,13 +1248,15 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1218,13 +1248,15 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1218 1248
1219 @Override 1249 @Override
1220 public List<Map<String, Object>> account(String line, String date, 1250 public List<Map<String, Object>> account(String line, String date,
1221 - String code,String xlName) { 1251 + String code,String xlName, String type) {
1222 List<Object[]> lsitObj = scheduleRealInfoRepository.account(line,date,code); 1252 List<Object[]> lsitObj = scheduleRealInfoRepository.account(line,date,code);
1223 List<Map<String,Object>> listMap = new ArrayList<Map<String,Object>>(); 1253 List<Map<String,Object>> listMap = new ArrayList<Map<String,Object>>();
1224 Map<String,Object> map; 1254 Map<String,Object> map;
  1255 + int i = 1;
1225 for(Object[] obj : lsitObj){ 1256 for(Object[] obj : lsitObj){
1226 if(obj != null){ 1257 if(obj != null){
1227 map = new HashMap<String,Object>(); 1258 map = new HashMap<String,Object>();
  1259 + map.put("num", i++);
1228 map.put("xlName", xlName); 1260 map.put("xlName", xlName);
1229 map.put("clZbh", obj[3]); 1261 map.put("clZbh", obj[3]);
1230 map.put("company", obj[0]); 1262 map.put("company", obj[0]);
@@ -1233,6 +1265,38 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf @@ -1233,6 +1265,38 @@ public class ScheduleRealInfoServiceImpl extends BaseServiceImpl&lt;ScheduleRealInf
1233 listMap.add(map); 1265 listMap.add(map);
1234 } 1266 }
1235 } 1267 }
  1268 +
  1269 + if(type != null && type.length() != 0 && type.equals("export")){
  1270 + SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"),
  1271 + sdfSimple = new SimpleDateFormat("yyyyMMdd");
  1272 + List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
  1273 + Map<String,Object> m = new HashMap<String, Object>();
  1274 + ReportUtils ee = new ReportUtils();
  1275 + Map<String, Object> typeMap = new HashMap<String, Object>();
  1276 + typeMap.put("0xA1", "请求恢复运营");
  1277 + typeMap.put("0xA2", "申请调档");
  1278 + typeMap.put("0xA3", "出场请求");
  1279 + typeMap.put("0xA5", "进场请求");
  1280 + typeMap.put("0xA7", "加油请求");
  1281 + typeMap.put("0x50", "车辆故障");
  1282 + typeMap.put("0x70", "路阻报告");
  1283 + typeMap.put("0x60", "事故报告");
  1284 + typeMap.put("0x11", "扣证纠纷");
  1285 + typeMap.put("0x12", "报警");
  1286 + for(Map<String, Object> map1 : listMap){
  1287 + map1.put("requestText", typeMap.get(map1.get("requestType")));
  1288 + }
  1289 + try {
  1290 + listI.add(listMap.iterator());
  1291 + String path = this.getClass().getResource("/").getPath()+"static\\pages\\forms\\";
  1292 + ee.excelReplace(listI, new Object[] { m }, path+"mould\\account.xls",
  1293 + path+"export\\驾驶员请求台账" + sdfSimple.format(sdfMonth.parse(date)) + ".xls");
  1294 + } catch (Exception e) {
  1295 + // TODO: handle exception
  1296 + e.printStackTrace();
  1297 + }
  1298 + }
  1299 +
1236 return listMap; 1300 return listMap;
1237 } 1301 }
1238 1302
src/main/resources/static/pages/forms/statement/account.html
@@ -41,7 +41,7 @@ @@ -41,7 +41,7 @@
41 </div> 41 </div>
42 <div class="form-group"> 42 <div class="form-group">
43 <input class="btn btn-default" type="button" id="query" value="筛选"/> 43 <input class="btn btn-default" type="button" id="query" value="筛选"/>
44 -<!-- <input class="btn btn-default" type="button" id="export" value="导出"/> --> 44 + <input class="btn btn-default" type="button" id="export" value="导出"/>
45 </div> 45 </div>
46 </form> 46 </form>
47 </div> 47 </div>
@@ -70,6 +70,9 @@ @@ -70,6 +70,9 @@
70 70
71 <script> 71 <script>
72 $(function(){ 72 $(function(){
  73 + $("#export").attr('disabled',"true");
  74 +
  75 +
73 var reqCodeMap = {"0xA1": '请求恢复运营', "0xA2": '申请调档', "0xA3": '出场请求', "0xA5": '进场请求', "0xA7": '加油请求', "0x50": '车辆故障', "0x70": '路阻报告', "0x60": '事故报告', "0x11": '扣证纠纷', "0x12" : '报警'}; 76 var reqCodeMap = {"0xA1": '请求恢复运营', "0xA2": '申请调档', "0xA3": '出场请求', "0xA5": '进场请求', "0xA7": '加油请求', "0x50": '车辆故障', "0x70": '路阻报告', "0x60": '事故报告', "0x11": '扣证纠纷', "0x12" : '报警'};
74 // 关闭左侧栏 77 // 关闭左侧栏
75 if (!$('body').hasClass('page-sidebar-closed')) 78 if (!$('body').hasClass('page-sidebar-closed'))
@@ -130,14 +133,19 @@ @@ -130,14 +133,19 @@
130 } 133 }
131 } 134 }
132 }); 135 });
133 - 136 +
  137 + var line = $("#line").val();
  138 + var xlName = $("#select2-line-container").html();
  139 + var date = $("#date").val();
  140 + var code = $("#code").val();
134 $("#query").on("click",function(){ 141 $("#query").on("click",function(){
135 - var line = $("#line").val();  
136 - var xlName = $("#select2-line-container").html();  
137 - var date = $("#date").val();  
138 - var code = $("#code").val(); 142 + line = $("#line").val();
  143 + xlName = $("#select2-line-container").html();
  144 + date = $("#date").val();
  145 + code = $("#code").val();
  146 + var type = "query";
139 $(".hidden").removeClass("hidden"); 147 $(".hidden").removeClass("hidden");
140 - $post('/realSchedule/account',{line:line,date:date,code:code,xlName:xlName},function(result){ 148 + $post('/realSchedule/account',{line:line,date:date,code:code,xlName:xlName,type:type},function(result){
141 $.each(result, function(i, obj) { 149 $.each(result, function(i, obj) {
142 obj.requestType = reqCodeMap[obj.requestType]; 150 obj.requestType = reqCodeMap[obj.requestType];
143 }); 151 });
@@ -145,8 +153,22 @@ @@ -145,8 +153,22 @@
145 var tbodyHtml = template('list_account',{list:result}); 153 var tbodyHtml = template('list_account',{list:result});
146 // 把渲染好的模版html文本追加到表格中 154 // 把渲染好的模版html文本追加到表格中
147 $('#forms tbody').html(tbodyHtml); 155 $('#forms tbody').html(tbodyHtml);
  156 +
  157 + if(result.length == 0)
  158 + $("#export").attr('disabled',"true");
  159 + else
  160 + $("#export").removeAttr("disabled");
  161 +
148 }); 162 });
149 - }); 163 + });
  164 +
  165 + $("#export").on("click",function(){
  166 + var type = "export";
  167 + $get('/realSchedule/account', {line:line,date:date,code:code,xlName:xlName,type:type}, function(result){
  168 + window.open("/downloadFile/download?fileName=驾驶员请求台账"+moment(date).format("YYYYMMDD"));
  169 + });
  170 + });
  171 +
150 }); 172 });
151 </script> 173 </script>
152 <script type="text/html" id="list_account"> 174 <script type="text/html" id="list_account">
src/main/resources/static/pages/forms/statement/historyMessage.html
@@ -41,7 +41,7 @@ @@ -41,7 +41,7 @@
41 </div> 41 </div>
42 <div class="form-group"> 42 <div class="form-group">
43 <input class="btn btn-default" type="button" id="query" value="筛选"/> 43 <input class="btn btn-default" type="button" id="query" value="筛选"/>
44 -<!-- <input class="btn btn-default" type="button" id="export" value="导出"/> --> 44 + <input class="btn btn-default" type="button" id="export" value="导出"/>
45 </div> 45 </div>
46 </form> 46 </form>
47 </div> 47 </div>
@@ -69,7 +69,9 @@ @@ -69,7 +69,9 @@
69 </div> 69 </div>
70 70
71 <script> 71 <script>
72 - $(function(){ 72 + $(function(){
  73 + $('#export').attr('disabled', "true");
  74 +
73 // 关闭左侧栏 75 // 关闭左侧栏
74 if (!$('body').hasClass('page-sidebar-closed')) 76 if (!$('body').hasClass('page-sidebar-closed'))
75 $('.menu-toggler.sidebar-toggler').click(); 77 $('.menu-toggler.sidebar-toggler').click();
@@ -127,21 +129,35 @@ @@ -127,21 +129,35 @@
127 } 129 }
128 } 130 }
129 }); 131 });
130 - 132 +
  133 + var line = $("#line").val();
  134 + var date = $("#date").val();
  135 + var code = $("#code").val();
131 $("#query").on("click",function(){ 136 $("#query").on("click",function(){
132 - var line = $("#line").val();  
133 - var date = $("#date").val();  
134 - var code = $("#code").val(); 137 + line = $("#line").val();
  138 + date = $("#date").val();
  139 + code = $("#code").val();
  140 + var type = "query";
135 $(".hidden").removeClass("hidden"); 141 $(".hidden").removeClass("hidden");
136 $get('/realSchedule/historyMessage',{line:line,date:date,code:code},function(result){ 142 $get('/realSchedule/historyMessage',{line:line,date:date,code:code},function(result){
137 // 把数据填充到模版中 143 // 把数据填充到模版中
138 var tbodyHtml = template('list_history',{list:result}); 144 var tbodyHtml = template('list_history',{list:result});
139 // 把渲染好的模版html文本追加到表格中 145 // 把渲染好的模版html文本追加到表格中
140 $('#forms tbody').html(tbodyHtml); 146 $('#forms tbody').html(tbodyHtml);
  147 +
  148 + if(result.length == 0)
  149 + $("#export").attr('disabled',"true");
  150 + else
  151 + $("#export").removeAttr("disabled");
  152 +
141 }); 153 });
142 }); 154 });
  155 +
143 $("#export").on("click",function(){ 156 $("#export").on("click",function(){
144 - $('#forms').tableExport({ type: 'excel', escape: 'false',filename:'(2016-02-29_2016-03-06)'}); 157 + var type = "export";
  158 + $get('/realSchedule/historyMessage', {line:line,date:date,code:code,type:type}, function(result){
  159 + window.open("/downloadFile/download?fileName=调度历史消息"+moment(date).format("YYYYMMDD"));
  160 + });
145 }); 161 });
146 162
147 }); 163 });