From 58b8ab921ba5b855807872c849705d3f176dffb5 Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期六, 15 二月 2025 11:38:59 +0800 Subject: [PATCH] 兼容四期 --- src/main/java/com/zy/asrs/controller/ReportDownloadController.java | 91 +++++++++++++++++++++++++++++++++++++-------- 1 files changed, 74 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/ReportDownloadController.java b/src/main/java/com/zy/asrs/controller/ReportDownloadController.java index 79b80a2..9261a94 100644 --- a/src/main/java/com/zy/asrs/controller/ReportDownloadController.java +++ b/src/main/java/com/zy/asrs/controller/ReportDownloadController.java @@ -7,21 +7,23 @@ import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.R; -import com.zy.asrs.entity.AgvWrkMastLog; -import com.zy.asrs.entity.ViewWorkCountInView; +import com.zy.asrs.entity.*; import com.zy.asrs.mapper.ReportQueryMapper; import com.zy.asrs.service.AgvWrkMastLogService; import com.zy.common.web.BaseController; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; +import javax.xml.soap.SAAJResult; import java.io.IOException; import java.net.URLEncoder; import java.util.HashMap; import java.util.List; import java.util.Map; +@Slf4j @RestController @RequestMapping("/report/download") public class ReportDownloadController extends BaseController { @@ -41,9 +43,8 @@ * * @since 2.1.1 */ - @GetMapping("/in") - public void download1(HttpServletResponse response, - @RequestParam Map<String, Object> param) throws IOException { + @GetMapping("/countIn") + public void download1(HttpServletResponse response, @RequestParam Map<String, Object> param) throws IOException { try { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); @@ -51,8 +52,7 @@ String fileName = URLEncoder.encode("鏃ュ叆搴撴眹鎬�", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); // 杩欓噷闇�瑕佽缃笉鍏抽棴娴� - EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") - .doWrite(getInData(param)); + EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1").doWrite(getInData(param)); } catch (Exception e) { // 閲嶇疆response response.reset(); @@ -85,18 +85,17 @@ * * @since 2.1.1 */ - @RequestMapping("/out") - public void download2(HttpServletResponse response, - @RequestParam Map<String, Object> param) throws IOException { + @RequestMapping("/countOut") + public void download2(HttpServletResponse response, @RequestParam Map<String, Object> param) throws IOException { try { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴 String fileName = URLEncoder.encode("鏃ュ嚭搴撴眹鎬�", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List<ViewWorkCountInView> outData = getOutData(param); // 杩欓噷闇�瑕佽缃笉鍏抽棴娴� - EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") - .doWrite(getOutData(param)); + EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1").doWrite(outData); } catch (Exception e) { // 閲嶇疆response response.reset(); @@ -119,7 +118,7 @@ startTime = split[0].split(" ")[0].replace("-", "."); endTime = split[1].split(" ")[0].replace("-", "."); } - List<ViewWorkCountInView> allCountIn = reportQueryMapper.selectWorkCountOut(Integer.valueOf((String) param.get("pageNumber")), Integer.valueOf((String) param.get("pageSize")), (String) param.get("matnr"), startTime, endTime); + List<ViewWorkCountInView> allCountIn = reportQueryMapper.selectWorkCountOut(null,null, (String) param.get("matnr"), startTime, endTime); return allCountIn; } @@ -131,8 +130,7 @@ * @since 2.1.1 */ @RequestMapping("/wrkMastLog") - public void wrkMastLog(HttpServletResponse response, - @RequestParam Map<String, Object> param) throws IOException { + public void wrkMastLog(HttpServletResponse response, @RequestParam Map<String, Object> param) throws IOException { try { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); @@ -140,8 +138,7 @@ String fileName = URLEncoder.encode("宸ヤ綔妗g淮鎶ゆ棩蹇�", "UTF-8").replaceAll("\\+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); // 杩欓噷闇�瑕佽缃笉鍏抽棴娴� - EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") - .doWrite(getWrkMastLogData(param)); + EasyExcel.write(response.getOutputStream(), ViewWorkCountInView.class).autoCloseStream(Boolean.FALSE).sheet("sheet1").doWrite(getWrkMastLogData(param)); } catch (Exception e) { // 閲嶇疆response response.reset(); @@ -178,4 +175,64 @@ } } } + + + /** + * 鏂囦欢涓嬭浇骞朵笖澶辫触鐨勬椂鍊欒繑鍥瀓son锛堥粯璁ゅけ璐ヤ簡浼氳繑鍥炰竴涓湁閮ㄥ垎鏁版嵁鐨凟xcel锛� + * 鏃ュ嚭搴撴槑缁嗙粺璁� + * + * @since 2.1.1 + */ + @RequestMapping("/out") + public void out(HttpServletResponse response, @RequestParam(required = false) Map<String, Object> bean) throws IOException { + try { + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴 + String fileName = URLEncoder.encode("鏃ュ嚭搴撴槑缁嗙粺璁�", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List<ViewWorkInBean> list = reportQueryMapper.queryViewWorkOutList(JSON.parseObject(JSON.toJSONString(bean), ViewWorkInBean.class)); + // 杩欓噷闇�瑕佽缃笉鍏抽棴娴� + EasyExcel.write(response.getOutputStream(), ViewWorkInBean.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)); + } + } + + /** + * 鏂囦欢涓嬭浇骞朵笖澶辫触鐨勬椂鍊欒繑鍥瀓son锛堥粯璁ゅけ璐ヤ簡浼氳繑鍥炰竴涓湁閮ㄥ垎鏁版嵁鐨凟xcel锛� + * 鏃ュ叆搴撴槑缁嗙粺璁� + * + * @since 2.1.1 + */ + @RequestMapping("/in") + public void in(HttpServletResponse response, @RequestParam(required = false) Map<String, Object> bean) throws IOException { + try { + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴 + String fileName = URLEncoder.encode("鏃ュ叆搴撴槑缁嗙粺璁�", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + ViewWorkInBean viewWorkInBean = JSON.parseObject(JSON.toJSONString(bean), ViewWorkInBean.class); + List<ViewWorkInBean> list = reportQueryMapper.queryViewWorkInList(viewWorkInBean); + // 杩欓噷闇�瑕佽缃笉鍏抽棴娴� + EasyExcel.write(response.getOutputStream(), ViewWorkInBean.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)); + } + } } -- Gitblit v1.9.1