调整打印机配置参数
This commit is contained in:
@@ -103,7 +103,7 @@ public class PrintMechineConsumer {
|
|||||||
|
|
||||||
String model = tbPrintMachineWithBLOBs.getPrintMethod();
|
String model = tbPrintMachineWithBLOBs.getPrintMethod();
|
||||||
|
|
||||||
String printerNum = StrUtil.isEmpty(tbPrintMachineWithBLOBs.getPrintQty()) ? "1" : tbPrintMachineWithBLOBs.getPrintQty().split("^")[1];
|
String printerNum = StrUtil.isEmpty(tbPrintMachineWithBLOBs.getPrintQty()) ? "1" : tbPrintMachineWithBLOBs.getPrintQty().split("\\^")[1];
|
||||||
|
|
||||||
List<CategoryInfo> categoryInfos = JSONUtil.parseJSONStr2TList(StrUtil.emptyToDefault(tbPrintMachineWithBLOBs.getCategoryList(), "[]"), CategoryInfo.class);
|
List<CategoryInfo> categoryInfos = JSONUtil.parseJSONStr2TList(StrUtil.emptyToDefault(tbPrintMachineWithBLOBs.getCategoryList(), "[]"), CategoryInfo.class);
|
||||||
|
|
||||||
@@ -126,24 +126,53 @@ public class PrintMechineConsumer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 博时结云打印机
|
* 仅打印制作单「厨房」
|
||||||
*
|
|
||||||
* @param tbPrintMachineWithBLOBs
|
|
||||||
* @param model
|
|
||||||
* @param orderInfo
|
|
||||||
* @param shopInfo
|
|
||||||
* @param printerNum
|
|
||||||
*/
|
*/
|
||||||
private void yxyPrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
private void onlyKitchenForYxy(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, TbOrderInfo orderInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
String orderId = orderInfo.getId().toString();
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
||||||
|
log.info("一菜一品打印,待打印信息:{}", cashierCarts);
|
||||||
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
|
||||||
|
|
||||||
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
cashierCarts.parallelStream().forEach(it -> {
|
||||||
case "label": //标签打印机
|
|
||||||
break;
|
// 取餐号不为空为代客下单
|
||||||
case "cash": //小票打印机
|
if ("postPay".equals(orderInfo.getUseType()) && StrUtil.isNotBlank(it.getMasterId())) {
|
||||||
switch (model) {
|
log.info("--------------------代客下单 打印一菜一品");
|
||||||
case "normal": //普通出单
|
printTicket(Integer.valueOf(orderId), categoryInfos, tbPrintMachineWithBLOBs, orderInfo);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
log.info("--------------------非代客下单 打印一菜一品");
|
||||||
|
|
||||||
|
String categoryId;
|
||||||
|
if (ObjectUtil.isEmpty(it.getCategoryId())) {
|
||||||
|
categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
||||||
|
} else {
|
||||||
|
categoryId = it.getCategoryId();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Long count = categoryInfos.stream().filter(c ->
|
||||||
|
c.getId().toString().equals(categoryId)
|
||||||
|
).count();
|
||||||
|
|
||||||
|
if (count > 0) {
|
||||||
|
TbProductSkuWithBLOBs tbProductSkuWithBLOBs = tbProductSkuMapper.selectByPrimaryKey(Integer.valueOf(it.getSkuId()));
|
||||||
|
String remark = "";
|
||||||
|
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
||||||
|
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
||||||
|
}
|
||||||
|
String data = PrinterUtils.getPrintData(orderInfo.getTableName(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), it.getName(), it.getNumber(), remark);
|
||||||
|
PrinterUtils.printTickets(1, Integer.valueOf(printerNum), tbPrintMachineWithBLOBs.getAddress(), data);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 仅打印结算单「前台」
|
||||||
|
*/
|
||||||
|
private void onlyFrontDeskForYxy(String orderId, TbOrderInfo orderInfo, String printerNum, TbShopInfo shopInfo, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, List<CategoryInfo> categoryInfos) {
|
||||||
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
||||||
@@ -189,52 +218,31 @@ public class PrintMechineConsumer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 博时结云打印机
|
||||||
|
*
|
||||||
|
* @param tbPrintMachineWithBLOBs
|
||||||
|
* @param model
|
||||||
|
* @param orderInfo
|
||||||
|
* @param shopInfo
|
||||||
|
* @param printerNum
|
||||||
|
*/
|
||||||
|
private void yxyPrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
String orderId = orderInfo.getId().toString();
|
||||||
|
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
||||||
|
case "label": //标签打印机
|
||||||
break;
|
break;
|
||||||
case "one": //一菜一品
|
case "cash": //小票打印机
|
||||||
cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
if ("normal".equals(model)) {
|
||||||
log.info("一菜一品打印,待打印信息:{}", cashierCarts);
|
onlyFrontDeskForYxy(orderId, orderInfo, printerNum, shopInfo, tbPrintMachineWithBLOBs, categoryInfos);
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
} else if ("one".equals(model)) {
|
||||||
|
onlyKitchenForYxy(orderId, tbPrintMachineWithBLOBs, orderInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("all".equals(model)) {
|
||||||
cashierCarts.parallelStream().forEach(it -> {
|
onlyFrontDeskForYxy(orderId, orderInfo, printerNum, shopInfo, tbPrintMachineWithBLOBs, categoryInfos);
|
||||||
|
onlyKitchenForYxy(orderId, tbPrintMachineWithBLOBs, orderInfo, printerNum, categoryInfos);
|
||||||
// 取餐号不为空为代客下单
|
|
||||||
if ("postPay".equals(orderInfo.getUseType()) && StrUtil.isNotBlank(it.getMasterId())) {
|
|
||||||
log.info("--------------------代客下单 打印一菜一品");
|
|
||||||
printTicket(Integer.valueOf(orderId), categoryInfos, tbPrintMachineWithBLOBs, orderInfo);
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
log.info("--------------------非代客下单 打印一菜一品");
|
|
||||||
|
|
||||||
String categoryId;
|
|
||||||
if (ObjectUtil.isEmpty(it.getCategoryId())) {
|
|
||||||
categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
|
||||||
} else {
|
|
||||||
categoryId = it.getCategoryId();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Long count = categoryInfos.stream().filter(c ->
|
|
||||||
c.getId().toString().equals(categoryId)
|
|
||||||
).count();
|
|
||||||
|
|
||||||
if (count > 0) {
|
|
||||||
TbProductSkuWithBLOBs tbProductSkuWithBLOBs = tbProductSkuMapper.selectByPrimaryKey(Integer.valueOf(it.getSkuId()));
|
|
||||||
String remark = "";
|
|
||||||
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
|
||||||
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
|
||||||
}
|
|
||||||
String data = PrinterUtils.getPrintData(orderInfo.getTableName(), DateUtils.getTime(new Date(orderInfo.getCreatedAt())), it.getName(), it.getNumber(), remark);
|
|
||||||
PrinterUtils.printTickets(1, Integer.valueOf(printerNum), tbPrintMachineWithBLOBs.getAddress(), data);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "category": //分类出单
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case "kitchen": //出品打印机
|
case "kitchen": //出品打印机
|
||||||
break;
|
break;
|
||||||
@@ -350,48 +358,10 @@ public class PrintMechineConsumer {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
private void fePrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
* 仅打印结算单「前台」
|
||||||
String orderId = orderInfo.getId().toString();
|
*/
|
||||||
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
private void onlyFrontDeskForFe(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
case "label": //标签打印机
|
|
||||||
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
|
||||||
cashierCarts.parallelStream().forEach(it -> {
|
|
||||||
|
|
||||||
String categoryId;
|
|
||||||
if (ObjectUtil.isEmpty(it.getCategoryId())) {
|
|
||||||
categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
|
||||||
} else {
|
|
||||||
categoryId = it.getCategoryId();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Long count = categoryInfos.stream().filter(c ->
|
|
||||||
c.getId().toString().equals(categoryId)
|
|
||||||
).count();
|
|
||||||
|
|
||||||
|
|
||||||
if (count > 0) {
|
|
||||||
TbProductSkuWithBLOBs tbProductSkuWithBLOBs = tbProductSkuMapper.selectByPrimaryKey(Integer.valueOf(it.getSkuId()));
|
|
||||||
String remark = "";
|
|
||||||
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
|
||||||
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i = 0; i < it.getNumber(); i++) {
|
|
||||||
FeieyunPrintUtil.printLabelMsg(tbPrintMachineWithBLOBs.getAddress(), orderInfo.getTableName(), it.getName(), 1, DateUtils.getTimes(new Date(orderInfo.getCreatedAt())), it.getSalePrice().toPlainString(), remark);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
case "cash": //小票打印机
|
|
||||||
switch (model) {
|
|
||||||
case "normal": //普通出单
|
|
||||||
|
|
||||||
if ("return".equals(orderInfo.getOrderType())) {
|
if ("return".equals(orderInfo.getOrderType())) {
|
||||||
List<TbOrderDetail> tbOrderDetails = tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
List<TbOrderDetail> tbOrderDetails = tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
||||||
if (ObjectUtil.isNotEmpty(tbOrderDetails) && tbOrderDetails.size() > 0) {
|
if (ObjectUtil.isNotEmpty(tbOrderDetails) && tbOrderDetails.size() > 0) {
|
||||||
@@ -437,7 +407,7 @@ public class PrintMechineConsumer {
|
|||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
cashierCarts = cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
||||||
|
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
||||||
@@ -488,11 +458,13 @@ public class PrintMechineConsumer {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
/**
|
||||||
case "one": //一菜一品
|
* 仅打印制作单「厨房」
|
||||||
|
*/
|
||||||
cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
private void onlyKitchenForFe(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
|
||||||
cashierCarts.parallelStream().forEach(it -> {
|
cashierCarts.parallelStream().forEach(it -> {
|
||||||
@@ -520,6 +492,54 @@ public class PrintMechineConsumer {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void fePrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
String orderId = orderInfo.getId().toString();
|
||||||
|
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
||||||
|
case "label": //标签打印机
|
||||||
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
||||||
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
cashierCarts.parallelStream().forEach(it -> {
|
||||||
|
|
||||||
|
String categoryId;
|
||||||
|
if (ObjectUtil.isEmpty(it.getCategoryId())) {
|
||||||
|
categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
||||||
|
} else {
|
||||||
|
categoryId = it.getCategoryId();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Long count = categoryInfos.stream().filter(c ->
|
||||||
|
c.getId().toString().equals(categoryId)
|
||||||
|
).count();
|
||||||
|
|
||||||
|
|
||||||
|
if (count > 0) {
|
||||||
|
TbProductSkuWithBLOBs tbProductSkuWithBLOBs = tbProductSkuMapper.selectByPrimaryKey(Integer.valueOf(it.getSkuId()));
|
||||||
|
String remark = "";
|
||||||
|
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
||||||
|
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < it.getNumber(); i++) {
|
||||||
|
FeieyunPrintUtil.printLabelMsg(tbPrintMachineWithBLOBs.getAddress(), orderInfo.getTableName(), it.getName(), 1, DateUtils.getTimes(new Date(orderInfo.getCreatedAt())), it.getSalePrice().toPlainString(), remark);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case "cash": //小票打印机
|
||||||
|
if ("normal".equals(model)) {
|
||||||
|
onlyFrontDeskForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("one".equals(model)) {
|
||||||
|
onlyKitchenForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("all".equals(model)) {
|
||||||
|
onlyFrontDeskForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
onlyKitchenForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "kitchen": //出品打印机
|
case "kitchen": //出品打印机
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ public class CloudPrinterService {
|
|||||||
|
|
||||||
String model = tbPrintMachineWithBLOBs.getPrintMethod();
|
String model = tbPrintMachineWithBLOBs.getPrintMethod();
|
||||||
|
|
||||||
String printerNum = StrUtil.isEmpty(tbPrintMachineWithBLOBs.getPrintQty()) ? "1" : tbPrintMachineWithBLOBs.getPrintQty().split("^")[1];
|
String printerNum = StrUtil.isEmpty(tbPrintMachineWithBLOBs.getPrintQty()) ? "1" : tbPrintMachineWithBLOBs.getPrintQty().split("\\^")[1];
|
||||||
|
|
||||||
List<CategoryInfo> categoryInfos = JSONUtil.parseJSONStr2TList(StrUtil.emptyToDefault(tbPrintMachineWithBLOBs.getCategoryList(), "[]"), CategoryInfo.class);
|
List<CategoryInfo> categoryInfos = JSONUtil.parseJSONStr2TList(StrUtil.emptyToDefault(tbPrintMachineWithBLOBs.getCategoryList(), "[]"), CategoryInfo.class);
|
||||||
|
|
||||||
@@ -106,26 +106,10 @@ public class CloudPrinterService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 博时结云打印机
|
* 仅打印结算单「前台」
|
||||||
*
|
|
||||||
* @param tbPrintMachineWithBLOBs
|
|
||||||
* @param model
|
|
||||||
* @param orderInfo
|
|
||||||
* @param shopInfo
|
|
||||||
* @param printerNum
|
|
||||||
*/
|
*/
|
||||||
private void yxyPrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
private void onlyFrontDeskForYxy(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
String orderId = orderInfo.getId().toString();
|
|
||||||
|
|
||||||
|
|
||||||
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
|
||||||
case "label": //标签打印机
|
|
||||||
break;
|
|
||||||
case "cash": //小票打印机
|
|
||||||
switch (model) {
|
|
||||||
case "normal": //普通出单
|
|
||||||
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
||||||
@@ -170,10 +154,13 @@ public class CloudPrinterService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
/**
|
||||||
case "one": //一菜一品
|
* 仅打印制作单「厨房」
|
||||||
cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
*/
|
||||||
|
private void onlyKitchenForYxy(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
|
||||||
cashierCarts.parallelStream().forEach(it -> {
|
cashierCarts.parallelStream().forEach(it -> {
|
||||||
@@ -201,59 +188,42 @@ public class CloudPrinterService {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case "category": //分类出单
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 博时结云打印机
|
||||||
|
*
|
||||||
|
* @param tbPrintMachineWithBLOBs
|
||||||
|
* @param model
|
||||||
|
* @param orderInfo
|
||||||
|
* @param shopInfo
|
||||||
|
* @param printerNum
|
||||||
|
*/
|
||||||
|
private void yxyPrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
String orderId = orderInfo.getId().toString();
|
||||||
|
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
||||||
|
case "label": //标签打印机
|
||||||
|
break;
|
||||||
|
case "cash": //小票打印机
|
||||||
|
if ("normal".equals(model)) {
|
||||||
|
onlyFrontDeskForYxy(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("one".equals(model)) {
|
||||||
|
onlyKitchenForYxy(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("all".equals(model)) {
|
||||||
|
onlyFrontDeskForYxy(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
onlyKitchenForYxy(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "kitchen": //出品打印机
|
case "kitchen": //出品打印机
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
private void fePrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
* 仅打印结算单「前台」
|
||||||
String orderId = orderInfo.getId().toString();
|
*/
|
||||||
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
private void onlyFrontDeskForFe(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
case "label": //标签打印机
|
|
||||||
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
|
||||||
cashierCarts.parallelStream().forEach(it -> {
|
|
||||||
|
|
||||||
String categoryId;
|
|
||||||
if (ObjectUtil.isEmpty(it.getCategoryId())) {
|
|
||||||
categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
|
||||||
} else {
|
|
||||||
categoryId = it.getCategoryId();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Long count = categoryInfos.stream().filter(c ->
|
|
||||||
c.getId().toString().equals(categoryId)
|
|
||||||
).count();
|
|
||||||
|
|
||||||
|
|
||||||
if (count > 0) {
|
|
||||||
TbProductSkuWithBLOBs tbProductSkuWithBLOBs = tbProductSkuMapper.selectByPrimaryKey(Integer.valueOf(it.getSkuId()));
|
|
||||||
String remark = "";
|
|
||||||
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
|
||||||
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i = 0; i < it.getNumber(); i++) {
|
|
||||||
FeieyunPrintUtil.printLabelMsg(tbPrintMachineWithBLOBs.getAddress(), orderInfo.getTableName(), it.getName(), 1, DateUtils.getTimes(new Date(orderInfo.getCreatedAt())), it.getSalePrice().toPlainString(), remark);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
case "cash": //小票打印机
|
|
||||||
switch (model) {
|
|
||||||
case "normal": //普通出单
|
|
||||||
|
|
||||||
if ("return".equals(orderInfo.getOrderType())) {
|
if ("return".equals(orderInfo.getOrderType())) {
|
||||||
List<TbOrderDetail> tbOrderDetails = tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
List<TbOrderDetail> tbOrderDetails = tbOrderDetailMapper.selectAllByOrderId(Integer.valueOf(orderId));
|
||||||
if (ObjectUtil.isNotEmpty(tbOrderDetails) && tbOrderDetails.size() > 0) {
|
if (ObjectUtil.isNotEmpty(tbOrderDetails) && tbOrderDetails.size() > 0) {
|
||||||
@@ -299,7 +269,7 @@ public class CloudPrinterService {
|
|||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
cashierCarts = cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
||||||
|
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
List<OrderDetailPO.Detail> detailList = new ArrayList<>();
|
||||||
@@ -350,11 +320,13 @@ public class CloudPrinterService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
/**
|
||||||
case "one": //一菜一品
|
* 仅打印制作单「厨房」
|
||||||
|
*/
|
||||||
cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
private void onlyKitchenForFe(String orderId, TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderId, "final");
|
||||||
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
|
||||||
cashierCarts.parallelStream().forEach(it -> {
|
cashierCarts.parallelStream().forEach(it -> {
|
||||||
@@ -382,6 +354,54 @@ public class CloudPrinterService {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void fePrinter(TbPrintMachineWithBLOBs tbPrintMachineWithBLOBs, String model, TbOrderInfo orderInfo, TbShopInfo shopInfo, String printerNum, List<CategoryInfo> categoryInfos) {
|
||||||
|
String orderId = orderInfo.getId().toString();
|
||||||
|
switch (tbPrintMachineWithBLOBs.getSubType()) {
|
||||||
|
case "label": //标签打印机
|
||||||
|
List<TbCashierCart> cashierCarts = tbCashierCartMapper.selectByOrderId(orderInfo.getId().toString(), "final");
|
||||||
|
if (ObjectUtil.isNotEmpty(cashierCarts) && cashierCarts.size() > 0) {
|
||||||
|
cashierCarts.parallelStream().forEach(it -> {
|
||||||
|
|
||||||
|
String categoryId;
|
||||||
|
if (ObjectUtil.isEmpty(it.getCategoryId())) {
|
||||||
|
categoryId = tbProductMapper.selectByPrimaryKey(Integer.valueOf(it.getProductId())).getCategoryId();
|
||||||
|
} else {
|
||||||
|
categoryId = it.getCategoryId();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Long count = categoryInfos.stream().filter(c ->
|
||||||
|
c.getId().toString().equals(categoryId)
|
||||||
|
).count();
|
||||||
|
|
||||||
|
|
||||||
|
if (count > 0) {
|
||||||
|
TbProductSkuWithBLOBs tbProductSkuWithBLOBs = tbProductSkuMapper.selectByPrimaryKey(Integer.valueOf(it.getSkuId()));
|
||||||
|
String remark = "";
|
||||||
|
if (ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs) && ObjectUtil.isNotEmpty(tbProductSkuWithBLOBs.getSpecSnap())) {
|
||||||
|
remark = tbProductSkuWithBLOBs.getSpecSnap();
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < it.getNumber(); i++) {
|
||||||
|
FeieyunPrintUtil.printLabelMsg(tbPrintMachineWithBLOBs.getAddress(), orderInfo.getTableName(), it.getName(), 1, DateUtils.getTimes(new Date(orderInfo.getCreatedAt())), it.getSalePrice().toPlainString(), remark);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case "cash": //小票打印机
|
||||||
|
if ("normal".equals(model)) {
|
||||||
|
onlyFrontDeskForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("one".equals(model)) {
|
||||||
|
onlyKitchenForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
} else if ("all".equals(model)) {
|
||||||
|
onlyFrontDeskForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
onlyKitchenForFe(orderId, tbPrintMachineWithBLOBs, model, orderInfo, shopInfo, printerNum, categoryInfos);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "kitchen": //出品打印机
|
case "kitchen": //出品打印机
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user