src/main/java/com/zy/asrs/controller/ReportDownloadController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/report/workCountIn.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/report/workCountOut.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/report/workIn.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/report/workOut.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/report/viewWorkCountIn.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/report/viewWorkCountOut.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/report/viewWorkIn.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/report/viewWorkOut.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/ReportDownloadController.java
@@ -8,7 +8,9 @@ import com.core.common.DateUtils; import com.core.common.R; import com.zy.asrs.entity.AgvWrkMastLog; import com.zy.asrs.entity.ViewInOutBean; import com.zy.asrs.entity.ViewWorkCountInView; import com.zy.asrs.entity.ViewWorkInBean; import com.zy.asrs.mapper.ReportQueryMapper; import com.zy.asrs.service.AgvWrkMastLogService; import com.zy.common.web.BaseController; @@ -41,7 +43,7 @@ * * @since 2.1.1 */ @GetMapping("/in") @GetMapping("/countIn") public void download1(HttpServletResponse response, @RequestParam Map<String, Object> param) throws IOException { try { @@ -85,7 +87,7 @@ * * @since 2.1.1 */ @RequestMapping("/out") @RequestMapping("/countOut") public void download2(HttpServletResponse response, @RequestParam Map<String, Object> param) throws IOException { try { @@ -178,4 +180,67 @@ } } } /** * 文件下载并且失败的时候返回json(默认失败了会返回一个有部分数据的Excel) * 日出库明细统计 * * @since 2.1.1 */ @RequestMapping("/out") public void out(HttpServletResponse response, @RequestParam ViewWorkInBean bean) throws IOException { try { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("日出库明细统计", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); List<ViewWorkInBean> list = reportQueryMapper.queryViewWorkOutList(bean); // 这里需要设置不关闭流 EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") .doWrite(list); } catch (Exception e) { // 重置response response.reset(); response.setContentType("application/json"); response.setCharacterEncoding("utf-8"); Map<String, String> map = new HashMap<>(); map.put("status", "failure"); map.put("message", "下载文件失败" + e.getMessage()); response.getWriter().println(JSON.toJSONString(map)); } } /** * 文件下载并且失败的时候返回json(默认失败了会返回一个有部分数据的Excel) * 日入库明细统计 * * @since 2.1.1 */ @RequestMapping("/in") public void in(HttpServletResponse response, @RequestParam ViewWorkInBean bean) throws IOException { try { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("日入库明细统计", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); List<ViewWorkInBean> list = reportQueryMapper.queryViewWorkInList(bean); // 这里需要设置不关闭流 EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") .doWrite(list); } catch (Exception e) { // 重置response response.reset(); response.setContentType("application/json"); response.setCharacterEncoding("utf-8"); Map<String, String> map = new HashMap<>(); map.put("status", "failure"); map.put("message", "下载文件失败" + e.getMessage()); response.getWriter().println(JSON.toJSONString(map)); } } } src/main/webapp/static/js/report/workCountIn.js
@@ -99,7 +99,7 @@ exportData[this.name] = this.value; param += this.name + '=' + this.value + '&'; }); window.location.href = baseUrl + "/report/download/in" + param; window.location.href = baseUrl + "/report/download/countIn" + param; layer.closeAll(); // var param = { // fields: fields, src/main/webapp/static/js/report/workCountOut.js
@@ -92,12 +92,10 @@ } }); var param = '?'; var exportData = {}; $.each($('#search-box [name]').serializeArray(), function() { exportData[this.name] = this.value; param += this.name + '=' + this.value + '&'; }); window.location.href = baseUrl + "/report/download/in" + param; window.location.href = baseUrl + "/report/download/countOut" + param; layer.closeAll(); // var param = { // fields: fields, src/main/webapp/static/js/report/workIn.js
@@ -88,32 +88,38 @@ fields.push(col.field); } }); var exportData = {}; var param = '?'; $.each($('#search-box [name]').serializeArray(), function() { exportData[this.name] = this.value; param += this.name + '=' + this.value + '&'; }); var param = { fields: fields, exportData: exportData }; $.ajax({ url: baseUrl+"/report/viewWorkInExport.action", headers: {'token': localStorage.getItem('token')}, data: JSON.stringify(param), dataType:'json', contentType:'application/json;charset=UTF-8', method: 'POST', success: function (res) { layer.closeAll(); if (res.code === 200) { table.exportFile(titles,res.data,'xls'); } else if (res.code === 403) { top.location.href = baseUrl+"/"; } else { layer.msg(res.msg) } } }); window.location.href = baseUrl + "/report/download/in" + param; layer.closeAll(); // var exportData = {}; // $.each($('#search-box [name]').serializeArray(), function() { // exportData[this.name] = this.value; // }); // var param = { // fields: fields, // exportData: exportData // }; // $.ajax({ // url: baseUrl+"/report/viewWorkInExport.action", // headers: {'token': localStorage.getItem('token')}, // data: JSON.stringify(param), // dataType:'json', // contentType:'application/json;charset=UTF-8', // method: 'POST', // success: function (res) { // layer.closeAll(); // if (res.code === 200) { // table.exportFile(titles,res.data,'xls'); // } else if (res.code === 403) { // top.location.href = baseUrl+"/"; // } else { // layer.msg(res.msg) // } // } // }); }); break; } src/main/webapp/static/js/report/workOut.js
@@ -90,32 +90,38 @@ fields.push(col.field); } }); var exportData = {}; var param = '?'; $.each($('#search-box [name]').serializeArray(), function() { exportData[this.name] = this.value; param += this.name + '=' + this.value + '&'; }); var param = { fields: fields, exportData: exportData }; $.ajax({ url: baseUrl+"/report/viewWorkOutExport.action", headers: {'token': localStorage.getItem('token')}, data: JSON.stringify(param), dataType:'json', contentType:'application/json;charset=UTF-8', method: 'POST', success: function (res) { layer.closeAll(); if (res.code === 200) { table.exportFile(titles,res.data,'xls'); } else if (res.code === 403) { top.location.href = baseUrl+"/"; } else { layer.msg(res.msg) } } }); window.location.href = baseUrl + "/report/download/out" + param; layer.closeAll(); // var exportData = {}; // $.each($('#search-box [name]').serializeArray(), function() { // exportData[this.name] = this.value; // }); // var param = { // fields: fields, // exportData: exportData // }; // $.ajax({ // url: baseUrl+"/report/viewWorkOutExport.action", // headers: {'token': localStorage.getItem('token')}, // data: JSON.stringify(param), // dataType:'json', // contentType:'application/json;charset=UTF-8', // method: 'POST', // success: function (res) { // layer.closeAll(); // if (res.code === 200) { // table.exportFile(titles,res.data,'xls'); // } else if (res.code === 403) { // top.location.href = baseUrl+"/"; // } else { // layer.msg(res.msg) // } // } // }); }); break; } src/main/webapp/views/report/viewWorkCountIn.html
@@ -57,7 +57,7 @@ <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workCountIn.js?v=3" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workCountIn.js?v=4" charset="utf-8"></script> </body> </html> src/main/webapp/views/report/viewWorkCountOut.html
@@ -58,7 +58,7 @@ <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workCountOut.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workCountOut.js?v=1" charset="utf-8"></script> </body> </html> src/main/webapp/views/report/viewWorkIn.html
@@ -55,7 +55,7 @@ <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workIn.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workIn.js?v=2" charset="utf-8"></script> </body> </html> src/main/webapp/views/report/viewWorkOut.html
@@ -55,7 +55,7 @@ <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workOut.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/report/workOut.js?v=1" charset="utf-8"></script> </body> </html>