diff --git a/src/pages/purchaseReceipt/job/purchaseReceiptAsn.vue b/src/pages/purchaseReceipt/job/purchaseReceiptAsn.vue index c9f62a90..fbe673d2 100644 --- a/src/pages/purchaseReceipt/job/purchaseReceiptAsn.vue +++ b/src/pages/purchaseReceipt/job/purchaseReceiptAsn.vue @@ -144,6 +144,7 @@ // 扫描的箱标签asn单号已经在列表中 const itemObj = this.jobList.find(item => item.asnNumber == asnNumber && item.itemCode == result .label.itemCode) + itemObj.handleQty = itemObj.handleQty || 0 if (!itemObj) { this.showMessage(`ASN单号【${asnNumber}】物料代码【${result.label.itemCode}】不在列表中 `) return @@ -165,7 +166,7 @@ itemObj.scaned = true packObj.scaned = true packObj.handleQty = result.label.qty - this.calcHandleQty(this.jobList); + this.calcHandleQty(packObj.handleQty,itemObj); this.scanPopupGetFocus() // 改asn单号没有被扫描过 }else{ @@ -223,6 +224,7 @@ this.jobList = [...this.jobList, ...resultList] const itemObj = this.jobList.find(item => item.asnNumber == asnNumber && item .itemCode == result.label.itemCode) + itemObj.handleQty = itemObj.handleQty || 0 const packObj = itemObj.packageDOS.find(cur => cur.number == result.label .packingNumber) if (packObj.requestNumber) { @@ -243,7 +245,7 @@ packObj.convertRate = result.label.convertRate packObj.supplierQty = parseFloat(calc.div(parseFloat(packObj.handleQty), parseFloat(packObj.convertRate)).toFixed(5)) packObj.supplierUom = result.label.purchaseUom - this.calcHandleQty(this.jobList); + this.calcHandleQty(packObj.handleQty,itemObj); this.scanPopupGetFocus() }else{ this.scanPopupGetFocus() @@ -274,7 +276,7 @@ itemObj.scaned = true packObj.scaned = true packObj.handleQty = result.label.qty - this.calcHandleQty(this.jobList); + this.calcHandleQty(packObj.handleQty,itemObj); this.scanPopupGetFocus() } } else { @@ -354,19 +356,20 @@ } }, - calcHandleQty(detailSource) { - for (let item of detailSource) { - item.handleQty = new Decimal(0).toNumber(); - // item.qty = new Decimal(0).toNumber(); - for (let detail of item.packageDOS) { - if (detail != undefined) { - if (detail.scaned) { - item.handleQty = calc.add(item.handleQty, detail.handleQty); - } - // item.qty = calc.add(item.qty, detail.qty); - } - } - } + calcHandleQty(handleQty,itemObj) { + itemObj.handleQty = calc.add(itemObj.handleQty, handleQty); + // for (let item of detailSource) { + // item.handleQty = new Decimal(0).toNumber(); + // // item.qty = new Decimal(0).toNumber(); + // for (let detail of item.packageDOS) { + // if (detail != undefined) { + // if (detail.scaned) { + // item.handleQty = calc.add(item.handleQty, detail.handleQty); + // } + // // item.qty = calc.add(item.qty, detail.qty); + // } + // } + // } }, async handleTakePurchaseReceiptJob(id, callback) { await takePurchaseReceiptJob(id).then(res => {