test(transfer): prepare source snapshot before foreign relabel ownership check

This commit is contained in:
2026-10-19 15:19:09 +08:00
parent c8608d50ba
commit eb167347f6
@@ -513,12 +513,19 @@ class WarehouseTransferServiceTest {
verifyNoInteractions(transfers); verifyNoInteractions(transfers);
} }
/** 来源箱快照先通过占用校验,再单独拒绝草稿中的外部换标箱。 */
@Test @Test
void submittingOldDraftRechecksRelabelCartonOwnership() { void submittingOldDraftRechecksRelabelCartonOwnership() {
var transfer = transfer(WarehouseTransferService.DRAFT); var transfer = transfer(WarehouseTransferService.DRAFT);
transfer.setOperatingWarehouseId("WH-1"); transfer.setOperatingWarehouseId("WH-1");
transfer.setInboundCode("IN-1"); transfer.setInboundCode("IN-1");
transfer.setNeedRelabel(true); transfer.setNeedRelabel(true);
transfer.setPackageCount(1);
var selected = new WarehouseTransferCarton();
selected.setId(51L); selected.setCustomerCartonMark("CURRENT-BOX");
when(transferCartons.listOrder("TENANT-A", transfer.getId())).thenReturn(List.of(selected));
when(inboundSnapshots.sourceCartons("TENANT-A", "WH-1", "IN-1"))
.thenReturn(List.of(new InboundSnapshotMapper.SourceCarton("CURRENT-BOX", "SKU-1", null, null, null, null, null)));
when(transfers.lockNo("TENANT-A", "WTR-1")).thenReturn(transfer); when(transfers.lockNo("TENANT-A", "WTR-1")).thenReturn(transfer);
var binding = new com.baiyue.lastleg.transfer.entity.WarehouseTransferRelabelBinding(); var binding = new com.baiyue.lastleg.transfer.entity.WarehouseTransferRelabelBinding();
binding.setCustomerCartonMark("FOREIGN-BOX"); binding.setCustomerCartonMark("FOREIGN-BOX");