优化
This commit is contained in:
@@ -182,6 +182,30 @@ test('discard confirmation is guarded against double submission', async () => {
|
||||
pending.resolve(); await Promise.all([first, second]); assert.equal(submits, 1)
|
||||
})
|
||||
|
||||
test('无精确箱唛对应的托盘必须填写实际数并按实点提交,不能超量或用空值代替零', async () => {
|
||||
let payload
|
||||
const { vm } = page({ confirmCargoDiscard: async (...args) => { payload = args }, listCargoDiscardTasks: async () => [] })
|
||||
vm.discardCurrent = { discardNo: 'CD-A' }
|
||||
vm.discardTask = { palletNo: 'P-A', status: 'PENDING', scanMode: 'PALLET', cartonMarks: [], skus: [{ itemId: 'sku', plannedPackages: 10, actualQuantityEditable: true }] }
|
||||
vm.discardPhotoReady = true; vm.discardPhotos = [{ fileId: '101' }]
|
||||
for (const value of ['', ' ', null, -1, 11, 1.5, 'abc']) {
|
||||
vm.discardActuals = { sku: value }; assert.equal(vm.canConfirmDiscard, false)
|
||||
}
|
||||
vm.discardActuals = { sku: '0' }; assert.equal(vm.canConfirmDiscard, true)
|
||||
vm.discardActuals = { sku: '6' }; assert.equal(vm.canConfirmDiscard, true)
|
||||
await vm.confirmDiscard()
|
||||
assert.equal(payload[0], 'CD-A'); assert.equal(payload[1], 'P-A')
|
||||
assert.deepEqual(payload[2], [{ itemId: 'sku', actualPackages: 6 }])
|
||||
})
|
||||
|
||||
test('无箱唛对应托盘扫码后实际数保持未填,必须由仓库实点填写', async () => {
|
||||
const { vm } = page({ resolveCargoDiscardPallet: async () => ({ discardNo: 'CD-A', palletNo: 'P-A', cartonMarks: [], scanMode: 'PALLET', skus: [{ itemId: 'sku', plannedPackages: 10, actualQuantityEditable: true }] }) })
|
||||
vm.discardCurrent = { discardNo: 'CD-A' }
|
||||
await vm.resolveDiscardPallet('P-A')
|
||||
assert.equal(vm.discardActuals.sku, '')
|
||||
assert.equal(vm.canConfirmDiscard, false)
|
||||
})
|
||||
|
||||
test('discard retry stays in the discard workflow instead of restoring an old outbound task', async () => {
|
||||
const { vm } = page(); const calls = []
|
||||
vm.discardCurrent = { discardNo: 'DISCARD' }; vm.discardPalletCode = 'PALLET'
|
||||
|
||||
Reference in New Issue
Block a user