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