fix(warehouse-overseas): keep confirmed pallet locks active

This commit is contained in:
2026-09-09 00:11:46 +08:00
parent 93704a24ce
commit cf8053b7ce
4 changed files with 45 additions and 7 deletions
@@ -148,9 +148,6 @@ public class WarehousePalletBatchService {
} else if (!Objects.equals(binding.getPalletId(), item.getPalletId())) {
throw conflict("Inbound plan pallet business key is already bound to another pallet");
}
if (lockRecords.close(lock, "CONFIRMED") != 1) {
throw conflict("Inbound plan pallet reservation changed concurrently");
}
item.setStatus("CONFIRMED");
item.setUpdatedAt(LocalDateTime.now());
items.updateById(item);
@@ -15,7 +15,7 @@ paths:
/internal/v1/warehouse-pallet-batches/confirm:
post:
summary: 确认Lastleg已持久化托盘快照并建立业务绑定
description: 仅RESERVED可确认;commandKey幂等作用域为(warehouseId,batchKey,commandKey),无需全局唯一;同作用域同载荷重复确认返回同一结果,不生成新托盘或资源锁。
description: 仅RESERVED可确认;commandKey幂等作用域为(warehouseId,batchKey,commandKey),无需全局唯一;同作用域同载荷重复确认返回同一结果,不生成新托盘或资源锁。确认只固化批次和业务绑定,资源锁保持ACTIVE供后续真实履约release或scrap。
security: [{ internalServiceToken: [] }]
requestBody: { required: true, content: { application/json: { schema: { $ref: '#/components/schemas/ConfirmRequest' } } } }
responses: