贴标申请,仓储转运
This commit is contained in:
+32
@@ -569,6 +569,38 @@ class RelabelApplicationServiceTest {
|
||||
assertEquals("COMPLETED", order.getRelabelStatus());
|
||||
}
|
||||
|
||||
@Test
|
||||
void zeroFeeCompletionPersistsFulfillmentForBothOutboundRoutes() {
|
||||
for (String route : List.of("PRE_DISPATCH_CREATED", "OUTBOUND_CREATED")) {
|
||||
RelabelApplication app = application(11L, "FBR-ZERO", "10001", "key", "hash", RelabelApplicationService.READY_FOR_OUTBOUND);
|
||||
app.setLastlegOrderId(21L);
|
||||
app.setWalletStatus("NOT_REQUIRED");
|
||||
app.setChargeAmount(BigDecimal.ZERO);
|
||||
app.setFulfillmentStatus(route);
|
||||
if ("OUTBOUND_CREATED".equals(route)) app.setOutboundOrderNo("OUT-ZERO");
|
||||
LastlegOrder order = order(21L, "10001", "LMO-ZERO", "PROCESSING");
|
||||
order.setOrderType("RETURN_RELABEL");
|
||||
order.setRelabelOrderNo(app.getRelabelNo());
|
||||
when(applications.lockNo("10001", app.getRelabelNo())).thenReturn(app);
|
||||
when(orders.selectById(21L)).thenReturn(order);
|
||||
stubDetail(app);
|
||||
List<String> persistedFulfillment = new java.util.ArrayList<>();
|
||||
org.mockito.Mockito.doAnswer(invocation -> {
|
||||
RelabelApplication saved = invocation.getArgument(0);
|
||||
persistedFulfillment.add(saved.getFulfillmentStatus());
|
||||
return 1;
|
||||
}).when(applications).updateById(any(RelabelApplication.class));
|
||||
|
||||
service.changeStatus("10001", app.getRelabelNo(), "operator-2",
|
||||
new RelabelRequests.ChangeStatus("COMPLETED", "finished"));
|
||||
|
||||
assertEquals("OUTBOUNDED", persistedFulfillment.get(persistedFulfillment.size() - 1), route);
|
||||
}
|
||||
verify(feeSources, never()).publishApproved(any(), any(), any());
|
||||
verify(walletCommands, never()).publish(any(), anyLong(), any(), any(), any(), any(), anyLong());
|
||||
verify(inventoryCommands, never()).release(any(), any(), any());
|
||||
}
|
||||
|
||||
@Test
|
||||
void completingEarlierReturnRelabelDoesNotOverwriteLaterApplicationStatus() {
|
||||
RelabelApplication application = application(11L, "FBR-FIRST", "10001", "key-1", "hash", RelabelApplicationService.READY_FOR_OUTBOUND);
|
||||
|
||||
+2
-2
@@ -136,7 +136,7 @@ class WarehouseTransferServiceTest {
|
||||
1, 20, null, null, null, null, null, null, null, null));
|
||||
|
||||
assertEquals("RL-20260923-000001", result.records().get(0).relabelNo());
|
||||
assertEquals("COMPLETED", result.records().get(0).relabelApplicationStatus());
|
||||
assertEquals("COMPLETED", result.records().get(0).relabelStatus());
|
||||
assertEquals("READY_FOR_DISPATCH", result.records().get(0).relabelFulfillmentStatus());
|
||||
}
|
||||
|
||||
@@ -152,7 +152,7 @@ class WarehouseTransferServiceTest {
|
||||
1, 20, null, null, null, null, null, null, null, null));
|
||||
|
||||
assertEquals(1, result.records().size());
|
||||
assertNull(result.records().get(0).relabelApplicationStatus());
|
||||
assertNull(result.records().get(0).relabelStatus());
|
||||
assertNull(result.records().get(0).relabelFulfillmentStatus());
|
||||
verify(relabelApplications, never()).selectList(any());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user