|
|
@ -7,7 +7,7 @@ |
|
|
|
扫描箱码 |
|
|
|
<text class="fr" @click="closeScanPopup()">关闭</text> |
|
|
|
</view> |
|
|
|
<!-- <view class="uni-flex uni-row" style="align-items: center; |
|
|
|
<!-- <view class="uni-flex uni-row" style="align-items: center; |
|
|
|
background-color: #fff; |
|
|
|
margin-left: 20rpx; |
|
|
|
margin-right: 20rpx; |
|
|
@ -145,7 +145,7 @@ |
|
|
|
positionInfo: "请选择位置", |
|
|
|
positionList: [], |
|
|
|
defaultValueList: [], |
|
|
|
fromInventoryStatuses :"", |
|
|
|
fromInventoryStatuses: "", |
|
|
|
} |
|
|
|
}, |
|
|
|
created() { |
|
|
@ -157,8 +157,8 @@ |
|
|
|
this.scanOptions = getDetailEditRemoveOption(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
openScanPopup(content, jobcontent) { |
|
|
|
this.issueRecord = []; |
|
|
|
this.dataContent = content; |
|
|
@ -186,26 +186,26 @@ |
|
|
|
that.fromLocationList = that.getFromLocationList(); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
showBalanceSelect(items) { |
|
|
|
this.$refs.balanceSelect.openPopup(items); |
|
|
|
}, |
|
|
|
|
|
|
|
getFromLocationList() { |
|
|
|
let list = []; |
|
|
|
let location = this.dataContent.find(r => r.toLocationCode == this.toLocationCode); |
|
|
|
if (location != undefined) { |
|
|
|
this.dataContent.forEach(location => { |
|
|
|
location.Items.forEach(item => { |
|
|
|
item.Locations.forEach(f => { |
|
|
|
list.push(f.fromLocationCode) |
|
|
|
let item = list.find(l => l == f.fromLocationCode); |
|
|
|
if (item == undefined) { |
|
|
|
list.push(f.fromLocationCode) |
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
this.fromLocationCode = list[0]; |
|
|
|
return list; |
|
|
|
} else { |
|
|
|
this.$refs.comMessage.showErrorMessages('需求库位【' + this.toLocationCode + '】不存在', res => { |
|
|
|
this.toLocationCode = ''; |
|
|
|
}); |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
this.fromLocationCode = list[0]; |
|
|
|
return list; |
|
|
|
}, |
|
|
|
|
|
|
|
fromLocationUpdate(fromlocation) { |
|
|
@ -215,10 +215,78 @@ |
|
|
|
this.showErrorMessage('发料库位【' + fromlocation + '】不存在') |
|
|
|
} |
|
|
|
}, |
|
|
|
onScan(result) { |
|
|
|
onScan1(result) { |
|
|
|
try { |
|
|
|
let that = this; |
|
|
|
if (that.fromLocationCode == '') { |
|
|
|
that.showErrorMessage('请选择来源库位', res => { |
|
|
|
that.$refs.toLocationCombox.onFocus(); |
|
|
|
}); |
|
|
|
return; |
|
|
|
} |
|
|
|
let packageInfo = result.package; |
|
|
|
let itemCode = result.label.itemCode; |
|
|
|
let packingCode = result.label.packingNumber; |
|
|
|
let lot = result.label.batch; |
|
|
|
|
|
|
|
|
|
|
|
that.dataContent.forEach(l => { |
|
|
|
let item = l.Items.find(r => r.itemCode == itemCode); |
|
|
|
if (item == undefined) { |
|
|
|
continue; |
|
|
|
// that.showErrorMessage('未查找到零件【' + itemCode + '】的发料明细', |
|
|
|
// res => { |
|
|
|
// that.getfocus(); |
|
|
|
// } |
|
|
|
// ) |
|
|
|
// return; |
|
|
|
} else { |
|
|
|
//查找库存信息 |
|
|
|
uni.showLoading({ |
|
|
|
title: '加载中', |
|
|
|
mask: true |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
getBalanceByManagementPrecision(result.label, that.fromLocationCode, that |
|
|
|
.fromInventoryStatuses, |
|
|
|
balanceRes => { |
|
|
|
if (balanceRes.success) { |
|
|
|
if (balanceRes.data.list.length == 0) { |
|
|
|
this.showErrorMessage('在来源库位[' + this.fromLocationCode + |
|
|
|
'],未查找到该包装的库存记录', |
|
|
|
res => { |
|
|
|
this.packGetFocus(); |
|
|
|
}) |
|
|
|
} else if (balanceRes.data.list.length == 1) { |
|
|
|
let balance = balanceRes.data.list[0]; |
|
|
|
this.afterGetBalance(result.label, balance, packageInfo); |
|
|
|
} else { |
|
|
|
this.showBalanceSelect(balanceRes.data.list); |
|
|
|
} |
|
|
|
} else { |
|
|
|
this.showErrorMessage(balanceRes.message.message); |
|
|
|
} |
|
|
|
uni.hideLoading(); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} catch (e) { |
|
|
|
this.showErrorMessage(e.stack) |
|
|
|
uni.hideLoading(); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
onScan(result) { |
|
|
|
try { |
|
|
|
let that = this; |
|
|
|
if (that.fromLocationCode == '') { |
|
|
|
that.showErrorMessage('请选择来源库位', res => { |
|
|
|
that.$refs.toLocationCombox.onFocus(); |
|
|
@ -243,35 +311,37 @@ |
|
|
|
title: '加载中', |
|
|
|
mask: true |
|
|
|
}) |
|
|
|
getBalanceByManagementPrecision(result.label, that.fromLocationCode, that.fromInventoryStatuses, balanceRes => { |
|
|
|
if (balanceRes.success) { |
|
|
|
if (balanceRes.data.list.length == 0) { |
|
|
|
this.showErrorMessage('在来源库位[' + this.fromLocationCode + '],未查找到该包装的库存记录', |
|
|
|
res => { |
|
|
|
this.packGetFocus(); |
|
|
|
}) |
|
|
|
} else if (balanceRes.data.list.length == 1) { |
|
|
|
let balance = balanceRes.data.list[0]; |
|
|
|
this.afterGetBalance(result.label, balance,packageInfo); |
|
|
|
getBalanceByManagementPrecision(result.label, that.fromLocationCode, that.fromInventoryStatuses, |
|
|
|
balanceRes => { |
|
|
|
if (balanceRes.success) { |
|
|
|
if (balanceRes.data.list.length == 0) { |
|
|
|
this.showErrorMessage('在来源库位[' + this.fromLocationCode + '],未查找到该包装的库存记录', |
|
|
|
res => { |
|
|
|
this.packGetFocus(); |
|
|
|
}) |
|
|
|
} else if (balanceRes.data.list.length == 1) { |
|
|
|
let balance = balanceRes.data.list[0]; |
|
|
|
this.afterGetBalance(result.label, balance, packageInfo); |
|
|
|
} else { |
|
|
|
this.showBalanceSelect(balanceRes.data.list); |
|
|
|
} |
|
|
|
} else { |
|
|
|
this.showBalanceSelect(balanceRes.data.list); |
|
|
|
this.showErrorMessage(balanceRes.message.message); |
|
|
|
} |
|
|
|
} else { |
|
|
|
this.showErrorMessage(balanceRes.message.message); |
|
|
|
} |
|
|
|
uni.hideLoading(); |
|
|
|
}); |
|
|
|
uni.hideLoading(); |
|
|
|
}); |
|
|
|
} |
|
|
|
} catch (e) { |
|
|
|
this.showErrorMessage(e.stack) |
|
|
|
uni.hideLoading(); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
selectBalanceItem(balance) { |
|
|
|
this.afterGetBalance(this.label, balance); |
|
|
|
}, |
|
|
|
|
|
|
|
afterGetBalance(label, balance,packageInfo) { |
|
|
|
afterGetBalance(label, balance, packageInfo) { |
|
|
|
try { |
|
|
|
let that = this; |
|
|
|
let itemCode = label.itemCode; |
|
|
@ -292,11 +362,11 @@ |
|
|
|
if (batch.Recommends.length > 0) { |
|
|
|
let recommend = batch.Recommends.find(r => r.packingNumber == packingCode); |
|
|
|
if (recommend != undefined) { |
|
|
|
that.addRecord(batch, label, balance,packageInfo) |
|
|
|
that.addRecord(batch, label, balance, packageInfo) |
|
|
|
} else { |
|
|
|
//允许修改箱码 |
|
|
|
if (this.jobContent.allowModifyPackingNumber == 'TRUE') { |
|
|
|
that.addRecord(batch, label, balance,packageInfo); |
|
|
|
that.addRecord(batch, label, balance, packageInfo); |
|
|
|
} else { |
|
|
|
that.showErrorMessage('未查找到该箱码【' + packingCode + '】的明细', |
|
|
|
res => { |
|
|
@ -306,7 +376,7 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
that.addRecord(batch, label, balance,packageInfo) |
|
|
|
that.addRecord(batch, label, balance, packageInfo) |
|
|
|
} |
|
|
|
} else { |
|
|
|
that.showErrorMessage('箱码【' + packingCode + '】已经扫描,请继续扫描下一箱', |
|
|
@ -361,14 +431,14 @@ |
|
|
|
return batch; |
|
|
|
}, |
|
|
|
|
|
|
|
creatRecord(label, balance,packageInfo) { |
|
|
|
creatRecord(label, balance, packageInfo) { |
|
|
|
balance.stdPackQty = packageInfo.stdPackQty |
|
|
|
balance.stdPackUnit = packageInfo.stdPackUnit |
|
|
|
let record = { |
|
|
|
itemCode: label.itemCode, |
|
|
|
packingNumber: label.packingNumber, |
|
|
|
batch: label.batch, |
|
|
|
qty: Number(label.qty)>Number(balance.qty)?Number(balance.qty):Number(label.qty), |
|
|
|
qty: Number(label.qty) > Number(balance.qty) ? Number(balance.qty) : Number(label.qty), |
|
|
|
uom: balance.uom, |
|
|
|
inventoryStatus: balance.inventoryStatus, |
|
|
|
balance: balance, |
|
|
@ -384,10 +454,11 @@ |
|
|
|
handleQty += Number(res.qty) |
|
|
|
}) |
|
|
|
batch.handleQty = handleQty; |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
addRecord(batch, label, balance,packageInfo) { |
|
|
|
let record = this.creatRecord(label, balance,packageInfo); |
|
|
|
addRecord(batch, label, balance, packageInfo) { |
|
|
|
let record = this.creatRecord(label, balance, packageInfo); |
|
|
|
batch.Records.push(record); |
|
|
|
this.issueRecord.unshift(record) |
|
|
|
this.calcBatchHandleQty(batch); |
|
|
|