优化
This commit is contained in:
@@ -66,7 +66,7 @@ test('outbound partial pick submits the selected carton and distinguishes shared
|
||||
assert.deepEqual(outboundPickPayload({ outboundPalletItemId: '13' }, { inventoryPositionId: '23' }, 2).cartonMarks, [])
|
||||
const page = await read('../src/pages/outbound/outbound.vue')
|
||||
assert.match(page, /listOutboundTasks\('PENDING'\)/)
|
||||
assert.match(page, /:key="item.outboundPalletItemId"/)
|
||||
assert.match(page, /:key="item.displayKey \|\| item.outboundPalletItemId"/)
|
||||
assert.match(page, /outboundPickPayload\(this.selectedItem, this.selectedPosition, this.packages, this.selectedScanCode\)/)
|
||||
assert.match(page, /pickOutboundTask\(this.current.taskNo, \{ \.\.\.payload, idempotencyKey: key.value \}\)/)
|
||||
assert.match(page, /pickOutboundPallet\(this.current.taskNo, code, \{ idempotencyKey: key.value \}\)/)
|
||||
@@ -78,7 +78,7 @@ test('return outbound preserves its task type and only permits pallet scans for
|
||||
assert.equal(task.outboundType, 'RETURN_OUTBOUND')
|
||||
const page = await read('../src/pages/outbound/outbound.vue')
|
||||
assert.match(page, /this\.current\?\.outboundType === 'RETURN_OUTBOUND' && item\.palletNo/)
|
||||
assert.match(page, /整托出库请扫描托盘码/)
|
||||
assert.match(page, /整托出库请扫描托盘号/)
|
||||
const item = { outboundPalletItemId: '12', skuCode: 'SKU-A' }
|
||||
const position = { inventoryPositionId: '', cartonMark: 'RC-1' }
|
||||
assert.deepEqual(outboundPickPayload(item, position, 1, 'SKU-A'), {
|
||||
|
||||
@@ -18,6 +18,32 @@ function page(overrides = {}) {
|
||||
return { vm, calls }
|
||||
}
|
||||
|
||||
test('return pallet rows sum carton counts without changing raw pick lines', () => {
|
||||
const { vm } = page()
|
||||
const cartons = Array.from({ length: 5 }, (_, index) => ({ outboundPalletItemId: index + 1, palletNo: 'PALLET', plannedPackages: 1, pickedPackages: index < 3 ? 1 : 0, positions: [] }))
|
||||
const loose = { outboundPalletItemId: 6, palletNo: '', plannedPackages: 2, pickedPackages: 0, positions: [] }
|
||||
vm.current = { outboundType: 'RETURN_OUTBOUND', items: [...cartons, loose, { outboundPalletItemId: 7, palletNo: 'OTHER', plannedPackages: 2, pickedPackages: 1, positions: [] }] }
|
||||
const before = JSON.stringify(vm.current.items)
|
||||
assert.equal(vm.displayItems.length, 3)
|
||||
assert.equal(vm.displayItems[0].plannedPackages, 5)
|
||||
assert.equal(vm.displayItems[0].pickedPackages, 3)
|
||||
assert.equal(vm.displayItems[1], loose)
|
||||
assert.equal(vm.displayItems[2].palletNo, 'OTHER')
|
||||
assert.equal(JSON.stringify(vm.current.items), before)
|
||||
assert.match(vm.scanLabel, /扫描托盘号/)
|
||||
assert.match(vm.scanPlaceholder, /扫描托盘号/)
|
||||
cartons.forEach(item => { item.pickedPackages = 1 })
|
||||
assert.equal(vm.displayItems[0].pickedPackages, 5)
|
||||
})
|
||||
|
||||
test('other outbound types preserve individual selectable lines', () => {
|
||||
const { vm } = page()
|
||||
const items = [{ palletNo: 'PALLET', plannedPackages: 1, pickedPackages: 0, positions: [] }, { palletNo: 'PALLET', plannedPackages: 2, pickedPackages: 0, positions: [] }]
|
||||
vm.current = { outboundType: 'NORMAL', items }
|
||||
assert.equal(vm.displayItems, items)
|
||||
assert.equal(vm.hasReturnPallet, false)
|
||||
})
|
||||
|
||||
test('completed and cancelled tasks cannot submit pallet picking or task completion', async () => {
|
||||
for (const status of ['COMPLETED', 'CANCELLED']) {
|
||||
const { vm, calls } = page()
|
||||
|
||||
Reference in New Issue
Block a user