feat(lastleg): query commercial sources independently of fulfillment types
This commit is contained in:
+13
@@ -75,6 +75,19 @@ class LastlegExportProviderServiceTest {
|
||||
assertTrue(result.columns().stream().noneMatch(c -> c.key().equals("id") || c.key().equals("customerId")));
|
||||
}
|
||||
|
||||
@Test void exportsBusinessReferencesUsingTheSameFiltersAndProjectionAsTheList() {
|
||||
var order = new ObjectMapper().findAndRegisterModules().convertValue(Map.of(
|
||||
"id", "1", "orderNo", "WT-1", "orderTypeName", "仓储转运", "businessSource", Map.of(
|
||||
"businessType", "LOCAL_LOOSEBOARD", "label", "本土散板 · 拼车需求池", "businessOrderNo", "LB-1", "externalBookingNo", "FB-1")), com.baiyue.lastleg.dto.LastlegOrderSummary.class);
|
||||
when(orders.page(isNull(), any(), isNull())).thenReturn(new PageResult<>(List.of(order),1,1,1,1));
|
||||
var result = service.batch("LAST_MILE_ORDER_LIST",request(Map.of("businessType","LOCAL_LOOSEBOARD","businessOrderNo","LB-1","externalBookingNo","FB-1"),null,null));
|
||||
verify(orders).page(isNull(),argThat(q -> "LOCAL_LOOSEBOARD".equals(q.businessType()) && "LB-1".equals(q.businessOrderNo()) && "FB-1".equals(q.externalBookingNo())),isNull());
|
||||
assertEquals("仓储转运",result.rows().get(0).get("orderTypeName"));
|
||||
assertEquals("本土散板 · 拼车需求池",result.rows().get(0).get("businessSource.label"));
|
||||
assertEquals("LB-1",result.rows().get(0).get("businessSource.businessOrderNo"));
|
||||
assertEquals("FB-1",result.rows().get(0).get("businessSource.externalBookingNo"));
|
||||
}
|
||||
|
||||
@Test void keepsCustomerScopeAndLedgerCustomerFilter() {
|
||||
when(inventory.ledgers(eq("200"), any())).thenReturn(new PageResult<>(List.of(),1,1,0,0));
|
||||
service.batch("OVERSEAS_INVENTORY_LEDGER", request(Map.of("customerId","200","customerName","客户"),null,null));
|
||||
|
||||
Reference in New Issue
Block a user