From c0ced123c0735e16d18f238986fdb4a290c6a84a Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Mon, 29 Dec 2025 14:03:14 +0800 Subject: [PATCH] =?UTF-8?q?2025-12-29=20=E6=89=93=E5=8D=B0=E6=A8=A1?= =?UTF-8?q?=E6=9D=BFA001=E4=BC=98=E5=8C=96=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mixins/labelPrintTemplates.js | 146 +++++++++++------- src/views/modules/print/PoPartPrint.vue | 6 +- src/views/modules/print/rePrintPoPart.vue | 6 +- .../searchSfdcRollsReport.vue | 6 +- .../com_abnormal_continue_roll.vue | 6 +- .../com_abnormal_material_offline.vue | 4 +- .../yieldReport/com_cutting_material.vue | 6 +- .../modules/yieldReport/com_material_loss.vue | 4 +- .../yieldReport/com_produce_report_normal.vue | 6 +- .../modules/yieldReport/com_separate_roll.vue | 6 +- 10 files changed, 113 insertions(+), 83 deletions(-) diff --git a/src/mixins/labelPrintTemplates.js b/src/mixins/labelPrintTemplates.js index 1b3113a..7632cd0 100644 --- a/src/mixins/labelPrintTemplates.js +++ b/src/mixins/labelPrintTemplates.js @@ -1,11 +1,34 @@ +import QRCode from 'qrcode'; + /** * 标签打印模板 Mixin * 提供 A001、A002、A003 三种标签打印模板的通用方法 */ export default { methods: { + /** + * 生成二维码图片的Base64字符串 + * @param {string} text - 二维码内容 + * @param {number} size - 二维码尺寸(像素) + * @returns {Promise} - Base64图片字符串 + */ + async generateQRCodeImage(text, size = 150) { + try { + const dataUrl = await QRCode.toDataURL(text, { + width: size, + margin: 0, + errorCorrectionLevel: 'M' + }); + return dataUrl; + } catch (err) { + console.error('生成二维码失败:', err); + return ''; + } + }, + // A001 标签打印(70mm x 30mm)- 左边二维码,右边文字信息 - printLabelA001(LODOP, printData, isNewPage){ + // 布局:2mm边距,左侧二维码区20mm,右侧文字区,底部两行物料名称 + async printLabelA001(LODOP, printData, isNewPage){ if(isNewPage){ LODOP.NEWPAGE(); } @@ -13,91 +36,98 @@ export default { // ============================================================ // 1. 纸张设置 // ============================================================ - // SET_PRINT_PAGESIZE(方向, 宽度, 高度, 纸张名称) - // 方向: 0=纵向, 1=横向 - // 宽度/高度: 单位为 1/10 毫米,如 700 = 70mm + // 纸张大小 70mm x 30mm,留2mm边距,实际打印区域 66mm x 26mm LODOP.SET_PRINT_PAGESIZE(0, 700, 300, ''); // ============================================================ // 2. 绘制边框和分隔线 // ============================================================ - // ADD_PRINT_RECT(上边距, 左边距, 宽度, 高度, 边框样式, 边框粗细) - // 边框样式: 0=实线 - // 边框粗细: 单位为像素 + // 外边框(2mm边距,66mm宽 x 26mm高) + LODOP.ADD_PRINT_RECT('2mm', '2mm', '66mm', '26mm', 0, 1); - // 外边框(1mm边距,68mm宽 x 28mm高) - LODOP.ADD_PRINT_RECT('1mm', '1mm', '68mm', '28mm', 0, 1); - - // ADD_PRINT_LINE(起点Y, 起点X, 终点Y, 终点X, 线条样式, 线条粗细) - // 线条样式: 0=实线 - - // 垂直分隔线:左右分隔(从上到下) - // 参数说明:起点(1mm, 22mm) -> 终点(29mm, 22mm) - LODOP.ADD_PRINT_LINE('1mm', '22mm', '29mm', '22mm', 0, 1); + // 垂直分隔线:左右分隔(二维码区18mm,文字区48mm) + LODOP.ADD_PRINT_LINE('2mm', '20mm', '19mm', '20mm', 0, 1); // 水平分隔线1:编码下方 - // 参数说明:起点(8mm, 22mm) -> 终点(8mm, 69mm) - LODOP.ADD_PRINT_LINE('8mm', '22mm', '8mm', '69mm', 0, 1); + LODOP.ADD_PRINT_LINE('7mm', '20mm', '7mm', '68mm', 0, 1); // 水平分隔线2:型号下方 - // 参数说明:起点(13mm, 22mm) -> 终点(13mm, 69mm) - LODOP.ADD_PRINT_LINE('13mm', '22mm', '13mm', '69mm', 0, 1); + LODOP.ADD_PRINT_LINE('11mm', '20mm', '11mm', '68mm', 0, 1); // 水平分隔线3:数量下方 - // 参数说明:起点(18mm, 22mm) -> 终点(18mm, 69mm) - LODOP.ADD_PRINT_LINE('18mm', '22mm', '18mm', '69mm', 0, 1); + LODOP.ADD_PRINT_LINE('15mm', '20mm', '15mm', '68mm', 0, 1); - // 水平分隔线4:批号下方 - // 参数说明:起点(23mm, 22mm) -> 终点(23mm, 69mm) - LODOP.ADD_PRINT_LINE('23mm', '22mm', '23mm', '69mm', 0, 1); + // 水平分隔线4:批号下方,同时是物料描述区上边界(横跨整个宽度) + LODOP.ADD_PRINT_LINE('19mm', '2mm', '19mm', '68mm', 0, 1); // ============================================================ - // 3. 左侧二维码 + // 3. 左侧二维码(使用LODOP自带二维码) // ============================================================ - // ADD_PRINT_BARCODE(上边距, 左边距, 宽度, 高度, 条码类型, 条码内容) - // 二维码位置:距上7mm,距左3mm,尺寸20mm x 20mm - const qrIndex = LODOP.ADD_PRINT_BARCODE('7mm', '3mm', '20mm', '20mm', 'QRCode', printData.rollNo || ''); - LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeVersion", 4); - LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeErrorLevel", "M"); + // 可见区域:18mm(宽) x 17mm(高) + // 二维码有默认白边(静区),需放大约20%让白边溢出到框外 + const qrContent = printData.rollNo || ''; + if (qrContent) { + const qrIndex = LODOP.ADD_PRINT_BARCODE('1.5mm', '1.5mm', '21mm', '20mm', 'QRCode', qrContent); + LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeVersion", 0); // 自动选择版本 + LODOP.SET_PRINT_STYLEA(qrIndex, "QRCodeErrorLevel", "M"); + } // ============================================================ - // 4. 右侧文字信息(5行) + // 4. 右侧文字信息(4行)- 字体6号 // ============================================================ - // ADD_PRINT_TEXT(上边距, 左边距, 宽度, 高度, 文字内容) - - // 文字起始X位置(左边距)和宽度 - const startX = '23mm'; // 可调整:文字左边距,增大向右移,减小向左移 - const textWidth = '43mm'; // 可调整:文字区域宽度 + const labelX = '21mm'; // 标签列起始位置(从23mm改为21mm) + const valueX = '30mm'; // 值列起始位置(从32mm改为30mm) + const labelWidth = '9mm'; // 标签列宽度 + const valueWidth = '37mm'; // 值列宽度(从35mm改为37mm) + const fontSize = 6; // 字体大小(从8号改为6号) // 编码(第1行) - // 上边距4mm:可调整,增大向下移,减小向上移 - const text1 = LODOP.ADD_PRINT_TEXT('4mm', startX, textWidth, '4mm', `编码:${printData.partNo || ''}`); - LODOP.SET_PRINT_STYLEA(text1, "FontName", "Microsoft YaHei"); - LODOP.SET_PRINT_STYLEA(text1, "FontSize", 8); // 可调整:字体大小 + const label1 = LODOP.ADD_PRINT_TEXT('3.5mm', labelX, labelWidth, '3mm', '编码:'); + LODOP.SET_PRINT_STYLEA(label1, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(label1, "FontSize", fontSize); + + const value1 = LODOP.ADD_PRINT_TEXT('3.5mm', valueX, valueWidth, '3mm', printData.partNo || ''); + LODOP.SET_PRINT_STYLEA(value1, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(value1, "FontSize", fontSize); + LODOP.SET_PRINT_STYLEA(value1, "Bold", 1); // 型号(第2行) - // 上边距9mm:可调整 - const text2 = LODOP.ADD_PRINT_TEXT('9mm', startX, textWidth, '4mm', `型号:${printData.spec || ''}`); - LODOP.SET_PRINT_STYLEA(text2, "FontName", "Microsoft YaHei"); - LODOP.SET_PRINT_STYLEA(text2, "FontSize", 8); + const label2 = LODOP.ADD_PRINT_TEXT('7.5mm', labelX, labelWidth, '3mm', '型号:'); + LODOP.SET_PRINT_STYLEA(label2, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(label2, "FontSize", fontSize); + + const value2 = LODOP.ADD_PRINT_TEXT('7.5mm', valueX, valueWidth, '3mm', printData.spec || ''); + LODOP.SET_PRINT_STYLEA(value2, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(value2, "FontSize", fontSize); // 数量(第3行) - // 上边距14mm:可调整 - const text3 = LODOP.ADD_PRINT_TEXT('14mm', startX, textWidth, '4mm', `数量:${printData.quantity || ''}`); - LODOP.SET_PRINT_STYLEA(text3, "FontName", "Microsoft YaHei"); - LODOP.SET_PRINT_STYLEA(text3, "FontSize", 8); + const label3 = LODOP.ADD_PRINT_TEXT('11.5mm', labelX, labelWidth, '3mm', '数量:'); + LODOP.SET_PRINT_STYLEA(label3, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(label3, "FontSize", fontSize); + + const value3 = LODOP.ADD_PRINT_TEXT('11.5mm', valueX, valueWidth, '3mm', printData.quantity || ''); + LODOP.SET_PRINT_STYLEA(value3, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(value3, "FontSize", fontSize); // 批号(第4行) - // 上边距19mm:可调整 - const text4 = LODOP.ADD_PRINT_TEXT('19mm', startX, textWidth, '4mm', `批号:${printData.batchNo || ''}`); - LODOP.SET_PRINT_STYLEA(text4, "FontName", "Microsoft YaHei"); - LODOP.SET_PRINT_STYLEA(text4, "FontSize", 8); + const label4 = LODOP.ADD_PRINT_TEXT('15.5mm', labelX, labelWidth, '3mm', '批号:'); + LODOP.SET_PRINT_STYLEA(label4, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(label4, "FontSize", fontSize); - // 日期(第5行) - // 上边距24mm:可调整 - const text5 = LODOP.ADD_PRINT_TEXT('24mm', startX, textWidth, '4mm', `日期:${printData.documentDate || ''}`); - LODOP.SET_PRINT_STYLEA(text5, "FontName", "Microsoft YaHei"); - LODOP.SET_PRINT_STYLEA(text5, "FontSize", 8); + const value4 = LODOP.ADD_PRINT_TEXT('15.5mm', valueX, valueWidth, '3mm', printData.batchNo || ''); + LODOP.SET_PRINT_STYLEA(value4, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(value4, "FontSize", fontSize); + + // ============================================================ + // 5. 底部物料名称(2行)- 横跨整个宽度 + // ============================================================ + const partDesc = printData.partDesc || ''; + // 底部区域:从19mm分隔线下方开始,高度约8mm,可显示两行文字 + const descText = LODOP.ADD_PRINT_TEXT('19.5mm', '3mm', '63mm', '8mm', partDesc); + LODOP.SET_PRINT_STYLEA(descText, "FontName", "Microsoft YaHei"); + LODOP.SET_PRINT_STYLEA(descText, "FontSize", fontSize); + LODOP.SET_PRINT_STYLEA(descText, "LineSpacing", 0); // 行间距 + LODOP.SET_PRINT_STYLEA(descText, "Multiline", true); // 允许多行 }, // A002 标签打印(70mm x 20mm)- 其他工序用 diff --git a/src/views/modules/print/PoPartPrint.vue b/src/views/modules/print/PoPartPrint.vue index 7592fce..3281504 100644 --- a/src/views/modules/print/PoPartPrint.vue +++ b/src/views/modules/print/PoPartPrint.vue @@ -1302,7 +1302,7 @@ export default { } // 根据 labelNo 调用相应的打印方法 - this.executePrint(printDataList); + await this.executePrint(printDataList); this.printDialogVisible = false; this.$message.success('打印任务已发送!'); @@ -1317,7 +1317,7 @@ export default { }, // 执行打印 - executePrint(printDataList){ + async executePrint(printDataList){ const LODOP = getLodop(); if (!LODOP) { this.$message.error('无法连接到打印控件!'); @@ -1339,7 +1339,7 @@ export default { // 根据 labelNo 调用不同的打印方法 if(printData.labelNo === 'A001'){ - this.printLabelA001(LODOP, printData, i > 0 || times > 0); + await this.printLabelA001(LODOP, printData, i > 0 || times > 0); } else if(printData.labelNo === 'A002'){ this.printLabelA002(LODOP, printData, i > 0 || times > 0); } else if(printData.labelNo === 'A003'){ diff --git a/src/views/modules/print/rePrintPoPart.vue b/src/views/modules/print/rePrintPoPart.vue index 3d5a637..00b56f4 100644 --- a/src/views/modules/print/rePrintPoPart.vue +++ b/src/views/modules/print/rePrintPoPart.vue @@ -1198,7 +1198,7 @@ export default { } // 根据 labelNo 调用相应的打印方法 - this.executePrint(printDataList); + await this.executePrint(printDataList); this.printDialogVisible = false; this.$message.success('打印任务已发送!'); @@ -1213,7 +1213,7 @@ export default { }, // 执行打印 - executePrint(printDataList){ + async executePrint(printDataList){ const LODOP = getLodop(); if (!LODOP) { this.$message.error('无法连接到打印控件!'); @@ -1235,7 +1235,7 @@ export default { // 根据 labelNo 调用不同的打印方法 if(printData.labelNo === 'A001'){ - this.printLabelA001(LODOP, printData, i > 0 || times > 0); + await this.printLabelA001(LODOP, printData, i > 0 || times > 0); } else if(printData.labelNo === 'A002'){ this.printLabelA002(LODOP, printData, i > 0 || times > 0); } else if(printData.labelNo === 'A003'){ diff --git a/src/views/modules/shopOrder/productionReport/searchSfdcRollsReport.vue b/src/views/modules/shopOrder/productionReport/searchSfdcRollsReport.vue index 8ed6310..af59527 100644 --- a/src/views/modules/shopOrder/productionReport/searchSfdcRollsReport.vue +++ b/src/views/modules/shopOrder/productionReport/searchSfdcRollsReport.vue @@ -1131,7 +1131,7 @@ import labelPrintTemplates from '@/mixins/labelPrintTemplates.js'; } // 根据 labelNo 调用相应的打印方法 - this.executePrint(printDataList); + await this.executePrint(printDataList); this.printDialogVisible = false; this.$message.success('打印任务已发送!'); @@ -1146,7 +1146,7 @@ import labelPrintTemplates from '@/mixins/labelPrintTemplates.js'; }, // 执行打印 - executePrint(printDataList){ + async executePrint(printDataList){ const LODOP = getLodop(); if (!LODOP) { this.$message.error('无法连接到打印控件!'); @@ -1168,7 +1168,7 @@ import labelPrintTemplates from '@/mixins/labelPrintTemplates.js'; // 根据 labelNo 调用不同的打印方法 if(printData.labelNo === 'A001'){ - this.printLabelA001(LODOP, printData, i > 0 || times > 0); + await this.printLabelA001(LODOP, printData, i > 0 || times > 0); } else if(printData.labelNo === 'A002'){ this.printLabelA002(LODOP, printData, i > 0 || times > 0); } else if(printData.labelNo === 'A003'){ diff --git a/src/views/modules/yieldReport/com_abnormal_continue_roll.vue b/src/views/modules/yieldReport/com_abnormal_continue_roll.vue index 2913bf2..ac3654d 100644 --- a/src/views/modules/yieldReport/com_abnormal_continue_roll.vue +++ b/src/views/modules/yieldReport/com_abnormal_continue_roll.vue @@ -460,7 +460,7 @@ export default { } // 4. 执行打印 - this.executePrintWithTemplate(LODOP, printDataList, labelNo, defaultPrinterName); + await this.executePrintWithTemplate(LODOP, printDataList, labelNo, defaultPrinterName); this.$message.success('标签打印任务已发送!'); @@ -473,7 +473,7 @@ export default { /** * 执行模板打印 */ - executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { + async executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { console.log('开始打印,标签数量:', printDataList.length, '标签数据:', printDataList); // 循环打印每个标签(每个标签单独打印一次) @@ -486,7 +486,7 @@ export default { // 根据 labelNo 调用不同的打印方法 if (labelNo === 'A001') { - this.printLabelA001(LODOP, printData, false); + await this.printLabelA001(LODOP, printData, false); } else if (labelNo === 'A002') { this.printLabelA002(LODOP, printData, false); } else if (labelNo === 'A003') { diff --git a/src/views/modules/yieldReport/com_abnormal_material_offline.vue b/src/views/modules/yieldReport/com_abnormal_material_offline.vue index 5c0c250..b5be2cf 100644 --- a/src/views/modules/yieldReport/com_abnormal_material_offline.vue +++ b/src/views/modules/yieldReport/com_abnormal_material_offline.vue @@ -331,7 +331,7 @@ export default { * @param {String} labelNo - 标签模板编号 (A001/A002/A003) * @param {String} printerName - 打印机名称 */ - executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { + async executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { console.log('开始打印,标签数量:', printDataList.length, '标签数据:', printDataList); // 循环打印每个标签(每个标签单独打印一次) @@ -344,7 +344,7 @@ export default { // 根据 labelNo 调用不同的打印方法(来自 labelPrintTemplates mixin) if (labelNo === 'A001') { - this.printLabelA001(LODOP, printData, false); + await this.printLabelA001(LODOP, printData, false); } else if (labelNo === 'A002') { this.printLabelA002(LODOP, printData, false); } else if (labelNo === 'A003') { diff --git a/src/views/modules/yieldReport/com_cutting_material.vue b/src/views/modules/yieldReport/com_cutting_material.vue index d501abc..edf4106 100644 --- a/src/views/modules/yieldReport/com_cutting_material.vue +++ b/src/views/modules/yieldReport/com_cutting_material.vue @@ -338,7 +338,7 @@ export default { } // 4. 执行模板打印 - this.executePrintWithTemplate(LODOP, [printData.row], labelNo, defaultPrinterName); + await this.executePrintWithTemplate(LODOP, [printData.row], labelNo, defaultPrinterName); this.$message.success('标签打印任务已发送!'); } else { console.warn('获取打印参数失败'); @@ -356,7 +356,7 @@ export default { * @param {String} labelNo - 标签模板编号 (A001/A002/A003) * @param {String} printerName - 打印机名称 */ - executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { + async executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { console.log('开始打印,标签数量:', printDataList.length, '标签数据:', printDataList); // 循环打印每个标签(每个标签单独打印一次) @@ -369,7 +369,7 @@ export default { // 根据 labelNo 调用不同的打印方法(来自 labelPrintTemplates mixin) if (labelNo === 'A001') { - this.printLabelA001(LODOP, printData, false); + await this.printLabelA001(LODOP, printData, false); } else if (labelNo === 'A002') { this.printLabelA002(LODOP, printData, false); } else if (labelNo === 'A003') { diff --git a/src/views/modules/yieldReport/com_material_loss.vue b/src/views/modules/yieldReport/com_material_loss.vue index c2c15f9..acd0967 100644 --- a/src/views/modules/yieldReport/com_material_loss.vue +++ b/src/views/modules/yieldReport/com_material_loss.vue @@ -331,7 +331,7 @@ export default { * @param {String} labelNo - 标签模板编号 (A001/A002/A003) * @param {String} printerName - 打印机名称 */ - executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { + async executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { console.log('开始打印,标签数量:', printDataList.length, '标签数据:', printDataList); // 循环打印每个标签(每个标签单独打印一次) @@ -344,7 +344,7 @@ export default { // 根据 labelNo 调用不同的打印方法(来自 labelPrintTemplates mixin) if (labelNo === 'A001') { - this.printLabelA001(LODOP, printData, false); + await this.printLabelA001(LODOP, printData, false); } else if (labelNo === 'A002') { this.printLabelA002(LODOP, printData, false); } else if (labelNo === 'A003') { diff --git a/src/views/modules/yieldReport/com_produce_report_normal.vue b/src/views/modules/yieldReport/com_produce_report_normal.vue index a2af487..5444a04 100644 --- a/src/views/modules/yieldReport/com_produce_report_normal.vue +++ b/src/views/modules/yieldReport/com_produce_report_normal.vue @@ -4920,7 +4920,7 @@ export default { } // 5. 执行模板打印 - this.executePrintWithTemplate(LODOP, printDataList, labelNo, defaultPrinterName); + await this.executePrintWithTemplate(LODOP, printDataList, labelNo, defaultPrinterName); this.$message.success('标签打印任务已发送!'); @@ -4939,7 +4939,7 @@ export default { * @param {String} labelNo - 标签模板编号 (A001/A002/A003) * @param {String} printerName - 打印机名称 */ - executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { + async executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { console.log('开始打印,标签数量:', printDataList.length, '标签数据:', printDataList); // 循环打印每个标签(每个标签单独打印一次) @@ -4952,7 +4952,7 @@ export default { // 根据 labelNo 调用不同的打印方法(来自 labelPrintTemplates mixin) if (labelNo === 'A001') { - this.printLabelA001(LODOP, printData, false); + await this.printLabelA001(LODOP, printData, false); } else if (labelNo === 'A002') { this.printLabelA002(LODOP, printData, false); } else if (labelNo === 'A003') { diff --git a/src/views/modules/yieldReport/com_separate_roll.vue b/src/views/modules/yieldReport/com_separate_roll.vue index ed198f9..acaf7e6 100644 --- a/src/views/modules/yieldReport/com_separate_roll.vue +++ b/src/views/modules/yieldReport/com_separate_roll.vue @@ -1445,7 +1445,7 @@ export default { } // 4. 执行打印 - this.executePrintWithTemplate(LODOP, printDataList, labelNo, defaultPrinterName); + await this.executePrintWithTemplate(LODOP, printDataList, labelNo, defaultPrinterName); this.$message.success('标签打印任务已发送!'); @@ -1464,7 +1464,7 @@ export default { * @param {String} labelNo - 标签模板编号 (A001/A002/A003) * @param {String} printerName - 打印机名称 */ - executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { + async executePrintWithTemplate(LODOP, printDataList, labelNo, printerName) { console.log('开始打印,标签数量:', printDataList.length, '标签数据:', printDataList); // 循环打印每个标签(每个标签单独打印一次) @@ -1480,7 +1480,7 @@ export default { // 根据 labelNo 调用不同的打印方法(来自 labelPrintTemplates mixin) // 注意:不需要 NEWPAGE,因为每个标签是独立的打印任务 if (labelNo === 'A001') { - this.printLabelA001(LODOP, printData, false); + await this.printLabelA001(LODOP, printData, false); } else if (labelNo === 'A002') { this.printLabelA002(LODOP, printData, false); } else if (labelNo === 'A003') {