diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/print/PrintConfig.java b/cash-service/order-service/src/main/java/com/czg/service/order/print/PrintConfig.java index 42757c449..d783ddbbe 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/print/PrintConfig.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/print/PrintConfig.java @@ -103,8 +103,14 @@ public class PrintConfig implements ApplicationRunner { orderInfo.setPlaceNum(placeNum); yield orderDetailService.list(new QueryWrapper().eq(OrderDetail::getOrderId, orderInfo.getId()).eq(OrderDetail::getPlaceNum, placeNum)); } - case PrinterHandler.PrintTypeEnum.ORDER, PrinterHandler.PrintTypeEnum.PRE_ORDER, - PrinterHandler.PrintTypeEnum.ONLY_KITCHEN, PrinterHandler.PrintTypeEnum.ALL_KITCHEN -> + case PrinterHandler.PrintTypeEnum.ONLY_KITCHEN, PrinterHandler.PrintTypeEnum.ALL_KITCHEN -> { + QueryWrapper queryWrapper = new QueryWrapper().eq(OrderDetail::getOrderId, orderInfo.getId()); + if ("after-pay".equals(orderInfo.getPayMode())) { + queryWrapper.eq(OrderDetail::getPlaceNum, orderInfo.getPlaceNum()); + } + yield orderDetailService.list(queryWrapper); + } + case PrinterHandler.PrintTypeEnum.ORDER, PrinterHandler.PrintTypeEnum.PRE_ORDER -> orderDetailService.list(new QueryWrapper().eq(OrderDetail::getOrderId, orderInfo.getId())); default -> orderDetailList; }; @@ -138,20 +144,20 @@ public class PrintConfig implements ApplicationRunner { log.info("准备开始打印菜品单"); //后厨单菜品 tbOrderDetailList.forEach(item -> { -// Boolean b = redisService.hasKey(RedisCst.kitchenOnly(orderInfo.getId(), machine.getId(), item.getId())); -// if (!b) { + Boolean b = redisService.hasKey(RedisCst.kitchenOnly(orderInfo.getId(), machine.getId(), item.getId())); + if (!b) { FunUtils.safeRunVoid(() -> printer.onlyKitchenPrint(orderInfo, item, machine), "订单id:{} ,后厨分单打印失败", orderInfo.getId()); // 保存已打印信息 -// redisService.set(RedisCst.kitchenOnly(orderInfo.getId(), machine.getId(), item.getId()), "", 180); -// } + redisService.set(RedisCst.kitchenOnly(orderInfo.getId(), machine.getId(), item.getId()), "", 20); + } }); break; case PrinterHandler.PrintTypeEnum.ALL_KITCHEN: -// Boolean exit = redisService.hasKey(RedisCst.kitchenAll(orderInfo.getId(), machine.getId())); -// if (exit) { -// break; -// } + Boolean exit = redisService.hasKey(RedisCst.kitchenAll(orderInfo.getId(), machine.getId())); + if (exit) { + break; + } // 判断订单是否是先付费或者已结算 if (!"after-pay".equals(orderInfo.getPayMode()) && (OrderStatusEnums.UNPAID.getCode().equals(orderInfo.getStatus()) || OrderStatusEnums.CANCELLED.getCode().equals(orderInfo.getStatus()))) { log.warn("此订单未支付, 订单信息: {}", orderInfo.getId()); @@ -163,7 +169,7 @@ public class PrintConfig implements ApplicationRunner { } log.info("准备开始打印后厨整单"); printer.allKitchenPrint(orderInfo, allOrderDetailList, machine); -// redisService.set(RedisCst.kitchenAll(orderInfo.getId(), machine.getId()), "", 180); + redisService.set(RedisCst.kitchenAll(orderInfo.getId(), machine.getId()), "", 20); break; } }