From 03eca9cdec1d290be4be60d4d9d5038257b93586 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期六, 14 九月 2024 18:29:40 +0800 Subject: [PATCH] updat 合伙人 --- sub_pages/supplier/print/print-list.vue | 268 +++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 187 insertions(+), 81 deletions(-) diff --git a/sub_pages/supplier/print/print-list.vue b/sub_pages/supplier/print/print-list.vue index 37e68f7..c35c8dd 100644 --- a/sub_pages/supplier/print/print-list.vue +++ b/sub_pages/supplier/print/print-list.vue @@ -1,7 +1,7 @@ <template> <!-- 显示要打印的东西 --> <view class="list-container order-delivery-print supplier"> - <view class="p15"> + <view class="p15" v-if="false"> <view class="m-b-24 order-sale-list list-container"> <view class="order-sale-item list-item"> <view class="title flex"> @@ -14,7 +14,11 @@ </image> <view class="flex1"> <view class=" flex"> - <view class="title">{{item.flowerName }} + <view class="title"> + <span class="level" + v-if="item.flowerCategory">{{ item.flowerCategory || ''}}</span><span + class="level">{{ item.flowerLevelStr || ''}}</span> + {{item.flowerName }} </view> </view> <view class="each-list "> @@ -43,11 +47,11 @@ <view class="delivery-form"> <view class="form-item"> <view class="label">仓库名称</view> - <view class="value red">{{item.warehouseName}}</view> + <view class="value red">{{item.warehouseName||'待分配'}}</view> </view> <view class="form-item"> <view class="label">库位名称</view> - <view class="value red">{{item.warehouseLocationCode}}</view> + <view class="value red">{{item.warehouseLocationCode||'待分配'}}</view> </view> </view> @@ -66,6 +70,7 @@ <view class="print-container m-t-12"> <button class="btn" type="primary" @click="startSearch" :loading="isScanning"> 开始搜索 </button> + <button class="btn m-t-12" type="default" @click="breakPrint=true"> 中断打印 </button> <view v-for="(device,index) of list" :key="device.deviceId" @click="bindViewTap(device)"> <view class="item"> <div class="deviceId block">{{device.deviceId}}</div> @@ -83,7 +88,8 @@ export default { data() { return { - item: {}, + // item: {}, + items: [], services: [], serviceId: 0, writeCharacter: false, @@ -115,6 +121,7 @@ notifyServiceId: '', BserviceId: '', buffs: [], + breakPrint: false } }, /** @@ -140,23 +147,46 @@ async onLoad() { var t = this.$storage.getItem('cache_delivery_order_print') || '' if (t) { - this.item = JSON.parse(t) + this.items = JSON.parse(t) + var apitype = '' + // #ifdef PUB_SUPPLIER + apitype = '/supplier' + // #endif + // #ifdef PUB_PARTNER + // apitype = '/supplier' + // #endif //获取详情接口 + var ids = [] + for (var item of this.items) { + ids.push(item.id) + } this.$message.showLoading() + // const { + // code, + // data + // } = await this.$http.request('get', `/api${apitype}/delivery/list/items/view`, { + // params: { + // id: this.item.id, + // ids: ids + // } + // }) const { code, data - } = await this.$http.request('get', '/api/supplier/delivery/list/items/view', { - params: { - id: this.item.id + } = await this.$http.request('post', `/api${apitype}/delivery/list/items/views`, { + data: { + // id: this.item.id, + ids: ids } }) this.$message.hideLoading() if (code == 0 && data) { - this.item = { - ...this.item, - ...data - } + // this.item = { + // ...this.item, + // ...data + // } + this.items = data || [] + console.log('items len:', this.items.length) } } else { this.$message.showToast('获取详情失败') @@ -325,6 +355,12 @@ * 链接到某一个蓝牙设备上 */ bindViewTap: function(device) { + if (this.isLabelSend) { + this.$message.showToast('正在打印中') + return + } + this.breakPrint = false + var that = this wx.stopBluetoothDevicesDiscovery({ //关闭发现蓝牙设备 success: function(res) { @@ -479,85 +515,131 @@ }, async openControl() { //打印 + // console.log('openControl start') + let that = this; - var that = this; - if (that.item.num < 0) { + var totalnum = 0 + for (var each of that.items) { + totalnum += each.num || 1 + } + if (totalnum <= 0) { that.$message.showToast('打印数目不能小于0') return } - if (that.item.num > 3) { - await that.$message.confirm(`打印数目为${that.item.num}张,确定打印吗`) + if (totalnum > 3) { + await that.$message.confirm(`打印数目为${totalnum}张,确定打印吗`) + } + if (totalnum <= 0) { + that.$message.showToast('打印数目不能小于0') + return } that.buffs = [] - for (var i = 0; i < that.item.num; i++) { + for (var each of that.items) { + for (var i = 0; i < (each.num || 1); i++) { + var command = tsc.jpPrinter.createNew() + //根据数目不同,打印不同数目 - var command = tsc.jpPrinter.createNew() - - //根据数目不同,打印不同数目 - - command.setSize(48, 60) - command.setGap(0) - command.setCls() - // command.setText(0, 30, "TSS24.BF2", 1, 1, "图片") - // command.setQR(40, 120, "L", 5, "A", "www.smarnet.cc佳博智汇") - // command.setText(60, 20, "TSS24.BF2", 1, 1, "单号:" + (that.item.orderNo || '-')) - // 仓库: - if (that.item.warehouseName) - command.setText(20, 20, "TSS24.BF2", 1, 1, "" + that.item.warehouseName) - // 库位: - if (that.item.warehouseLocationCode) - command.setText(200, 20, "TSS24.BF2", 1, 1, "" + that.item.warehouseLocationCode) - - // command.setText(170, 50, "TSS24.BF2", 1, 1, "小程序测试") - // command.setText(170, 90, "TSS24.BF2", 1, 1, "测试数字12345678") - // command.setText(170, 120, "TSS24.BF2", 1, 1, "测试英文abcdefg") - // command.setText(170, 150, "TSS24.BF2", 1, 1, "测试符号/*-+!@#$") - - // 供应商: - command.setText(20, 60, "TSS24.BF2", 1, 1, "" + (that.item.supplierName || '-')) - // 商品名称: - command.setText(20, 100, "TSS24.BF2", 1, 1, "" + (that.item.flowerName || '-')) - command.setText(20) - // 颜色: - command.setText(200, 140, "TSS24.BF2", 1, 1, "" + (that.item.flowerColor || '-')) - // command.setText(10, 220, "TSS24.BF2", 1, 1, "价格: ¥ " + (that.item.price || '-')) - command.setText(20, 180, "TSS24.BF2", 1, 1, "规格: " + (that.item.flowerUnit || '-')) - command.setText(200, 180, "TSS24.BF2", 1, 1, `数目: ${i+1}/${that.item.num}`) - // command.setText(10, 300, "TSS24.BF2", 1, 1, "花满芫") - command.setText(100, 220, "TSS24.BF2", 1, 1, that.$util.toDateMin(new Date())) - if (that.item.params) { - var addnum = 0 - var hlen = 220 - for (var p of that.item.params) { - if (p.name !== '枝长' && p.name !== '成熟度') { - continue - } - if (p.value) { - var lef = 20 - if (addnum % 2 == 1) { - lef = 190 - } else { - lef = 20 - hlen += 40 + command.setSize(48, 60) + command.setGap(0) + command.setCls() + // command.setText(0, 30, "TSS24.BF2", 1, 1, "图片") + // command.setQR(40, 120, "L", 5, "A", "www.smarnet.cc佳博智汇") + // command.setText(60, 20, "TSS24.BF2", 1, 1, "单号:" + (each.orderNo || '-')) + // 仓库: + // if (each.warehouseName) + var paramsmap = {} + if (each.params) { + for (var p of each.params) { + if (p.name !== '枝长' && p.name !== '成熟度') { + continue } - command.setText(lef, hlen, "TSS24.BF2", 1, 1, "" + (p.name || '') + ':' + p.value) - addnum += 1 + paramsmap[p.name] = p.value || '' } } + command.setText(30, 40, "TSS24.BF2", 1, 1, "" + (each.supplierName || '-')) + command.setText(200, 40, "TSS24.BF2", 1, 1, "" + (each.warehouseName || '待分配')) + var flowerCategory = each.flowerCategory + if (flowerCategory) { + //只取二级分类 + var tarr = flowerCategory.split("/") + if (tarr.length >= 2) { + flowerCategory = tarr[tarr.length - 1] + } + } + command.setText(30, 80, "TSS24.BF2", 1, 1, "" + (flowerCategory || '')) + command.setText(200, 80, "TSS24.BF2", 1, 1, "库位:" + (each.warehouseLocationCode || '')) + + command.setText(30, 120, "TSS24.BF2", 1, 1, "等级:" + (each.flowerLevelStr || '')) + command.setText(200, 120, "TSS24.BF2", 1, 1, "" + (each.flowerColor || '')) + // 规格: + command.setText(30, 160, "TSS24.BF2", 1, 1, "" + (each.flowerUnit || '-')) + // 成熟度: + command.setText(200, 160, "TSS24.BF2", 1, 1, "" + (paramsmap['成熟度'] || '-')) + // 枝长: + command.setText(30, 200, "TSS24.BF2", 1, 1, "" + (paramsmap['枝长'] || '-')) + command.setText(200, 200, "TSS24.BF2", 1, 1, that.$util.toDate(new Date())) + + command.setText(60, 230, "TSS24.BF2", 1, 1, "————————————") + + command.setText(30, 260, "TSS24.BF2", 1, 1, "花满芫") + command.setText(200, 260, "TSS24.BF2", 1, 1, `数目: ${i+1}/${each.num||1}`) + + // command.setText(20, 40, "TSS24.BF2", 1, 1, "" + (that.item.warehouseName || '待分配')) + // // 库位: + // // if (that.item.warehouseLocationCode) + // command.setText(200, 40, "TSS24.BF2", 1, 1, "" + (that.item.warehouseLocationCode || '待分配')) + + // // command.setText(170, 50, "TSS24.BF2", 1, 1, "小程序测试") + // // command.setText(170, 90, "TSS24.BF2", 1, 1, "测试数字12345678") + // // command.setText(170, 120, "TSS24.BF2", 1, 1, "测试英文abcdefg") + // // command.setText(170, 150, "TSS24.BF2", 1, 1, "测试符号/*-+!@#$") + + // // 供应商: + // command.setText(20, 80, "TSS24.BF2", 1, 1, "" + (that.item.supplierName || '-')) + // // 商品名称: + // command.setText(20, 120, "TSS24.BF2", 1, 1, "" + (that.item.flowerName || '-')) + // // 颜色: + // command.setText(200, 120, "TSS24.BF2", 1, 1, "" + (that.item.flowerColor || '-')) + // // command.setText(10, 220, "TSS24.BF2", 1, 1, "价格: ¥ " + (that.item.price || '-')) + // command.setText(20, 160, "TSS24.BF2", 1, 1, "规格: " + (that.item.flowerUnit || '-')) + // command.setText(200, 160, "TSS24.BF2", 1, 1, `数目: ${i+1}/${that.item.num}`) + // // command.setText(10, 300, "TSS24.BF2", 1, 1, "花满芫") + // command.setText(100, 200, "TSS24.BF2", 1, 1, that.$util.toDateMin(new Date())) + // if (that.item.params) { + // var addnum = 0 + // var hlen = 200 + // for (var p of that.item.params) { + // if (p.name !== '枝长' && p.name !== '成熟度') { + // continue + // } + // if (p.value) { + // var lef = 20 + // if (addnum % 2 == 1) { + // lef = 190 + // } else { + // lef = 20 + // hlen += 40 + // } + // command.setText(lef, hlen, "TSS24.BF2", 1, 1, "" + (p.name || '') + ':' + p.value) + // addnum += 1 + // } + // } + // } + // <view class="delivery-form" v-if="item.params"> + // <view class="form-item" v-for="(p,k) of item.params" :key="k"> + // <view class="label">{{p.name||'-'}}:</view> + // <view class="value red">{{p.value}}</view> + // </view> + // </view> + // command.setBar(170, 180, "EAN8", 64, 1, 3, 3, "1234567") + + command.setPagePrint() + // console.log('that.buffs', that.buffs.length) + that.buffs.push(command.getData()) } - // <view class="delivery-form" v-if="item.params"> - // <view class="form-item" v-for="(p,k) of item.params" :key="k"> - // <view class="label">{{p.name||'-'}}:</view> - // <view class="value red">{{p.value}}</view> - // </view> - // </view> - // command.setBar(170, 180, "EAN8", 64, 1, 3, 3, "1234567") - command.setPagePrint() - - that.buffs.push(command.getData()) } that.isLabelSend = true // that.prepareSend(command.getData()) @@ -621,10 +703,13 @@ characteristicId: that.writeCharaterId, value: buf, success: function(res) { - console.log(res) + // console.log(res) }, fail: function(e) { console.log(e) + // wx.showToast({ + // title: '打印失败:' + e, + // }) }, complete: function() { currentTime++ @@ -636,8 +721,13 @@ wx.showToast({ title: '已打印第' + currentPrint + '张', }) - if (currentPrint == buffs.length) { - + if (currentPrint == that.buffs.length || that.breakPrint) { + if (that.breakPrint) { + wx.showToast({ + title: '中断成功', + }) + that.breakPrint = false + } that.looptime = 0 that.lastData = 0 that.currentTime = 1 @@ -767,6 +857,14 @@ font-size: 28rpx; color: #000000; line-height: 40rpx; + + .level { + font-weight: 400; + font-size: 28rpx; + color: #20613D; + line-height: 40rpx; + margin-right: 20rpx; + } } .status { @@ -796,6 +894,14 @@ font-size: 28rpx; color: #000000; line-height: 40rpx; + + .level { + font-weight: 400; + font-size: 28rpx; + color: #20613D; + line-height: 40rpx; + margin-right: 20rpx; + } } .desc {} -- Gitblit v1.9.3