From 8cd51e73ac995efc960e1a6beaffa02b41196b4a Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Fri, 22 Sep 2023 16:39:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8C=85=E4=BB=B6=E7=9A=84?= =?UTF-8?q?=E6=9D=A1=E5=BD=A2=E7=A0=81=E7=9A=84=E7=94=9F=E6=88=90=E5=86=85?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionDeliveryListController.java | 20 +++- .../IDistributionDeliveryListService.java | 7 ++ .../DistributionDeliveryListServiceImpl.java | 107 +++++++++++++----- .../DistributionStockArticleServiceImpl.java | 4 +- 4 files changed, 103 insertions(+), 35 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java index fb7bb4076..ea5bbdc05 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java @@ -345,18 +345,28 @@ public class DistributionDeliveryListController extends BladeController { @PostMapping("/printBatch") @ApiOperationSupport(order = 2) - @ApiOperation(value = "批量打印") - public R> printBatch(@ApiParam(value = "主键集合", required = true) @RequestParam String ids ,@ApiParam(value = "打印类型", required = true) @RequestParam Integer type) { - + @ApiOperation(value = "批量打印 配送单") + public R> printBatch(@ApiParam(value = "主键集合", required = true) @RequestParam String ids, @ApiParam(value = "打印类型", required = true) @RequestParam Integer type) { try { - List printPreviewVOS = distributionDeliveryListService.printBatch(ids,type); + List printPreviewVOS = distributionDeliveryListService.printBatch(ids, type); return R.data(printPreviewVOS); } catch (Exception e) { throw new RuntimeException(e); } - } + @PostMapping("/printBatchByReservation") + @ApiOperationSupport(order = 2) + @ApiOperation(value = "批量打印 预约单") + public R> printBatchByReservation(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { + try { + List printPreviewVOS = distributionDeliveryListService.printBatchByReservation(ids); + return R.data(printPreviewVOS); + } catch (Exception e) { + throw new RuntimeException(e); + } + + } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java index 23c790824..ee4418984 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java @@ -228,4 +228,11 @@ public interface IDistributionDeliveryListService extends BaseService printBatch(String ids,Integer type) throws Exception; void testData(String s) throws Exception; + + /** + * 批量打印预约单 + * @param ids + * @return + */ + List printBatchByReservation(String ids); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 8c40bc968..a256e9197 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -3200,7 +3200,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl printBatchByReservation(String ids) { + List list = new ArrayList<>(); + BasicPrintTemplateEntity template = getPrintTemplate(2); + + try { + String html = TemplateUtil.getTemplateByUrl(template.getTemplateUrl()); + + String[] idArray = ids.split(","); + if (ObjectUtils.isNull(idArray)) { + throw new ServiceException("参数错误"); + } + for (String s : idArray) { + + DistributionReservationEntity distributionReservationEntity = distributionReservationMapper.selectById(Long.valueOf(s)); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> printBatchByReservation:distributionReservationEntity {}",distributionReservationEntity); + Map map = new HashMap<>(); + buildMapData(map, distributionReservationEntity); + map.put("承运商", ""); + map.put("配送仓库",""); + // TODO 查询配送单的时间 + map.put("出库时间", ""); + + map.put("送货司机", ""); + map.put("车牌号", ""); + + String popHtml = TemplateUtil.popTemplate("预约单", map, html); + PrintPreviewVO printPreviewVO = new PrintPreviewVO(); + printPreviewVO.setTemplateId(template.getId()); + printPreviewVO.setTemplateHtml(popHtml); + list.add(printPreviewVO); + + } + + } catch (Exception e) { + throw new RuntimeException(e); + } + + return list; + } + public Map getDriverCar(String kind, Long deliveryListEntityId) { Map map = new HashMap<>(); String dirverName = null; @@ -3387,7 +3432,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl handleShiPeiData(BasicPrintTemplateEntity template, String[] idArray,String html) throws Exception { List result = new ArrayList<>(); - List data = new ArrayList<>(); for (String id : idArray) { // 获取需要的数据 @@ -3407,38 +3451,12 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl map = new HashMap<>(); log.debug(">>>> distributionReservationEntity {}",distributionReservationEntity); - map.put("配送单号", distributionReservationEntity.getReservationCode()); - String fileTypeName = QRCodeUtil.createCodeToFile(distributionReservationEntity.getReservationCode()); - map.put("配送单二维码",QRCodeUtil.getEmpAutograph(fileTypeName)); - - // todo 查询运单的收货人电话 - map.put("商场名称", distributionReservationEntity.getMallName()); - map.put("商场电话", distributionReservationEntity.getReservationCode()); - - map.put("送货日期", DateUtil.format(distributionReservationEntity.getReservationDate(), "yyyy-MM-dd") + " 全天"); - - map.put("客户名称", distributionReservationEntity.getConsignee()); - - map.put("客户电话", distributionReservationEntity.getDeliveryPhone()); - - map.put("送货地址", distributionReservationEntity.getDeliveryAddress()); - - // 通过预约单查询预约下面的订单 --1 或者 库存品 --2 - List> spaclOrderList = buildSpaclOrders(distributionReservationEntity, 1); - - map.put("定制品集合", spaclOrderList); - map.put("定制品合计", spaclOrderList.stream().mapToInt(map1 -> Integer.parseInt(map1.get("数量").toString())).sum()); - - - map.put("备注", distributionReservationEntity.getRemarks()); - - + buildMapData(map, distributionReservationEntity); map.put("承运商", byId.getDistributionCompany()); map.put("配送仓库", byId.getWarehouseName()); // TODO 查询配送单的时间 map.put("出库时间", byId.getTaskTime()); - data.add(map); Map driverCar = getDriverCar(byId.getKind(), byId.getId()); String dirverName = driverCar.get("dirverName"); String dirverPhone = driverCar.get("dirverPhone"); @@ -3459,6 +3477,37 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl map,DistributionReservationEntity distributionReservationEntity ){ + map.put("配送单号", distributionReservationEntity.getReservationCode()); + String fileTypeName = QRCodeUtil.createCodeToFile(distributionReservationEntity.getReservationCode()); + map.put("配送单二维码",QRCodeUtil.getEmpAutograph(fileTypeName)); + + // todo 查询运单的收货人电话 + map.put("商场名称", distributionReservationEntity.getMallName()); + map.put("商场电话", distributionReservationEntity.getReservationCode()); + + map.put("送货日期", DateUtil.format(distributionReservationEntity.getReservationDate(), "yyyy-MM-dd") + " 全天"); + + map.put("客户名称", distributionReservationEntity.getConsignee()); + + map.put("客户电话", distributionReservationEntity.getDeliveryPhone()); + + map.put("送货地址", distributionReservationEntity.getDeliveryAddress()); + + // 通过预约单查询预约下面的订单 --1 或者 库存品 --2 + List> spaclOrderList = buildSpaclOrders(distributionReservationEntity, 1); + + map.put("定制品集合", spaclOrderList); + map.put("定制品合计", spaclOrderList.stream().mapToInt(map1 -> Integer.parseInt(map1.get("数量").toString())).sum()); + + map.put("备注", distributionReservationEntity.getRemarks()); + } + private BasicPrintTemplateEntity getPrintTemplate(Integer type) { BasicPrintTemplateEntity template = null; if (2 == type) { diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java index e38a5ec55..2e119938e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java @@ -540,9 +540,11 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl map = JSONObject.parseObject(JSONObject.toJSONString(orderNoList), Map.class); + map.put("id",id); String filename = QRCodeUtil.createCodeToFile(orderNoList.getQrCode()); map.put("img", QRCodeUtil.getEmpAutograph(filename)); - String fileTypeName = QRCodeUtil.createCodeToFileType(orderNoList.getQrCode()); + // 包件ID + String fileTypeName = QRCodeUtil.createCodeToFileType(id); map.put("imgType", QRCodeUtil.getEmpAutograph(fileTypeName)); data.add(map); }