From ad191070a847a9685e51d37140cb0f333cfb7968 Mon Sep 17 00:00:00 2001 From: lijuncheng Date: Fri, 2 Feb 2024 14:51:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=95=B0=E9=87=8F=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/detail.js | 6 +- common/record.js | 8 +- pages/count/job/countDetail.vue | 931 ++++++++++++----------- pages/count/record/countRecord.vue | 11 +- pages/issue/coms/comScanIssuePack.vue | 3 +- pages/transfer/job/transferDetail.vue | 3 +- pages/unPlanned/record/receiptRecord.vue | 8 +- 7 files changed, 494 insertions(+), 476 deletions(-) diff --git a/common/detail.js b/common/detail.js index 95ad376f..fac8eb40 100644 --- a/common/detail.js +++ b/common/detail.js @@ -58,10 +58,12 @@ import { //计算实际数量 export function calcHandleQty(detailSource) { for (let item of detailSource) { - item.handleQty = 0; + item.handleQty = new Decimal(0).toNumber(); + item.qty = new Decimal(0).toNumber(); for (let detail of item.subList) { if (detail != undefined && detail.scaned) { - item.handleQty = calc.add(item.handleQty, detail.handleQty) + item.handleQty = calc.add(item.handleQty,detail.handleQty); + item.qty = calc.add(item.qty,detail.qty); } } } diff --git a/common/record.js b/common/record.js index ae3d69eb..f4a988c1 100644 --- a/common/record.js +++ b/common/record.js @@ -44,9 +44,13 @@ export function createDetailInfo(balance, pack) { export function calcHandleQty(detailSource) { for (let item of detailSource) { item.handleQty = new Decimal(0).toNumber(); + item.qty = new Decimal(0).toNumber(); for (let detail of item.subList) { - if (detail != undefined && detail.scaned) { - item.handleQty = calc.add(item.handleQty,detail.handleQty); + if(detail!=undefined){ + if(detail.scaned){ + item.handleQty = calc.add(item.handleQty,detail.handleQty); + } + item.qty = calc.add(item.qty,detail.qty); } } } diff --git a/pages/count/job/countDetail.vue b/pages/count/job/countDetail.vue index 202bc487..148756a8 100644 --- a/pages/count/job/countDetail.vue +++ b/pages/count/job/countDetail.vue @@ -260,548 +260,551 @@ calcHandleQty() { for (let item of this.detailSource) { - item.handleQty = 0; + item.handleQty = new Decimal(0).toNumber(); + item.qty = new Decimal(0).toNumber(); for (let detail of item.subList) { - if (detail != undefined && detail.scaned) { - item.handleQty = calc.add(Number(item.handleQty), Number(detail.handleQty)); - // item.handleQty = item.handleQty + detail.handleQty; + if (detail!= undefined) { + if (detail.scaned) { + item.handleQty = calc.add(item.handleQty, detail.handleQty); } + item.qty = calc.add(item.qty, detail.qty); } } - this.$forceUpdate(); - }, + } + this.$forceUpdate(); + }, - updateData() { - this.calcHandleQty(); - }, + updateData() { + this.calcHandleQty(); + }, - openScanPopup() { - let fromlocationCode = ''; - let fromlocationList = []; - for (var i = 0; i < this.detailSource.length; i++) { - let item = this.detailSource[i]; - item.subList.forEach(l => { - //重复的库位不往里面插入 - var location = fromlocationList.find(res => res == l.fromLocationCode) - if (location == undefined) { - fromlocationList.push(l.fromLocationCode); - } - //来源库位赋默认值 - if (fromlocationCode == '') { - if (!l.scaned) { - fromlocationCode = l.fromLocationCode; - } + openScanPopup() { + let fromlocationCode = ''; + let fromlocationList = []; + for (var i = 0; i < this.detailSource.length; i++) { + let item = this.detailSource[i]; + item.subList.forEach(l => { + //重复的库位不往里面插入 + var location = fromlocationList.find(res => res == l.fromLocationCode) + if (location == undefined) { + fromlocationList.push(l.fromLocationCode); + } + //来源库位赋默认值 + if (fromlocationCode == '') { + if (!l.scaned) { + fromlocationCode = l.fromLocationCode; } - }) - } - this.$refs.scanPopup.openScanPopupForJob(fromlocationCode, fromlocationList, this.jobContent); - }, + } + }) + } + this.$refs.scanPopup.openScanPopupForJob(fromlocationCode, fromlocationList, this.jobContent); + }, - closeScanPopup() { - if (this.$refs.scanPopup != undefined) { - this.$refs.scanPopup.closeScanPopup(); - } - }, + closeScanPopup() { + if (this.$refs.scanPopup != undefined) { + this.$refs.scanPopup.closeScanPopup(); + } + }, - scanPopupGetFocus() { - if (this.$refs.scanPopup != undefined) { - this.$refs.scanPopup.packGetFocus(); - } - }, + scanPopupGetFocus() { + if (this.$refs.scanPopup != undefined) { + this.$refs.scanPopup.packGetFocus(); + } + }, - scanPopupLoseFocus() { - if (this.$refs.scanPopup != undefined) { - this.$refs.scanPopup.packLoseFocus(); - } - }, + scanPopupLoseFocus() { + if (this.$refs.scanPopup != undefined) { + this.$refs.scanPopup.packLoseFocus(); + } + }, - //明盘 - getScanResult(result) { - if (this.jobContent.isOpenCount) { - this.getOpenCountResult(result); - } else { - this.getUnOpenCountResult(result); - } - }, + //明盘 + getScanResult(result) { + if (this.jobContent.isOpenCount) { + this.getOpenCountResult(result); + } else { + this.getUnOpenCountResult(result); + } + }, - getOpenCountResult(result) { - try { - let that = this; - that.package = result.package; - that.label = result.label; - var item = this.detailSource.find(r => r.itemCode == that.package.itemCode); - if (item == undefined) { - that.scanByBalance(result); - } else { - // let subItem = item.subList.find(item => { - // if (item.packingNumber == that.label.packingNumber && - // item.batch == that.label.batch && item.scaned == true) { - // return item; - // } - // }) - let subItems = item.subList.filter(item => { - if (item.packingNumber == that.label.packingNumber && - item.batch == that.label.batch) { - return item; - } - }) - //有多条:同箱码同批次,但是状态不同 - if (subItems.length > 1) { - let subItem = subItems.find(r => r.scaned == false) - if (subItem == undefined) { - subItem = subItems[0]; - that.editCountResult(item, subItem); - } else { - that.scanByBalance(result); - } - } else if (subItems.length == 1) { - let subItem = subItems[0]; - if (subItem.scaned) { - that.editCountResult(item, subItem); - // this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber + - // "】已经完成盘点,是否要编辑盘点结果?", - // res => { - // if (res) { - // this.currentEditItem = subItem; - // this.$refs.countQtyEdit.openEditPopup(subItem, - // item.subList); - // // this.$refs.countQtyEdit.openEditPopupShowSeconds(subItem, - // // item.subList); - // } else { - // this.scanPopupGetFocus(); - // } - // }) - } else { - that.scanByBalance(result); - } - } else if (subItems.length == 0) { + getOpenCountResult(result) { + try { + let that = this; + that.package = result.package; + that.label = result.label; + var item = this.detailSource.find(r => r.itemCode == that.package.itemCode); + if (item == undefined) { + that.scanByBalance(result); + } else { + // let subItem = item.subList.find(item => { + // if (item.packingNumber == that.label.packingNumber && + // item.batch == that.label.batch && item.scaned == true) { + // return item; + // } + // }) + let subItems = item.subList.filter(item => { + if (item.packingNumber == that.label.packingNumber && + item.batch == that.label.batch) { + return item; + } + }) + //有多条:同箱码同批次,但是状态不同 + if (subItems.length > 1) { + let subItem = subItems.find(r => r.scaned == false) + if (subItem == undefined) { + subItem = subItems[0]; + that.editCountResult(item, subItem); + } else { that.scanByBalance(result); } + } else if (subItems.length == 1) { + let subItem = subItems[0]; + if (subItem.scaned) { + that.editCountResult(item, subItem); + // this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber + + // "】已经完成盘点,是否要编辑盘点结果?", + // res => { + // if (res) { + // this.currentEditItem = subItem; + // this.$refs.countQtyEdit.openEditPopup(subItem, + // item.subList); + // // this.$refs.countQtyEdit.openEditPopupShowSeconds(subItem, + // // item.subList); + // } else { + // this.scanPopupGetFocus(); + // } + // }) + } else { + that.scanByBalance(result); + } + } else if (subItems.length == 0) { + that.scanByBalance(result); } - } catch (e) { - this.showErrorMessage(e.message) } - }, + } catch (e) { + this.showErrorMessage(e.message) + } + }, - //编辑盘点结果 - editCountResult(item, subItem) { + //编辑盘点结果 + editCountResult(item, subItem) { + let that = this; + this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber + + "】已经完成盘点,是否要编辑盘点结果?", + res => { + if (res) { + this.currentEditItem = subItem; + this.$refs.countQtyEdit.openEditPopup(subItem, + item.subList); + // this.$refs.countQtyEdit.openEditPopupShowSeconds(subItem, + // item.subList); + } else { + this.scanPopupGetFocus(); + } + }) + }, + + getUnOpenCountResult(result) { + try { let that = this; - this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber + - "】已经完成盘点,是否要编辑盘点结果?", - res => { - if (res) { - this.currentEditItem = subItem; - this.$refs.countQtyEdit.openEditPopup(subItem, - item.subList); - // this.$refs.countQtyEdit.openEditPopupShowSeconds(subItem, - // item.subList); - } else { - this.scanPopupGetFocus(); + that.package = result.package; + that.label = result.label; + var item = this.detailSource.find(r => r.itemCode == that.package.itemCode); + if (item == undefined) { + this.$refs.comMessage.showQuestionMessage("没有物料【" + that.package.itemCode + + "】的盘点明细,是否继续盘点?", + res => { + if (res) { + that.scanByLabel(result); + } else { + this.scanPopupGetFocus(); + } + }) + } else { + let subItem = item.subList.find(item => { + if (item.packingNumber == that.label.packingNumber && + item.batch == that.label.batch && item.scaned == true) { + return item; } }) - }, - getUnOpenCountResult(result) { - try { - let that = this; - that.package = result.package; - that.label = result.label; - var item = this.detailSource.find(r => r.itemCode == that.package.itemCode); - if (item == undefined) { - this.$refs.comMessage.showQuestionMessage("没有物料【" + that.package.itemCode + - "】的盘点明细,是否继续盘点?", + if (subItem != undefined) { + this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber + + "】已经完成盘点,是否要编辑盘点结果?", res => { if (res) { - that.scanByLabel(result); + this.currentEditItem = subItem; + this.$refs.countQtyEdit.openEditPopup(subItem, + item.subList); } else { this.scanPopupGetFocus(); } }) } else { - let subItem = item.subList.find(item => { - if (item.packingNumber == that.label.packingNumber && - item.batch == that.label.batch && item.scaned == true) { - return item; - } - }) - - if (subItem != undefined) { - this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber + - "】已经完成盘点,是否要编辑盘点结果?", - res => { - if (res) { - this.currentEditItem = subItem; - this.$refs.countQtyEdit.openEditPopup(subItem, - item.subList); - } else { - this.scanPopupGetFocus(); - } - }) - } else { - that.scanByLabel(result); - } + that.scanByLabel(result); } - } catch (e) { - this.showErrorMessage(e.message) } - }, - - //明盘,按库存盘点 - scanByBalance(result) { - let that = this; - if (result.balance.length == 0) { - that.scanPopupLoseFocus() - that.$refs.comMessage.showQuestionMessage("该包装在来源库位[" + that.fromLocationCode + - "],未查找到库存,是否继续盘点?", - res => { - if (res) { - that.editInventoryStatus = true; - let item = that.package; - item.packingNumber = that.label.packingNumber; - item.qty = 0 - item.handleQty = Number(that.label.qty); - item.balanceQty = 0; - item.inventoryStatus = "OK"; - that.balance = item; - that.$refs.countQtyEdit.openEditPopupShowSeconds(item, - null); - } else { - //继续扫描 - that.scanPopupGetFocus(); - } - }) - } else if (result.balance.length == 1) { - this.countByBalance(result.balance[0]); - } else { - //有多条库存记录 - this.$refs.balanceSelect.openPopup(result.balance); - } - }, + } catch (e) { + this.showErrorMessage(e.message) + } + }, - //盲盘,按标签盘点 - scanByLabel(result) { - let that = this; + //明盘,按库存盘点 + scanByBalance(result) { + let that = this; + if (result.balance.length == 0) { that.scanPopupLoseFocus() - let item = that.package; - item.packingNumber = that.label.packingNumber; - item.qty = 0 - item.handleQty = Number(that.label.qty); - item.balanceQty = 0; - item.inventoryStatus = "OK"; - that.balance = item; - that.$refs.countQtyEdit.openEditPopupShowSeconds(item, - null); - }, + that.$refs.comMessage.showQuestionMessage("该包装在来源库位[" + that.fromLocationCode + + "],未查找到库存,是否继续盘点?", + res => { + if (res) { + that.editInventoryStatus = true; + let item = that.package; + item.packingNumber = that.label.packingNumber; + item.qty = 0 + item.handleQty = Number(that.label.qty); + item.balanceQty = 0; + item.inventoryStatus = "OK"; + that.balance = item; + that.$refs.countQtyEdit.openEditPopupShowSeconds(item, + null); + } else { + //继续扫描 + that.scanPopupGetFocus(); + } + }) + } else if (result.balance.length == 1) { + this.countByBalance(result.balance[0]); + } else { + //有多条库存记录 + this.$refs.balanceSelect.openPopup(result.balance); + } + }, - selectBalanceItem(balance) { - this.countByBalance(balance); - }, + //盲盘,按标签盘点 + scanByLabel(result) { + let that = this; + that.scanPopupLoseFocus() + let item = that.package; + item.packingNumber = that.label.packingNumber; + item.qty = 0 + item.handleQty = Number(that.label.qty); + item.balanceQty = 0; + item.inventoryStatus = "OK"; + that.balance = item; + that.$refs.countQtyEdit.openEditPopupShowSeconds(item, + null); + }, - countByBalance(balance) { - this.balance = balance; - // this.balance.qty = 0 - this.balance.handleQty = Number(this.label.qty); - this.balance.balanceQty = this.balance.qty; - this.balance.stdPackQty = this.package.stdPackQty; - this.balance.stdPackUnit = this.package.stdPackUnit; - this.$refs.countQtyEdit.openEditPopupShowSeconds(this.balance, - null); - }, + selectBalanceItem(balance) { + this.countByBalance(balance); + }, - editConfirm(qty, inventoryStatus, mode) { - let that = this; - //编辑 - if (mode == 'edit') { - this.currentEditItem.handleQty = qty; - this.currentEditItem.inventoryStatus = inventoryStatus; - } else { - //新增盘点 - //检查物料号是否存在 - var detail = that.detailSource.find(r => r.itemCode == that.label.itemCode); - if (detail == undefined) { - //物料号不存在,创建物料号数据添加到列表。设置为已经扫描 - that.addNewItemCodeToList(qty, inventoryStatus) - } else { - var itemEditInfo = detail.subList.find(item => { - if (item.packingNumber == that.label.packingNumber && - item.batch == that.label.batch && - item.inventoryStatus == inventoryStatus) { - return item; - } - }) + countByBalance(balance) { + this.balance = balance; + // this.balance.qty = 0 + this.balance.handleQty = Number(this.label.qty); + this.balance.balanceQty = this.balance.qty; + this.balance.stdPackQty = this.package.stdPackQty; + this.balance.stdPackUnit = this.package.stdPackUnit; + this.$refs.countQtyEdit.openEditPopupShowSeconds(this.balance, + null); + }, - if (itemEditInfo == undefined) { - //不在任务列表中,提示是否添加到列表 - that.addExistItemCodeToList(detail, qty, inventoryStatus); - } else { //已经扫描是否编辑 - itemEditInfo.scaned = true; - itemEditInfo.handleQty = qty; - itemEditInfo.inventoryStatus = inventoryStatus; - itemEditInfo.balanceQty = that.balance.qty; - itemEditInfo.stdPackQty = that.package.stdPackQty; - itemEditInfo.stdPackUnit = that.package.stdPackUnit; + editConfirm(qty, inventoryStatus, mode) { + let that = this; + //编辑 + if (mode == 'edit') { + this.currentEditItem.handleQty = qty; + this.currentEditItem.inventoryStatus = inventoryStatus; + } else { + //新增盘点 + //检查物料号是否存在 + var detail = that.detailSource.find(r => r.itemCode == that.label.itemCode); + if (detail == undefined) { + //物料号不存在,创建物料号数据添加到列表。设置为已经扫描 + that.addNewItemCodeToList(qty, inventoryStatus) + } else { + var itemEditInfo = detail.subList.find(item => { + if (item.packingNumber == that.label.packingNumber && + item.batch == that.label.batch && + item.inventoryStatus == inventoryStatus) { + return item; } - } + }) - setTimeout(r => { - this.calcHandleQty(); - this.scanPopupGetFocus(); - }, 100) + if (itemEditInfo == undefined) { + //不在任务列表中,提示是否添加到列表 + that.addExistItemCodeToList(detail, qty, inventoryStatus); + } else { //已经扫描是否编辑 + itemEditInfo.scaned = true; + itemEditInfo.handleQty = qty; + itemEditInfo.inventoryStatus = inventoryStatus; + itemEditInfo.balanceQty = that.balance.qty; + itemEditInfo.stdPackQty = that.package.stdPackQty; + itemEditInfo.stdPackUnit = that.package.stdPackUnit; + } } - }, - - openEditConfirm() { - - }, + setTimeout(r => { + this.calcHandleQty(); + this.scanPopupGetFocus(); + }, 100) + } - unOpenEditConfirm() { + }, - }, + openEditConfirm() { - editClose() { - this.scanPopupGetFocus(); - }, + }, - addNewItemCodeToList(qty, inventoryStatus) { - this.$refs.comMessage.showQuestionMessage("物料[" + this.package.itemCode + "]不在列表中,是否添加到列表?", - res => { - if (res) { - var item = this.createAddItemInfo(this.balance, this.package); - let newDetail = this.createAddDetailInfo(qty, inventoryStatus); // - item.subList.push(newDetail); - this.detailSource.push(item) - this.showMessage('添加成功'); - this.updateData() - this.scanPopupGetFocus(); - } - }) - }, + unOpenEditConfirm() { - addExistItemCodeToList(detail, qty, inventoryStatus) { - let that = this; - that.scanPopupLoseFocus(); - this.$refs.comMessage.showQuestionMessage("盘点结果不在明细列表中,是否添加到列表?", - res => { - if (res) { - // detail.qty = calc.add(qty, qty) - let newDetail = that.createAddDetailInfo(qty, inventoryStatus); // - detail.subList.push(newDetail); - this.showMessage('添加成功'); - that.updateData() - } - that.scanPopupGetFocus(); - }) - }, + }, - createAddItemInfo() { - let item = { - itemCode: this.package.itemCode, - itemName: this.package.itemName, - stdPackQty: this.package.stdPackQty, - stdPackUnit: this.package.stdPackUnit, - // qty: Number(qty), - qty: 0, - handleQty: 0, - uom: this.package.uom, - subList: [], - } - return item; - }, + editClose() { + this.scanPopupGetFocus(); + }, - //创建盘盈的明细 - createAddDetailInfo(qty, inventoryStatus) { - var detail = { - id: "0", //新增的明细 - scaned: true, - countDetailNumber: "", - ownerCode: this.balance.ownerCode, - packingNumber: this.package.number, - containerNumber: this.balance.containerNumber, - batch: this.package.batch, - inventoryStatus: inventoryStatus, - itemCode: this.package.itemCode, - itemName: this.package.itemName, - itemDesc1: this.package.itemDesc1, - itemDesc2: this.package.itemDesc2, - stdPackQty: this.package.stdPackQty, - stdPackUnit: this.package.stdPackUnit, - projectCode: "", - qty: 0, - handleQty: qty, - uom: this.package.uom, - number: this.jobContent.number, - remark: "", - countQty: qty, - balanceQty: this.balance.qty, - fromLocationCode: this.balance.locationCode, - creator: this.$store.state.user.id - } - return detail; - }, + addNewItemCodeToList(qty, inventoryStatus) { + this.$refs.comMessage.showQuestionMessage("物料[" + this.package.itemCode + "]不在列表中,是否添加到列表?", + res => { + if (res) { + var item = this.createAddItemInfo(this.balance, this.package); + let newDetail = this.createAddDetailInfo(qty, inventoryStatus); // + item.subList.push(newDetail); + this.detailSource.push(item) + this.showMessage('添加成功'); + this.updateData() + this.scanPopupGetFocus(); + } + }) + }, - scanLocationCode(location, code) { - this.$refs.comMessage.showQuestionMessage("是否把所有的目标库位都变成默认库位[" + code + "]", res => { - this.toLocationCode = code - this.detailSource.forEach(item => { - item.subList.forEach(detail => { - detail.toLocationCode = code - }) - }) + addExistItemCodeToList(detail, qty, inventoryStatus) { + let that = this; + that.scanPopupLoseFocus(); + this.$refs.comMessage.showQuestionMessage("盘点结果不在明细列表中,是否添加到列表?", + res => { + if (res) { + // detail.qty = calc.add(qty, qty) + let newDetail = that.createAddDetailInfo(qty, inventoryStatus); // + detail.subList.push(newDetail); + this.showMessage('添加成功'); + that.updateData() + } + that.scanPopupGetFocus(); }) + }, - }, + createAddItemInfo() { + let item = { + itemCode: this.package.itemCode, + itemName: this.package.itemName, + stdPackQty: this.package.stdPackQty, + stdPackUnit: this.package.stdPackUnit, + // qty: Number(qty), + qty: 0, + handleQty: 0, + uom: this.package.uom, + subList: [], + } + return item; + }, - getScanCount() { - var scanCount = 0; + //创建盘盈的明细 + createAddDetailInfo(qty, inventoryStatus) { + var detail = { + id: "0", //新增的明细 + scaned: true, + countDetailNumber: "", + ownerCode: this.balance.ownerCode, + packingNumber: this.package.number, + containerNumber: this.balance.containerNumber, + batch: this.package.batch, + inventoryStatus: inventoryStatus, + itemCode: this.package.itemCode, + itemName: this.package.itemName, + itemDesc1: this.package.itemDesc1, + itemDesc2: this.package.itemDesc2, + stdPackQty: this.package.stdPackQty, + stdPackUnit: this.package.stdPackUnit, + projectCode: "", + qty: 0, + handleQty: qty, + uom: this.package.uom, + number: this.jobContent.number, + remark: "", + countQty: qty, + balanceQty: this.balance.qty, + fromLocationCode: this.balance.locationCode, + creator: this.$store.state.user.id + } + return detail; + }, + + scanLocationCode(location, code) { + this.$refs.comMessage.showQuestionMessage("是否把所有的目标库位都变成默认库位[" + code + "]", res => { + this.toLocationCode = code this.detailSource.forEach(item => { item.subList.forEach(detail => { - if (detail.scaned) { - scanCount = scanCount + 1; - } + detail.toLocationCode = code }) }) - return scanCount; - }, + }) - getTotalCount() { - var totalCount = 0; - this.detailSource.forEach(item => { - item.subList.forEach(detail => { - totalCount = totalCount + 1; - }) + }, + + getScanCount() { + var scanCount = 0; + this.detailSource.forEach(item => { + item.subList.forEach(detail => { + if (detail.scaned) { + scanCount = scanCount + 1; + } }) - return totalCount; - }, + }) + return scanCount; + }, - commit() { - this.scanCount = this.getScanCount(); - - if (this.scanCount == this.getTotalCount()) { - this.submitJob(); - } else if (this.scanCount < this.getTotalCount()) { - //扫描数量小于任务数量,判断是否允许部分提交 - if (this.jobContent.allowPartialComplete == "TRUE") { - //提交 - this.$refs.comMessage.showQuestionMessage("已经扫描[" + this.scanCount + - "]总共[" + this - .getTotalCount() + "],是否把未扫描的盘点数量设置为0?", - res => { - if (res) { - this.detailSource.forEach(item => { - item.subList.forEach(detail => { - if (!detail.scaned) { - detail.countQty = 0; - } - }) + getTotalCount() { + var totalCount = 0; + this.detailSource.forEach(item => { + item.subList.forEach(detail => { + totalCount = totalCount + 1; + }) + }) + return totalCount; + }, + + commit() { + this.scanCount = this.getScanCount(); + + if (this.scanCount == this.getTotalCount()) { + this.submitJob(); + } else if (this.scanCount < this.getTotalCount()) { + //扫描数量小于任务数量,判断是否允许部分提交 + if (this.jobContent.allowPartialComplete == "TRUE") { + //提交 + this.$refs.comMessage.showQuestionMessage("已经扫描[" + this.scanCount + + "]总共[" + this + .getTotalCount() + "],是否把未扫描的盘点数量设置为0?", + res => { + if (res) { + this.detailSource.forEach(item => { + item.subList.forEach(detail => { + if (!detail.scaned) { + detail.countQty = 0; + } }) - this.submitJob(); - } - }); + }) + this.submitJob(); + } + }); - } else { - //不允许部分提交,提示 - this.$refs.comMessage.showErrorMessage('请完成扫描后,再进行提交
' + "已经扫描[" + this.scanCount + - "]总共[" + this - .getTotalCount() + "]", res => { - if (res) { - this.openScanPopup(); - } - }); - } + } else { + //不允许部分提交,提示 + this.$refs.comMessage.showErrorMessage('请完成扫描后,再进行提交
' + "已经扫描[" + this.scanCount + + "]总共[" + this + .getTotalCount() + "]", res => { + if (res) { + this.openScanPopup(); + } + }); } + } - }, + }, - submitJob() { - uni.showLoading({ - title: "提交中....", - mask: true - }); - var params = this.setParams() - console.log("提交参数", JSON.stringify(params)); - countJobSubmit(params).then(res => { - uni.hideLoading() - if (res.data) { - this.showCommitSuccessMessage("提交成功
生成盘点记录
" + res.data) - } else { - this.showErrorMessage("提交失败[" + res.msg + "]") - } - }).catch(error => { - uni.hideLoading() - this.showErrorMessage(error) - }) + submitJob() { + uni.showLoading({ + title: "提交中....", + mask: true + }); + var params = this.setParams() + console.log("提交参数", JSON.stringify(params)); + countJobSubmit(params).then(res => { + uni.hideLoading() + if (res.data) { + this.showCommitSuccessMessage("提交成功
生成盘点记录
" + res.data) + } else { + this.showErrorMessage("提交失败[" + res.msg + "]") + } + }).catch(error => { + uni.hideLoading() + this.showErrorMessage(error) + }) - }, + }, - setParams() { - var subList = [] - var creator = this.$store.state.user.id + setParams() { + var subList = [] + var creator = this.$store.state.user.id - this.detailSource.forEach(item => { - item.subList.forEach(detail => { - if (detail.scaned) { - detail.countQty = detail.handleQty; - } - subList.push(detail) - }) + this.detailSource.forEach(item => { + item.subList.forEach(detail => { + if (detail.scaned) { + detail.countQty = detail.handleQty; + } + subList.push(detail) }) + }) - this.jobContent.subList = subList - this.jobContent.creator = creator; - return this.jobContent; - }, + this.jobContent.subList = subList + this.jobContent.creator = creator; + return this.jobContent; + }, - showMessage(message) { - this.$refs.comMessage.showMessage(message, res => { - if (res) { - this.afterCloseMessage() - } - }); - }, - showErrorMessage(message) { - this.$refs.comMessage.showErrorMessage(message, res => { - if (res) { - this.afterCloseMessage() - } - }); - }, - - showScanMessage(message) { - this.$refs.comMessage.showScanMessage(message); - }, + showMessage(message) { + this.$refs.comMessage.showMessage(message, res => { + if (res) { + this.afterCloseMessage() + } + }); + }, + showErrorMessage(message) { + this.$refs.comMessage.showErrorMessage(message, res => { + if (res) { + this.afterCloseMessage() + } + }); + }, - afterCloseMessage() { - this.scanPopupGetFocus(); - }, + showScanMessage(message) { + this.$refs.comMessage.showScanMessage(message); + }, - closeScanMessage() { - this.scanPopupGetFocus(); - }, + afterCloseMessage() { + this.scanPopupGetFocus(); + }, - editItem(item) { - this.currentEditItem = item; - var detail = this.detailSource.find(r => r.itemCode == item.itemCode); - this.$refs.countQtyEdit.openEditPopup(item, - detail.subList); - }, + closeScanMessage() { + this.scanPopupGetFocus(); + }, - showCommitSuccessMessage(hint) { - this.$refs.comMessage.showSuccessMessage(hint, res => { - navigateBack(1); - }) - }, - getCountStageName(value) { - return getCountStageName(value) - }, - isOpenCount(value) { - return value == "TRUE" ? "明盘" : "盲盘" - } + editItem(item) { + this.currentEditItem = item; + var detail = this.detailSource.find(r => r.itemCode == item.itemCode); + this.$refs.countQtyEdit.openEditPopup(item, + detail.subList); + }, + showCommitSuccessMessage(hint) { + this.$refs.comMessage.showSuccessMessage(hint, res => { + navigateBack(1); + }) + }, + getCountStageName(value) { + return getCountStageName(value) + }, + isOpenCount(value) { + return value == "TRUE" ? "明盘" : "盲盘" } } + + }