From 9116015e191314a2238ca83bcb6f6d46f606556c Mon Sep 17 00:00:00 2001 From: QunSheng Lin <441785369@qq.com> Date: Tue, 15 Apr 2025 12:29:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=8D=B0=E7=BB=86=E7=A0=81=E6=88=90?= =?UTF-8?q?=E5=8A=9F=201.0.9=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/components/bluetooth/bluetooth.axml | 5 +- pages/components/bluetooth/bluetooth.js | 327 +++++++++++------- .../printTemplate/bluetooth/bluetooth.acss | 88 +++++ .../printTemplate/bluetooth/bluetooth.axml | 8 +- .../printTemplate/bluetooth/bluetooth.js | 49 ++- pages/static/images/胜佳纺织.png | Bin 0 -> 53293 bytes 6 files changed, 323 insertions(+), 154 deletions(-) create mode 100644 pages/static/images/胜佳纺织.png diff --git a/pages/components/bluetooth/bluetooth.axml b/pages/components/bluetooth/bluetooth.axml index 80b4837..e0d2491 100644 --- a/pages/components/bluetooth/bluetooth.axml +++ b/pages/components/bluetooth/bluetooth.axml @@ -7,8 +7,8 @@ {{selectedDevice.name}} - {{discovering}} - {{available}} + @@ -40,6 +40,7 @@ + diff --git a/pages/components/bluetooth/bluetooth.js b/pages/components/bluetooth/bluetooth.js index e589c58..a61a83c 100644 --- a/pages/components/bluetooth/bluetooth.js +++ b/pages/components/bluetooth/bluetooth.js @@ -2,7 +2,8 @@ Component({ mixins: [], data: { printdata: {}, - array: ['TSPL', 'ZPL', 'CPCL', 'ESC/POS'], + percent: '0', + array: ['TSPL', 'ZPL 待开发', 'CPCL 待开发', 'ESC/POS 待开发'], index: 0, // 初始化蓝牙的开关状态,false 表示关闭,true 表示打开 switchswitchopenBluetoothAdapter: false, @@ -81,6 +82,197 @@ Component({ } }, methods: { + onSubmit() { + const selectedDevice = this.data.selectedDevice; + console.log('selectedDevice', selectedDevice); + const isConnected = this.data.isConnected; + // 检查蓝牙设备是否已连接 + if (!selectedDevice || !isConnected) { + console.log('请先连接蓝牙设备'); + const title = '请先连接蓝牙设备'; + if (title) { + dd.showToast({ + title, + icon: 'none' + }); + } + return; + } + + // 从可写特征值列表中获取第一个可写特征值(这里假设只有一个可写特征值,你可以根据实际情况调整) + const writableCharacteristic = this.data.writableCharacteristics[0]; + console.log('writableCharacteristics', this.data.writableCharacteristics); + if (!writableCharacteristic) { + console.log('未找到可写特征值'); + const title = '未找到可写特征值'; + if (title) { + dd.showToast({ + title, + icon: 'none' + }); + } + return; + } + + const serviceId = writableCharacteristic.serviceId; + const characteristicId = writableCharacteristic.characteristicId; + const deviceId = selectedDevice.deviceId; + + // 检查参数完整性 + if (!deviceId || !serviceId || !characteristicId) { + console.error('缺少必要参数:', { + deviceId, + serviceId, + characteristicId + }); + const title = '缺少必要参数,请检查连接'; + if (title) { + dd.showToast({ + title, + icon: 'none' + }); + } + return; + } + //打印数据处理 + const selectedSaleOrderLines = dd.getStorageSync({ + key: 'selectedSaleOrderLines' + }).data; + const printdata = selectedSaleOrderLines || {}; + this.setData({ + printdata + }); + + const allValuesToPrint = []; + // 检查打印数据是否存在,并且 selectedItems 是一个数组 + if (printdata && printdata.selectedItems && Array.isArray(printdata.selectedItems)) { + // 遍历 selectedItems 数组 + printdata.selectedItems.forEach((item) => { + // 输出当前遍历的 item + console.log('每个订单行数据item:', item); + // 检查 item 的 fineCode3Names 是否存在,并且是一个数组 + if (item.fineCode3Names && Array.isArray(item.fineCode3Names)) { + // 遍历 fineCode3Names 数组 + item.fineCode3Names.forEach((value) => { + // 拼接要打印的内容 + value = `name ${item.name[1]}.color ${item.color_id_2[1]}.code ${value}`; + // 去除中文和[]符号 + value = value.replace(/[\u4e00-\u9fa5\[\]]/g, ''); + allValuesToPrint.push(value); + }); + } + }); + } + + + const totalCodes = allValuesToPrint.length; + let sentCodes = 0; + let totalChunks = 0; + let sentChunks = 0; + + // 计算总的数据块数量 + allValuesToPrint.forEach((code) => { + const command = ` + SIZE 7,5 + GAP 2,0 + CLS + QRCODE 20,150,H,5,A,0,"${code}" + TEXT 20,350,"2",0,1,1,"${code}" + PRINT 1,1 + `; + const encoder = new TextEncoder('utf-8'); + const commandBuffer = encoder.encode(command); + const hexValue = Array.from(commandBuffer) + .map(byte => byte.toString(16).padStart(2, '0')) + .join(''); + const chunkSize = 40; + const chunks = []; + for (let i = 0; i < hexValue.length; i += chunkSize) { + chunks.push(hexValue.slice(i, i + chunkSize)); + } + totalChunks += chunks.length; + }); + + const sendPrintCode = (index) => { + if (index >= allValuesToPrint.length) { + console.log('所有 printcode 数据发送完成'); + this.setData({ + percent: '100', + }); + return; + } + + const currentCode = allValuesToPrint[index]; + const command = ` + SIZE 7,5 + GAP 2,0 + CLS + QRCODE 20,150,H,5,A,0,"${currentCode}" + TEXT 20,350,"2",0,1,1,"${currentCode}" + PRINT 1,1 + `; + const encoder = new TextEncoder('utf-8'); + const commandBuffer = encoder.encode(command); + + // 将二进制数据转换为 hex 编码 + const hexValue = Array.from(commandBuffer) + .map(byte => byte.toString(16).padStart(2, '0')) + .join(''); + + // 分段发送数据 + const chunkSize = 40; // 每个分段的长度,20 字节 = 40 个十六进制字符 + const chunks = []; + for (let i = 0; i < hexValue.length; i += chunkSize) { + chunks.push(hexValue.slice(i, i + chunkSize)); + } + + const sendNextChunk = (chunkIndex) => { + if (chunkIndex >= chunks.length) { + console.log(`printcode ${currentCode} 的所有数据分段发送完成`); + sentCodes++; + sendPrintCode(index + 1); + return; + } + + const currentChunk = chunks[chunkIndex]; + console.log(`准备发送 printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段,长度: ${currentChunk.length}`, currentChunk); + dd.writeBLECharacteristicValue({ + deviceId, + serviceId, + characteristicId, + value: currentChunk, + success: (res) => { + console.log(`printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送成功`, res); + sentChunks++; + const percent = ((sentChunks / totalChunks) * 100).toFixed(0); + this.setData({ + percent: percent, + }); + sendNextChunk(chunkIndex + 1); + }, + fail: (res) => { + console.error(`printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送失败,错误码:`, res.errorCode); + const title = `printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送失败,错误码: ${res.errorCode}`; + if (title) { + dd.showToast({ + title: title, + icon: 'none' + }); + } + }, + complete: (res) => { + console.log(`printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送调用结束`, res); + } + }); + }; + + sendNextChunk(0); + }; + + sendPrintCode(0); + }, + + getBluetoothAdapterState() { // 调用 dd.getBluetoothAdapterState 方法获取本机蓝牙模块的状态 dd.getBluetoothAdapterState({ @@ -639,138 +831,7 @@ Component({ }); this.reconnectBluetoothDevice(); } - }, - onSubmit() { - const selectedDevice = this.data.selectedDevice; - console.log('selectedDevice', selectedDevice); - const isConnected = this.data.isConnected; - // 检查蓝牙设备是否已连接 - if (!selectedDevice || !isConnected) { - console.log('请先连接蓝牙设备'); - const title = '请先连接蓝牙设备'; - if (title) { - dd.showToast({ - title, - icon: 'none' - }); - } - return; - } - - // 从可写特征值列表中获取第一个可写特征值(这里假设只有一个可写特征值,你可以根据实际情况调整) - const writableCharacteristic = this.data.writableCharacteristics[0]; - console.log('writableCharacteristics', this.data.writableCharacteristics); - if (!writableCharacteristic) { - console.log('未找到可写特征值'); - const title = '未找到可写特征值'; - if (title) { - dd.showToast({ - title, - icon: 'none' - }); - } - return; - } - - const serviceId = writableCharacteristic.serviceId; - const characteristicId = writableCharacteristic.characteristicId; - const deviceId = selectedDevice.deviceId; - - // 检查参数完整性 - if (!deviceId || !serviceId || !characteristicId) { - console.error('缺少必要参数:', { - deviceId, - serviceId, - characteristicId - }); - const title = '缺少必要参数,请检查连接'; - if (title) { - dd.showToast({ - // title, - icon: 'none' - }); - } - return; - } - - // 假设 printcode 是一个变量,需要在代码里定义 - const printcode = [1, 2, 3, 4]; - - const sendPrintCode = (index) => { - if (index >= printcode.length) { - console.log('所有 printcode 数据发送完成'); - // const title = '所有 printcode 数据发送完成'; - // if (title) { - // dd.showToast({ - // // title, - // icon: 'success' - // }); - // } - return; - } - - const currentCode = printcode[index]; - const command = ` - SIZE 7,5 - GAP 2,0 - CLS - QRCODE 20,150,H,5,A,0,"${currentCode}" - TEXT 20,350,"2",0,1,1,"${currentCode}" - PRINT 1,1 - `; - const encoder = new TextEncoder('utf-8'); - const commandBuffer = encoder.encode(command); - - // 将二进制数据转换为 hex 编码 - const hexValue = Array.from(commandBuffer) - .map(byte => byte.toString(16).padStart(2, '0')) - .join(''); - - // 分段发送数据 - const chunkSize = 40; // 每个分段的长度,20 字节 = 40 个十六进制字符 - const chunks = []; - for (let i = 0; i < hexValue.length; i += chunkSize) { - chunks.push(hexValue.slice(i, i + chunkSize)); - } - - const sendNextChunk = (chunkIndex) => { - if (chunkIndex >= chunks.length) { - console.log(`printcode ${currentCode} 的所有数据分段发送完成`); - sendPrintCode(index + 1); - return; - } - - const currentChunk = chunks[chunkIndex]; - console.log(`准备发送 printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段,长度: ${currentChunk.length}`, currentChunk); - dd.writeBLECharacteristicValue({ - deviceId, - serviceId, - characteristicId, - value: currentChunk, - success: (res) => { - console.log(`printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送成功`, res); - sendNextChunk(chunkIndex + 1); - }, - fail: (res) => { - console.error(`printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送失败,错误码:`, res.errorCode); - const title = `printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送失败,错误码: ${res.errorCode}`; - // if (title) { - // dd.showToast({ - // title: title, - // icon: 'none' - // }); - // } - }, - complete: (res) => { - console.log(`printcode ${currentCode} 的第 ${chunkIndex + 1} 个数据分段发送调用结束`, res); - } - }); - }; - - sendNextChunk(0); - }; - - sendPrintCode(0); } + }, }); \ No newline at end of file diff --git a/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.acss b/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.acss index e69de29..0c1ab2a 100644 --- a/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.acss +++ b/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.acss @@ -0,0 +1,88 @@ + +.list-header { + font-size: 18px; + font-weight: bold; + padding: 10px; + background-color: #f0f0f0; +} + +.order-item { + /* 卡片边框颜色 */ + border: 1px solid #161515; + padding: 10px; + margin: 10px; + cursor: pointer; + border-radius: 5px; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); + background-color: #ffffff; +} + +.order-title { + font-size: 16px; + font-weight: bold; + color: #dbe45a; +} + +.order-brief { + font-size: 14px; + color: #666; +} + +.order-extra { + font-size: 14px; + color: #666; + float: right; +} + +.order-details { + font-size: 14px; + margin-top: 5px; + color: #444444; +} + +.order-line-item { + border: 1px solid #eee; + padding: 5px; + margin-top: 5px; + border-radius: 3px; + /* 销售订单行背景色 */ + background-color: #f9f9f9; +} + +.pagination { + display: flex; + justify-content: center; + align-items: center; + margin-top: 20px; +} + +.pagination-button { + padding: 8px 16px; + margin: 0 10px; + border: none; + border-radius: 5px; + background-color: #007aff; + color: #ffffff; + cursor: pointer; + transition: background-color 0.3s ease; +} + +.pagination-button:hover { + background-color: #0056b3; +} + +.disabled-button { + background-color: #cccccc; + cursor: not-allowed; +} + +.pagination-text { + font-size: 14px; + color: #333333; + margin: 0 10px; +} + +.image { + width: 50px; + height: 50px; +} \ No newline at end of file diff --git a/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.axml b/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.axml index b971fab..dd8e47b 100644 --- a/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.axml +++ b/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.axml @@ -1,3 +1,9 @@ - + + + + + name:{{item.name || '无货号'}}. color: {{item.color_id_2 || '无色号'}} . code: {{item.fineCode || '无细码'}} + + \ No newline at end of file diff --git a/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.js b/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.js index a0f1c41..96966c4 100644 --- a/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.js +++ b/pages/deal/saleOrder/kanban/from/printTag/printTemplate/bluetooth/bluetooth.js @@ -1,22 +1,35 @@ Page({ data: { - printdata: {}, - // printFormat: 'TSPL', - // maxAllowedLength: 1024, - // delayTime: 5000, // 默认延迟 5 秒,单位:毫秒 - // paperSize: { - // width: 80, // 默认宽度 80mm - // height: 60 // 默认高度 60mm - // }, - // index: 0 //指令集默认选择 + printdata: {}, + selectedItems: [], + fineCode3Names: [] }, onLoad() { - const selectedSaleOrderLines = dd.getStorageSync({ - key: 'selectedSaleOrderLines' - }).data; - const printdata = selectedSaleOrderLines || {}; - this.setData({ - printdata - }); - }, -}); \ No newline at end of file + const selectedSaleOrderLines = dd.getStorageSync({ + key: 'selectedSaleOrderLines' + }).data; + const printdata = selectedSaleOrderLines || {}; + const selectedItems = printdata.selectedItems || []; + const fineCode3Names = []; + + selectedItems.forEach(item => { + if (item.fineCode3Names) { + item.fineCode3Names.forEach(fineCode => { + fineCode3Names.push({ + name: item.name || '无货号', + color_id_2: item.color_id_2[1] || '无色号', + fineCode + }); + }); + } + }); + + this.setData({ + printdata, + selectedItems, + fineCode3Names + }); + console.log('selectedItems', selectedItems); + console.log('fineCode3Names', fineCode3Names); + } +}); \ No newline at end of file diff --git a/pages/static/images/胜佳纺织.png b/pages/static/images/胜佳纺织.png new file mode 100644 index 0000000000000000000000000000000000000000..4fbc5810368adfa3eca0f446f862c05c09dc2e25 GIT binary patch literal 53293 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%0A>~1d0oNz+fA+q8ayK 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