From f1eb8682fe18145a7fe079c3d5579178533713b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Tue, 17 Mar 2026 10:51:07 +0800 Subject: [PATCH] =?UTF-8?q?feat(normal-order):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E7=AE=B1=E7=A0=81=E6=A0=87=E7=AD=BE=E5=9B=BE=E7=89=87=E5=AF=BC?= =?UTF-8?q?=E5=87=BAPDF=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/NormalOrderController.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java index fe6a4cf3..d78cbe12 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java @@ -478,4 +478,34 @@ public class NormalOrderController extends BaseController { headers.setContentLength(zipBytes.length); return new ResponseEntity<>(zipBytes, headers, HttpStatus.OK); } + + /** + * 导出箱码标签图片为PDF + * @param materials 物料列表 + */ + @PostMapping("exportBoxPdf") + public void exportBoxPdf(HttpServletResponse response, @RequestBody @NotEmpty List materials) throws Exception { + List qrCodeMasters = materials.stream() + .map(it -> new WmsQrCodeMaster() + .setBarcodeCode(KeyUtil.next()) + .setProcessStage(BarCodeProcessStage.Unpackaged.getState()) + .setBarcodeType(BarCodeType.Purchase.getState()) + .setMaterialCode(it.getMaterialNo()) + .setMaterialDescription(it.getMaterialDes()) + .setPackagingType((short) 1) + .setCreateUserId(UserUtil.getUserId()) + .setUnit("箱") + .setQuantity(BigDecimal.valueOf(1.0)) + .setSupplierCode(it.getSupplierCode()) + .setSupplierId(it.getSupplierId()) + .setCreateUserName(UserUtil.getUserName()) + .setCreateTime(LocalDateTime.now())) + .toList(); + qrCodeMasterService.saveBatch(qrCodeMasters); + Map variables = new HashMap<>(); + variables.put("list", convertToPrintDTO(qrCodeMasters)); + String html = ThymeleafUtil.generator("/template/qrcode/", "dp-2", ".html", variables); + URL baseUrl = new ClassPathResource("template/qrcode/").getURL(); + PdfGeneratorUtil.generatePdf("箱码标签图片", html, baseUrl.toString(), response); + } } \ No newline at end of file