fix(overseas-pda): localize workflow errors
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import test from 'node:test'
|
||||
import assert from 'node:assert/strict'
|
||||
import { isNoCurrentReceiving, isReceivingConflict, normalizeReceivingCandidate, normalizeReceivingSession, RECEIVING_PHOTO_ROLES } from '../src/api/receiving-adapter.js'
|
||||
import { isNoCurrentReceiving, isReceivingConflict, normalizeReceivingCandidate, normalizeReceivingSession, RECEIVING_PHOTO_ROLES, toReceivingError } from '../src/api/receiving-adapter.js'
|
||||
|
||||
test('receiving adapter preserves the three signed photo roles in workflow order', () => {
|
||||
const snowflakeFileId = '2092476334483931138'
|
||||
@@ -27,3 +27,29 @@ test('receiving adapter exposes calculable candidate facts and workflow errors',
|
||||
assert.equal(isNoCurrentReceiving({ code: 404 }), true)
|
||||
assert.equal(isReceivingConflict({ code: 'B0409' }), true)
|
||||
})
|
||||
|
||||
test('unusable warehouse pallet error is actionable Chinese and retains diagnostics', () => {
|
||||
const mapped = toReceivingError({
|
||||
code: 'S0503',
|
||||
message: 'Warehouse pallet service returned no usable response',
|
||||
requestId: '4dd3028c-9112-429d-a9d2-4f71233c5c64',
|
||||
traceId: 'c01eeddb77afc5c018828c3cb8ccc1ec'
|
||||
}, '校验托盘失败')
|
||||
assert.equal(mapped.message, '该托盘当前不可用于收货,请更换可用托盘或联系管理员检查托盘状态')
|
||||
assert.equal(mapped.code, 'S0503')
|
||||
assert.equal(mapped.requestId, '4dd3028c-9112-429d-a9d2-4f71233c5c64')
|
||||
assert.equal(mapped.traceId, 'c01eeddb77afc5c018828c3cb8ccc1ec')
|
||||
|
||||
const occupied = toReceivingError({
|
||||
code: 'A0409',
|
||||
message: 'Pallet is not idle',
|
||||
requestId: 'occupied-request',
|
||||
traceId: 'occupied-trace'
|
||||
})
|
||||
assert.equal(occupied.message, '该托盘已被占用,当前不可用于收货,请更换可用托盘')
|
||||
assert.equal(occupied.requestId, 'occupied-request')
|
||||
assert.equal(occupied.traceId, 'occupied-trace')
|
||||
|
||||
const unknown = toReceivingError({ code: 'S0503', message: 'Another warehouse failure' }, '校验托盘失败')
|
||||
assert.equal(unknown.message, 'Another warehouse failure')
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user