This commit is contained in:
2026-04-21 14:51:16 +08:00
parent ec46e4d36a
commit 738af797b5
2 changed files with 22 additions and 16 deletions

View File

@@ -2,8 +2,8 @@ package com.czg.service.order.print;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.alibaba.fastjson2.TypeReference;
import com.czg.account.dto.HandoverRecordDTO;
import com.czg.account.entity.PrintMachine;
import com.czg.account.entity.ShopInfo;
@@ -185,7 +185,7 @@ public class PrintConfig implements ApplicationRunner {
* @param data 传递的数据
* @param printTypeEnum IN_STOCK DAY_REPORT PRODUCT_REPORT RECHARGE STOCK_CHECK
*/
public void otherHandler(Long shopId, JSONObject data, PrinterHandler.PrintTypeEnum printTypeEnum) {
public void otherHandler(Long shopId, JSONObject data, JSONArray data1, PrinterHandler.PrintTypeEnum printTypeEnum) {
if (shopId == null || Objects.isNull(data)) {
log.info("otherHandler 打印数据为空, shopId: {}, data: {}", shopId, data);
return;
@@ -198,32 +198,29 @@ public class PrintConfig implements ApplicationRunner {
.stockPrint(machine, shopInfo.getShopName(), JSONObject.parseObject(data.toJSONString(), StockPrintDTO.class)));
break;
case PrinterHandler.PrintTypeEnum.DAY_REPORT:
List<Map<String, Object>> list = data.to(new TypeReference<>() {
});
for (PrintMachine machine : getPrintMachine(shopId, printTypeEnum)) {
PrinterHandler printer = getPrinter(machine.getBrand());
for (Map<String, Object> map : list) {
printer.dayReportPrint(machine, shopInfo.getShopName(), JSONObject.parseObject(map.get("data").toString(), DayReportPrintDTO.class));
for (Object obj : data1) {
JSONObject item = (JSONObject) obj;
printer.dayReportPrint(machine, shopInfo.getShopName(), item.getObject("data", DayReportPrintDTO.class));
}
}
break;
case PrinterHandler.PrintTypeEnum.DAY_ORDER:
List<Map<String, Object>> list2 = data.to(new TypeReference<>() {
});
for (PrintMachine machine : getPrintMachine(shopId, printTypeEnum)) {
PrinterHandler printer = getPrinter(machine.getBrand());
for (Map<String, Object> map : list2) {
printer.daySettlePrint(machine, shopInfo.getShopName(), JSONObject.parseObject(map.get("data").toString(), DaySettlePrintDTO.class));
for (Object obj : data1) {
JSONObject item = (JSONObject) obj;
printer.daySettlePrint(machine, shopInfo.getShopName(), item.getObject("data", DaySettlePrintDTO.class));
}
}
break;
case PrinterHandler.PrintTypeEnum.PRODUCT_REPORT:
List<Map<String, Object>> list3 = data.to(new TypeReference<>() {
});
for (PrintMachine machine : getPrintMachine(shopId, printTypeEnum)) {
PrinterHandler printer = getPrinter(machine.getBrand());
for (Map<String, Object> map : list3) {//ProductReportPrintDTO
printer.productReportPrint(machine, shopInfo.getShopName(), JSONObject.parseObject(map.get("data").toString(), ProductReportPrintDTO.class));
for (Object obj : data1) {
JSONObject item = (JSONObject) obj;
printer.productReportPrint(machine, shopInfo.getShopName(), item.getObject("data", ProductReportPrintDTO.class));
}
}
break;