From ef8cfff5b8441c7935476f1c8a8ed8e78ecfd74b Mon Sep 17 00:00:00 2001 From: yiming Date: Thu, 19 May 2022 09:50:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=85=A8=E9=83=A8=E7=9B=98?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/StockController.java | 14 +++++++- .../zhehekeji/web/service/StockService.java | 34 +++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/web/src/main/java/com/zhehekeji/web/controller/StockController.java b/web/src/main/java/com/zhehekeji/web/controller/StockController.java index a011c8c..28b1674 100644 --- a/web/src/main/java/com/zhehekeji/web/controller/StockController.java +++ b/web/src/main/java/com/zhehekeji/web/controller/StockController.java @@ -81,7 +81,7 @@ public class StockController { return Result.success(stockService.page(pageSearch)); } - @ApiOperation(value = "导出全部巷道excel") + @ApiOperation(value = "导出巷道excel") @RequestMapping(value = "/export", method = RequestMethod.GET) public void export(@RequestParam Integer streetId, HttpServletResponse response) throws IOException { OutputStream os = response.getOutputStream(); @@ -93,6 +93,18 @@ public class StockController { EasyExcel.write(os, StockExportExcel.class).sheet().doWrite(excels); } + @ApiOperation(value = "导出巷道excel") + @RequestMapping(value = "/exportAll", method = RequestMethod.GET) + public void exportAll(HttpServletResponse response) throws IOException { + OutputStream os = response.getOutputStream(); + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + String fileName = URLEncoder.encode("全部巷道盘点结果" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm")), "UTF-8"); + response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); + List excels = stockService.exportAllExcels(); + EasyExcel.write(os, StockExportExcel.class).sheet().doWrite(excels); + } + @ApiOperation(value = "复核页面的核对信息") @RequestMapping(value = "/info", method = RequestMethod.POST) public Result stockInfo(@RequestBody StockCheck stockCheck) { diff --git a/web/src/main/java/com/zhehekeji/web/service/StockService.java b/web/src/main/java/com/zhehekeji/web/service/StockService.java index 636f304..01575ac 100644 --- a/web/src/main/java/com/zhehekeji/web/service/StockService.java +++ b/web/src/main/java/com/zhehekeji/web/service/StockService.java @@ -13,6 +13,7 @@ import com.zhehekeji.web.entity.Street; import com.zhehekeji.web.mapper.CheckLogMapper; import com.zhehekeji.web.mapper.StockLogMapper; import com.zhehekeji.web.mapper.StockMapper; +import com.zhehekeji.web.mapper.StreetMapper; import com.zhehekeji.web.pojo.category.PageSearch; import com.zhehekeji.web.pojo.stock.*; import io.swagger.models.auth.In; @@ -40,6 +41,8 @@ public class StockService { private CheckLogMapper logMapper; @Resource private StockLogMapper stockLogMapper; + @Resource + private StreetMapper streetMapper; public void importExcel(MultipartFile file) { log.info("import excel stock"); @@ -278,6 +281,37 @@ public class StockService { return stockExportExcels; } + + public List exportAllExcels() { + List stocks = stockMapper.selectByMap(new HashMap<>()); + List streets = streetMapper.selectByMap(new HashMap<>()); + Map> shevleMaps = new HashMap<>(); + streets.forEach(street -> { + List shelveIds = streetService.check(street); + shevleMaps.put(street.getName(),shelveIds); + }); + //Street street = streetService.streetById(streetId); + List stockExportExcels = new ArrayList<>(stocks.size()); + stocks.forEach(stock -> { + StockExportExcel stockExportExcel = new StockExportExcel(); + stockExportExcel.setCode(stock.getTrayCode()); + stockExportExcel.setLotnum(stock.getLotnum()); + stockExportExcel.setColumn(stock.getColumn()); + //stockExportExcel.setCount(stock.getCount()); + stockExportExcel.setRow(stock.getRow()); + shevleMaps.forEach((k,v)->{ + if(v.contains(stock.getShelveId())){ + stockExportExcel.setStreetName(k); + } + }); + stockExportExcel.setExportTime(stock.getExportTime()); + stockExportExcel.setShelveId(stock.getShelveId()); + stockExportExcel.setStatus(stock.getStatus()); + stockExportExcels.add(stockExportExcel); + }); + return stockExportExcels; + } + /** * 获取行列号,货架号对应的格子信息 *