From 5e40f91beab2a647a269f80e8d601b72cb27597a Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Thu, 16 Apr 2026 18:03:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=AD=98=E7=9B=98=E7=82=B9=20?= =?UTF-8?q?=E4=BA=A4=E7=8F=AD=20=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/czg/mq/PrintMqListener.java | 14 ++++---- .../czg/service/order/print/PrinterImpl.java | 33 +++++++++++-------- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/cash-api/order-server/src/main/java/com/czg/mq/PrintMqListener.java b/cash-api/order-server/src/main/java/com/czg/mq/PrintMqListener.java index 9772471e2..f73bb4c85 100644 --- a/cash-api/order-server/src/main/java/com/czg/mq/PrintMqListener.java +++ b/cash-api/order-server/src/main/java/com/czg/mq/PrintMqListener.java @@ -85,12 +85,14 @@ public class PrintMqListener { String printTypeEnum = jsonObject.getString("printTypeEnum"); JSONObject data2 = jsonObject.getJSONObject("data"); PrinterHandler.PrintTypeEnum typeEnum = PrinterHandler.PrintTypeEnum.valueOf(printTypeEnum); - SysPrintData sysPrintData = new SysPrintData(); - sysPrintData.setShopId(shopId); - sysPrintData.setData(data2.toJSONString()); - sysPrintData.setType(typeEnum.toString()); - printDataService.save(sysPrintData); - rabbitPublisher.sendOtherPrintLocalMsg(shopId, printTypeEnum, sysPrintData.getId()); + if (typeEnum == PrinterHandler.PrintTypeEnum.HANDOVER) { + SysPrintData sysPrintData = new SysPrintData(); + sysPrintData.setShopId(shopId); + sysPrintData.setData(data2.toJSONString()); + sysPrintData.setType(typeEnum.toString()); + printDataService.save(sysPrintData); + rabbitPublisher.sendOtherPrintLocalMsg(shopId, printTypeEnum, sysPrintData.getId()); + } printConfig.otherHandler(shopId, data2, typeEnum); } } diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/print/PrinterImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/print/PrinterImpl.java index 32e1bea81..85a89de56 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/print/PrinterImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/print/PrinterImpl.java @@ -150,19 +150,19 @@ public interface PrinterImpl { .append(signLabelInfo.br) .append(getFormatLabel("当班营业总额: " + handoverRecord.getTurnover(), signLabelInfo.s)).append(signLabelInfo.br) .append(getFormatLabel("实际收款的支付方式", signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 现金:", handoverRecord.getCash().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 微信:", handoverRecord.getWechat().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 支付宝:", handoverRecord.getAlipay().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 二维码收款:", handoverRecord.getSelfScan().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 扫码收款:", handoverRecord.getBarScan().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 充值:", handoverRecord.getRecharge().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 现金:", bigDecimalToString(handoverRecord.getCash()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 微信:", bigDecimalToString(handoverRecord.getWechat()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 支付宝:", bigDecimalToString(handoverRecord.getAlipay()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 二维码收款:", bigDecimalToString(handoverRecord.getSelfScan()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 扫码收款:", bigDecimalToString(handoverRecord.getBarScan()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 充值:", bigDecimalToString(handoverRecord.getRecharge()), 32), signLabelInfo.s)).append(signLabelInfo.br) .append(getFormatLabel("非实际收款的支付方式", signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 挂账:", handoverRecord.getOwed().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 余额:", handoverRecord.getBalance().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 挂账:", bigDecimalToString(handoverRecord.getOwed()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 余额:", bigDecimalToString(handoverRecord.getBalance()), 32), signLabelInfo.s)).append(signLabelInfo.br) .append(getDividingLine()).append(signLabelInfo.br) .append(getFormatLabel("退菜/退款", signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 退款金额:", handoverRecord.getRefundAmount().toPlainString(), 32), signLabelInfo.s)).append(signLabelInfo.br) - .append(getFormatLabel(leftRightAlign(" 退菜数量:", handoverRecord.getReturnDishCount().toString(), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 退款金额:", bigDecimalToString(handoverRecord.getRefundAmount()), 32), signLabelInfo.s)).append(signLabelInfo.br) + .append(getFormatLabel(leftRightAlign(" 退菜数量:", bigDecimalToString(handoverRecord.getReturnDishCount()), 32), signLabelInfo.s)).append(signLabelInfo.br) .append(getDividingLine()).append(signLabelInfo.br) .append(getFormatLabel(leftRightAlign("订单数量/订单总额", handoverRecord.getOrderCount() + "/" + handoverRecord.getOrderTurnover(), 32), signLabelInfo.s)).append(signLabelInfo.br) .append(getFormatLabel("----------- 销售数据 -----------", signLabelInfo.s)).append(signLabelInfo.br) @@ -175,7 +175,7 @@ public interface PrinterImpl { String categoryName = info.getString("categoryName"); Integer quantity = info.getInteger("quantity"); BigDecimal amount = info.getBigDecimal("amount"); - builder.append(getFormatLabel(key3(categoryName, quantity.toString(), amount.toPlainString(), 14, 8), signLabelInfo.s)).append(signLabelInfo.br); + builder.append(getFormatLabel(key3(categoryName, quantity.toString(), bigDecimalToString(amount), 14, 8), signLabelInfo.s)).append(signLabelInfo.br); }); } builder.append(getDividingLine()).append(signLabelInfo.br) @@ -767,11 +767,11 @@ public interface PrinterImpl { List items = record.getItems(); if (CollUtil.isNotEmpty(items)) { for (StockCheckPrintDTO.StockCheckItem item : items) { - String priceStr = item.getPrice().stripTrailingZeros().toPlainString() + item.getUnit(); + String priceStr = item.getPrice().stripTrailingZeros().toPlainString() + "/" + item.getUnit(); String actualNumberStr = item.getActualNumber().toString(); String winLossNumberStr = item.getWinLossNumber().toString(); // 四列对齐打印 - String itemLine = key4(item.getConsName(), priceStr, actualNumberStr, winLossNumberStr, 8, 10, 8); + String itemLine = key4(item.getConsName(), priceStr, actualNumberStr, winLossNumberStr, 10, 8, 8); builder.append(getFormatLabel(itemLine, signLabelInfo.s)).append(signLabelInfo.br); } } @@ -841,6 +841,13 @@ public interface PrinterImpl { return NumberUtil.round(new BigDecimal(str), 2).toPlainString(); } + default String bigDecimalToString(BigDecimal bigDecimal) { + if (bigDecimal == null) { + return "0"; + } + return bigDecimal.toPlainString(); + } + // 两个内容 左 右对齐 default String leftRightAlign(String leftText, String rightText, int totalWidth) { if (leftText == null) leftText = "";