From be37a2d92b5f23db4807d8c198bb08338046e553 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 7 Apr 2026 11:40:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8E=E4=BB=98=E8=B4=B9=20=E5=AE=A2?= =?UTF-8?q?=E7=9C=8B=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/czg/config/RabbitPublisher.java | 20 +++++++++++++------ .../impl/OrderInfoCustomServiceImpl.java | 5 ++++- .../service/impl/OrderPayServiceImpl.java | 3 +++ 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/cash-common/cash-common-mq/src/main/java/com/czg/config/RabbitPublisher.java b/cash-common/cash-common-mq/src/main/java/com/czg/config/RabbitPublisher.java index 3c47c89f5..75137abae 100644 --- a/cash-common/cash-common-mq/src/main/java/com/czg/config/RabbitPublisher.java +++ b/cash-common/cash-common-mq/src/main/java/com/czg/config/RabbitPublisher.java @@ -50,20 +50,28 @@ public class RabbitPublisher { sendMsg(RabbitConstants.Queue.ORDER_REFUND_QUEUE, refundMap); } + /** + * 后付费订单打印消息 + * + * @param orderId 订单id + */ + public void sendOrderPrintMsg(String orderId, boolean printOrder, String source) { + log.info("订单打印消息, orderId: {}, printOrder: {}, source: {}", orderId, printOrder, source); + //结算票 预结算单 客看单 + if (printOrder) { + sendMsg(RabbitConstants.Queue.ORDER_PRINT_QUEUE, orderId); + } + } /** * 订单打印消息 * * @param orderId 订单id * @param printOrder 是否打印结算单 */ - public void sendOrderPrintMsg(String orderId, boolean printOrder, String source) { - log.info("开始发送打印mq消息, orderId: {}, printOrder: {}, source: {}", orderId, printOrder, source); + public void sendKitchenOrderPrintMsg(String orderId, boolean printOrder, String source) { + log.info("厨房打印消息, orderId: {}, printOrder: {}, source: {}", orderId, printOrder, source); //厨房票 sendMsg(RabbitConstants.Queue.ORDER_MACHINE_PRINT_QUEUE, new JSONObject().fluentPut("orderId", orderId).fluentPut("printOrder", printOrder).toString()); - //前台票 - if (printOrder) { - sendMsg(RabbitConstants.Queue.ORDER_PRINT_QUEUE, orderId); - } } /** diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java index 140cdfd51..5c1789f01 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderInfoCustomServiceImpl.java @@ -330,7 +330,8 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { //发送打票信息 后付费推送多次 需要处理 //orderId_0_0 订单ID_先付后付(1先付0后付)_订单状态 0未完成 1完成 //orderInfo.getId() + "_" + (!"after-pay".equals(orderInfo.getPayMode()) ? 1 : 0) + "_0" - rabbitPublisher.sendOrderPrintMsg(orderInfo.getId() + "_0_0", false, "后付费打印"); + rabbitPublisher.sendKitchenOrderPrintMsg(orderInfo.getId() + "_0_0", false, "后付费打印"); + rabbitPublisher.sendOrderPrintMsg(orderInfo.getId() + "_0_0_" + orderInfo.getPlaceNum(), true, "后付费打印"); } else { redisService.set(RedisCst.classKeyExpired.EXPIRED_ORDER + orderInfo.getId(), "", 60 * 15); } @@ -1275,6 +1276,7 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { if (payType != PayEnums.BACK_SCAN) { // 事务成功提交后执行消息发送 String printParam = orderId + "_" + (!"after-pay".equals(payMode) ? 1 : 0) + "_1"; + rabbitPublisher.sendKitchenOrderPrintMsg(printParam, isPrint, "事务环境打印"); rabbitPublisher.sendOrderPrintMsg(printParam, isPrint, "事务环境打印"); } // log.info("订单{}事务提交后,发送打印消息", orderId); @@ -1285,6 +1287,7 @@ public class OrderInfoCustomServiceImpl implements OrderInfoCustomService { // 非事务环境下直接发送(兼容无事务场景) String printParam = orderId + "_" + (!"after-pay".equals(payMode) ? 1 : 0) + "_1"; rabbitPublisher.sendOrderPrintMsg(printParam, isPrint, "非事务环境打印"); + rabbitPublisher.sendKitchenOrderPrintMsg(printParam, isPrint, "非事务环境打印"); } // log.info("非事务环境下,直接发送订单{}打印消息", orderId); } diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderPayServiceImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderPayServiceImpl.java index d7f2c27a0..4f44a246c 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderPayServiceImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/OrderPayServiceImpl.java @@ -118,6 +118,8 @@ public class OrderPayServiceImpl implements OrderPayService { //发送打票信息 //orderId_0_0 订单ID_先付后付(1先付0后付)_订单状态 0未完成 1完成 //orderInfo.getId() + "_" + (!"after-pay".equals(orderInfo.getPayMode()) ? 1 : 0) + "_0" + rabbitPublisher.sendKitchenOrderPrintMsg(orderInfo.getId() + "_" + (!"after-pay".equals(orderInfo.getPayMode()) ? 1 : 0) + "_1", + orderInfo.getIsPrint() == 1, "0元付款"); rabbitPublisher.sendOrderPrintMsg(orderInfo.getId() + "_" + (!"after-pay".equals(orderInfo.getPayMode()) ? 1 : 0) + "_1", orderInfo.getIsPrint() == 1, "0元付款"); redisService.del(RedisCst.classKeyExpired.EXPIRED_ORDER + orderInfo.getId()); @@ -362,6 +364,7 @@ public class OrderPayServiceImpl implements OrderPayService { LocalDateTime.now(), paymentId, PayEnums.BACK_SCAN); // 事务成功提交后执行消息发送 String printParam = orderInfo.getId() + "_" + (!"after-pay".equals(orderInfo.getPayMode()) ? 1 : 0) + "_1"; + rabbitPublisher.sendKitchenOrderPrintMsg(printParam, orderInfo.getIsPrint() == 1, "事务环境打印"); rabbitPublisher.sendOrderPrintMsg(printParam, orderInfo.getIsPrint() == 1, "事务环境打印"); } else { upOrderPayInfo(orderInfo.getId(), PayEnums.BACK_SCAN, paymentId,