|
|
@ -62,11 +62,15 @@ |
|
|
|
getPackingNumberAndBatchByList, |
|
|
|
deepCopyData |
|
|
|
} from '@/common/basic.js'; |
|
|
|
|
|
|
|
|
|
|
|
import { |
|
|
|
calc |
|
|
|
} from '@/common/calc.js'; |
|
|
|
|
|
|
|
import { |
|
|
|
Decimal |
|
|
|
} from 'decimal.js'; //引入 |
|
|
|
|
|
|
|
import { |
|
|
|
getDirectoryItemArray |
|
|
|
} from '@/common/directory.js'; |
|
|
@ -168,7 +172,7 @@ |
|
|
|
this.$refs.scanPopup.openScanPopup(isEditPosition); |
|
|
|
}, |
|
|
|
|
|
|
|
async getScanResult(result, param) { |
|
|
|
async getScanResult(result, param) { |
|
|
|
this.positionInfo = param.positionInfo; |
|
|
|
this.workshopCode = param.workshopCode; |
|
|
|
this.productionLineCode = param.productionLineCode; |
|
|
@ -186,30 +190,30 @@ |
|
|
|
|
|
|
|
if (item == undefined) { |
|
|
|
var filters = [] |
|
|
|
filters.push({ |
|
|
|
column: "itemCode", |
|
|
|
action: "==", |
|
|
|
value: label.itemCode |
|
|
|
}) |
|
|
|
filters.push({ |
|
|
|
column: "locationCode", |
|
|
|
action: "==", |
|
|
|
value: this.rawLocationCode |
|
|
|
}) |
|
|
|
|
|
|
|
var params = { |
|
|
|
filters: filters, |
|
|
|
pageNo: 1, |
|
|
|
pageSize: 100, |
|
|
|
} |
|
|
|
var isCheckItemCode = await getBalanceByFilter(params); |
|
|
|
if(isCheckItemCode.data==null||isCheckItemCode.data.list==0){ |
|
|
|
filters.push({ |
|
|
|
column: "itemCode", |
|
|
|
action: "==", |
|
|
|
value: label.itemCode |
|
|
|
}) |
|
|
|
filters.push({ |
|
|
|
column: "locationCode", |
|
|
|
action: "==", |
|
|
|
value: this.rawLocationCode |
|
|
|
}) |
|
|
|
|
|
|
|
var params = { |
|
|
|
filters: filters, |
|
|
|
pageNo: 1, |
|
|
|
pageSize: 100, |
|
|
|
} |
|
|
|
var isCheckItemCode = await getBalanceByFilter(params); |
|
|
|
if (isCheckItemCode.data == null || isCheckItemCode.data.list == 0) { |
|
|
|
this.showErrorMessage("未查询到物料号[" + label.itemCode + "]" + |
|
|
|
"库位[" + this.rawLocationCode + "]的信息") |
|
|
|
return |
|
|
|
"库位[" + this.rawLocationCode + "]的信息") |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var itemp = this.createItemInfo(label, pack); |
|
|
|
let newDetail = this.createDetailInfo(label, pack); |
|
|
|
newDetail.toLocationCode = "HOLD"; |
|
|
@ -247,8 +251,8 @@ |
|
|
|
itemName: pack.itemName, |
|
|
|
stdPackQty: pack.stdPackQty, |
|
|
|
stdPackUnit: pack.stdPackUnit, |
|
|
|
qty: Number(label.qty), |
|
|
|
handleQty: 0, |
|
|
|
qty: new Decimal(label.qty).toNumber(), |
|
|
|
handleQty: new Decimal(0).toNumber(), |
|
|
|
uom: pack.uom, |
|
|
|
subList: [] |
|
|
|
} |
|
|
@ -256,11 +260,10 @@ |
|
|
|
}, |
|
|
|
|
|
|
|
createDetailInfo(label, pack) { |
|
|
|
let detail = {}; |
|
|
|
Object.assign(detail, label) |
|
|
|
let detail = deepCopyData(label); |
|
|
|
detail.scaned = true; |
|
|
|
detail.qty = Number(label.qty); |
|
|
|
detail.handleQty = 0; |
|
|
|
detail.qty = new Decimal(label.qty).toNumber(); |
|
|
|
detail.handleQty = new Decimal(label.qty).toNumber(); |
|
|
|
detail.inventoryStatus = "OK" |
|
|
|
detail.stdPackQty = pack.stdPackQty; |
|
|
|
detail.stdPackUnit = pack.stdPackUnit; |
|
|
@ -273,10 +276,10 @@ |
|
|
|
|
|
|
|
calcHandleQty() { |
|
|
|
for (let item of this.detailSource) { |
|
|
|
item.qty = 0; |
|
|
|
item.handleQty = new Decimal(0).toNumber(); |
|
|
|
for (let detail of item.subList) { |
|
|
|
if (detail != undefined) { |
|
|
|
item.qty = calc.add(item.qty,detail.qty) |
|
|
|
item.handleQty = calc.add(item.handleQty, detail.handleQty) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -361,7 +364,7 @@ |
|
|
|
} |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
setFromPrecisionStrategParams() { |
|
|
|
var itemList = [] |
|
|
|
this.detailSource.forEach(item => { |
|
|
@ -381,13 +384,13 @@ |
|
|
|
} |
|
|
|
itemList.push(result) |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
return itemList; |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
setToPrecisionStrategParams() { |
|
|
|
var itemList = [] |
|
|
|
this.detailSource.forEach(item => { |
|
|
@ -407,7 +410,7 @@ |
|
|
|
} |
|
|
|
itemList.push(result) |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
@ -421,35 +424,37 @@ |
|
|
|
item.subList.forEach(detail => { |
|
|
|
if (detail.scaned) { |
|
|
|
var submitItem = deepCopyData(detail) |
|
|
|
var fromInfo = getPackingNumberAndBatchByList(this.fromManagementList, detail.itemCode, |
|
|
|
var fromInfo = getPackingNumberAndBatchByList(this.fromManagementList, detail |
|
|
|
.itemCode, |
|
|
|
detail.packingNumber, detail.fromLocationCode, detail.batch); |
|
|
|
var toInfo = getPackingNumberAndBatchByList(this.fromManagementList, detail.itemCode, |
|
|
|
var toInfo = getPackingNumberAndBatchByList(this.fromManagementList, detail |
|
|
|
.itemCode, |
|
|
|
detail.packingNumber, detail.toLocationCode, detail.batch); |
|
|
|
|
|
|
|
|
|
|
|
submitItem.itemCode = detail.itemCode; |
|
|
|
submitItem.itemName = detail.package.itemName; |
|
|
|
submitItem.itemDesc1 = detail.package.itemDesc1; |
|
|
|
submitItem.itemDesc2 = detail.package.itemDesc2; |
|
|
|
|
|
|
|
|
|
|
|
submitItem.inventoryStatus = detail.inventoryStatus; |
|
|
|
|
|
|
|
|
|
|
|
submitItem.fromPackingNumber = fromInfo.packingNumber; |
|
|
|
submitItem.toPackingNumber = toInfo.packingNumber; |
|
|
|
|
|
|
|
|
|
|
|
submitItem.fromContainerNumber = detail.containerNumber; |
|
|
|
submitItem.toContainerNumber = detail.containerNumber |
|
|
|
|
|
|
|
|
|
|
|
submitItem.fromBatch = fromInfo.batch; |
|
|
|
submitItem.toBatch = toInfo.batch; |
|
|
|
|
|
|
|
|
|
|
|
submitItem.fromLocationCode = detail.fromLocationCode; |
|
|
|
submitItem.toLocationCode = detail.toLocationCode; |
|
|
|
|
|
|
|
|
|
|
|
submitItem.productionlineCode = this.productionLineCode; |
|
|
|
submitItem.workStationCode = this.workStationCode; |
|
|
|
|
|
|
|
submitItem.qty = detail.handleQty!=0?detail.handleQty:detail.qty; |
|
|
|
|
|
|
|
|
|
|
|
submitItem.qty = detail.handleQty; |
|
|
|
|
|
|
|
subList.push(submitItem) |
|
|
|
} |
|
|
|
}) |
|
|
|