This commit is contained in:
2026-08-31 13:02:08 +08:00
parent e22c671de4
commit a831a594a5
4 changed files with 9 additions and 7 deletions
@@ -108,7 +108,7 @@ test('only requires sender for pickup and receiver for a private destination', (
assert.ok(validateFirstLegOrderDraft(privateDraft).includes('请填写收件人姓名'))
})
test('requires FBA warehouse and cargo-level shipment, reference, SKU and UPC fields', () => {
test('requires FBA warehouse and cargo-level shipment, reference and SKU while keeping UPC optional', () => {
const draft = validDraft()
draft.referenceNo = ''
draft.amazonWarehouseCode = ''
@@ -121,7 +121,7 @@ test('requires FBA warehouse and cargo-level shipment, reference, SKU and UPC fi
const errors = validateFirstLegOrderDraft(draft)
assert.ok(errors.includes('FBA 订单请填写 Amazon 仓库编码'))
assert.ok(errors.includes('第 1 条货物缺少客户 SKU'))
assert.ok(errors.includes('第 1 条货物缺少 UPC'))
assert.ok(!errors.includes('第 1 条货物缺少 UPC'))
assert.ok(errors.includes('第 1 条货物缺少货件编号'))
assert.ok(errors.includes('第 1 条货物缺少跟踪编号'))
})
@@ -122,7 +122,6 @@ export function validateFirstLegOrderDraft(draft: FirstLegOrderDraft) {
if (!item.cargoNameCn.trim()) errors.push(`${line}缺少中文品名`)
if (!item.packageType.trim()) errors.push(`${line}缺少包装类型`)
if (draft.destinationType === 'FBA' && !item.sku.trim()) errors.push(`${line}缺少客户 SKU`)
if (draft.destinationType === 'FBA' && !item.upc.trim()) errors.push(`${line}缺少 UPC`)
if (draft.destinationType === 'FBA' && !item.shipmentId.trim()) errors.push(`${line}缺少货件编号`)
if (draft.destinationType === 'FBA' && !item.referenceId.trim()) errors.push(`${line}缺少跟踪编号`)
if (!Number.isInteger(item.pieces) || item.pieces <= 0) errors.push(`${line}件数必须为正整数`)