Merge remote-tracking branch 'origin/test' into dev

# Conflicts:
#	lastleg-service/src/main/java/com/baiyue/lastleg/inboundplan/pda/gateway/WarehouseResourceGateway.java
#	scripts/admin-test-env-modules/phase3-container-documents-contract.test.mjs
#	scripts/admin-test-env-modules/phase4-overseas-pda.mjs
This commit is contained in:
2026-09-09 03:00:48 +08:00
20 changed files with 383 additions and 290 deletions
@@ -33,12 +33,8 @@ test('PDA module covers the container-number receiving contract and excludes out
assert.match(source, /inbound-plans\/container-preview/)
assert.match(source, /snapshotVersion: Number\(preview\.snapshotVersion\)/)
assert.match(source, /snapshotHash: String\(preview\.snapshotHash\)/)
assert.match(source, /reservedPalletsByInbound/)
assert.match(source, /warehouseResourceLockId/)
assert.doesNotMatch(source, /reservedCoverage/)
assert.match(source, /convertedInboundCodes\.size !== inboundCodes/)
assert.match(source, /preferredProducer\?\.receivingPalletsByInbound\?\.\[inbound\.inboundCode\]/)
assert.match(source, /复用整柜转换预留托盘/)
assert.match(source, /rememberGeneratedPlans\(context, plans\)/)
assert.match(source, /resolveGeneratedPallet\(context, inbound\)/)
assert.match(source, /同键异载荷冲突/)
assert.match(source, /跨柜切换锁返回409/)
assert.match(source, /item\.operable === true && item\.allPlansReady === true/)
@@ -62,11 +58,14 @@ test('PDA module covers the container-number receiving contract and excludes out
assert.doesNotMatch(source, /requestOverseas\('POST', '\/api\/platform\/v1\/warehouse-admin'/)
assert.doesNotMatch(source, /requestOverseas\('GET', '\/api\/platform\/v1\/warehouse-admin'/)
assert.match(source, /receiving-containers\/current\/pallets\/resolve/)
assert.match(source, /const locationCode = resolvedPallet\.data\?\.locationCode \|\| pallet\.locationCode/)
assert.match(source, /overseasWarehouseId, password/)
assert.match(source, /inbound\?\.overseasWarehouseId/)
assert.doesNotMatch(source, /const warehouseId = id\(inbound\?\.destinationWarehouseId\)/)
assert.match(source, /目的仓 .* 不得代替物理仓/)
assert.match(source, /禁止在PDA收货时临时新建脱离计划的托盘/)
assert.match(source, /rememberGeneratedPlans\(context, plans\)/)
assert.match(source, /resolveGeneratedPallet\(context, inbound\)/)
assert.match(source, /generatedPalletsByInbound/)
assert.doesNotMatch(source, /创建当前柜实收托盘|创建当前柜实收库位|async function createPallet/)
assert.match(source, /retained as acceptance evidence/)
assert.match(source, /preferredProducer\?\.cartonMarks\?\.length/)
assert.match(source, /const cartonCandidates =/)
@@ -169,7 +168,7 @@ test('PDA receiving lifecycle is ordered from candidate claim through photos, mo
const orderedTokens = [
"'查询当前客户待收柜号'", "'选择柜号并建立WAIT_SIGN会话'",
'uploadPhotos(context, token)', "'绑定车牌封签开柜三角色照片并签收'",
"`解析${inbound.destinationType}实物托盘`", 'receiveFba(context, token',
'resolveGeneratedPallet(context, inbound)', "`解析${inbound.destinationType}实物托盘`", 'receiveFba(context, token',
'receiveOverseas(context, token', "'回查柜内逐入仓码实收进度'",
"'完成当前柜并写入库存与卸柜事件'", "'完成后current返回404正常空态'",
]
@@ -183,7 +182,7 @@ test('PDA receiving lifecycle is ordered from candidate claim through photos, mo
'/current/receipts/bulk', '/current/receipts/carton',
"'FBA模式硬拒绝逐箱收货'", "'OVERSEAS模式硬拒绝批量收货'",
'PHOTO_ROLES.every', "finalStatus === 'COMPLETED'", 'completedContainers.push',
'completedContainerFacts.push', 'expectedPalletCost', 'physicalPallets', '完成入库后读取托盘计费单价',
'completedContainerFacts.push', 'expectedPalletCost', 'physicalPallets', 'unitPrice',
]) assert.ok(source.includes(token), token)
})