贴标申请,仓储转运

This commit is contained in:
2026-10-13 18:05:30 +08:00
parent c07131b26f
commit 38958c891a
3 changed files with 41 additions and 2 deletions
@@ -66,6 +66,29 @@ import static org.mockito.Mockito.times;
@ExtendWith(MockitoExtension.class)
class RelabelApplicationServiceTest {
@Test void relatedBusinessNumbersUseAuthoritativeSourcesInsteadOfCustomerReferences() {
var application = new RelabelApplication(); application.setCustomerId("C1"); application.setCustomerOrderNo("CUSTOMER-REFERENCE");
var order = new LastlegOrder(); order.setCustomerId("C1"); order.setOrderNo("TAIL-INTERNAL-NO");
for (var type : List.of("WAREHOUSE_TRANSFER", "RETURN_RELABEL", "FIRST_LEG")) {
order.setOrderType(type); order.setSourceOrderNo(type + "-BUSINESS-NO");
List<String> numbers = ReflectionTestUtils.invokeMethod(service, "relatedBusinessOrderNos", application, order, List.of());
assertEquals(List.of(type + "-BUSINESS-NO"), numbers);
}
order.setOrderType("RELABEL_APPLICATION"); order.setSourceOrderNo("CUSTOMER-REFERENCE");
var first = new RelabelItem(); first.setSourceInboundOrderNo(" RT-SOURCE-1 ");
var duplicate = new RelabelItem(); duplicate.setSourceInboundOrderNo("RT-SOURCE-1");
var second = new RelabelItem(); second.setSourceInboundOrderNo("IN-SOURCE-2");
var bulkReturn = new RelabelItem(); bulkReturn.setOperationType("RETURN_BULK_SKU_LABEL"); bulkReturn.setShipmentNo("RT-SOURCE-3");
var shipment = new RelabelItem(); shipment.setOperationType("CARTON_LABEL"); shipment.setShipmentNo("FBA-SHIPMENT");
List<String> sources = ReflectionTestUtils.invokeMethod(service, "relatedBusinessOrderNos", application, order,
List.of(first, duplicate, second, bulkReturn, shipment));
assertEquals(List.of("RT-SOURCE-1", "IN-SOURCE-2", "RT-SOURCE-3"), sources);
List<String> missing = ReflectionTestUtils.invokeMethod(service, "relatedBusinessOrderNos", application, order, List.of(shipment));
assertEquals(List.of(), missing);
order.setOrderType("RETURN_RELABEL"); order.setCustomerId("OTHER"); order.setSourceOrderNo("RT-OTHER-CUSTOMER");
List<String> foreign = ReflectionTestUtils.invokeMethod(service, "relatedBusinessOrderNos", application, order, List.of());
assertEquals(List.of(), foreign);
}
@Test void summaryReturnsMilestonesFromCustomerScopedFacts() {
var application = new RelabelApplication();
application.setId(42L); application.setCustomerId("10001");