From 074a95d82bae11cb697488a02ae80e9d92db2fe2 Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Mon, 10 Aug 2026 16:34:11 +0800 Subject: [PATCH] fix(warehouse): allow platform resource scope --- .../warehouse/service/LocationResourceService.java | 4 ++-- .../service/LocationResourceServiceTest.java | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/warehouse/src/main/java/com/baiyue/warehouse/service/LocationResourceService.java b/warehouse/src/main/java/com/baiyue/warehouse/service/LocationResourceService.java index 49e3e2821..83116bc8e 100644 --- a/warehouse/src/main/java/com/baiyue/warehouse/service/LocationResourceService.java +++ b/warehouse/src/main/java/com/baiyue/warehouse/service/LocationResourceService.java @@ -55,7 +55,7 @@ public class LocationResourceService { @Resource private PickingPackageAllocator packageAllocator; - public List findAvailable(@Min(1) long tenantId, @Min(1) long warehouseId, + public List findAvailable(@Min(0) long tenantId, @Min(1) long warehouseId, @Min(1) @Max(200) int limit) { requireLimit(limit); requireActiveWarehouse(tenantId, warehouseId); @@ -561,7 +561,7 @@ public class LocationResourceService { } @Transactional(readOnly = true) - public List findActiveResources(@Min(1) long tenantId, + public List findActiveResources(@Min(0) long tenantId, @NotBlank String sourceService, @Min(1) long businessId) { List result = new ArrayList<>(); diff --git a/warehouse/src/test/java/com/baiyue/warehouse/service/LocationResourceServiceTest.java b/warehouse/src/test/java/com/baiyue/warehouse/service/LocationResourceServiceTest.java index dd2a17d6c..d6c09f91a 100644 --- a/warehouse/src/test/java/com/baiyue/warehouse/service/LocationResourceServiceTest.java +++ b/warehouse/src/test/java/com/baiyue/warehouse/service/LocationResourceServiceTest.java @@ -35,6 +35,20 @@ import static org.mockito.Mockito.when; class LocationResourceServiceTest { @MockBean private LocationRepository repository; @Resource private LocationResourceService service; + + @Test + void supportsPlatformScopedWarehouseResourceQueries() { + WarehouseEntity platformWarehouse = warehouse(); + platformWarehouse.setTenantId(0L); + when(repository.findWarehouse(0L, 88L)).thenReturn(platformWarehouse); + when(repository.findAvailable(0L, 88L, 10)).thenReturn(List.of()); + when(repository.findReservationsByBusiness(0L, "firstleg-service", 901L)).thenReturn(List.of()); + when(repository.findOccupanciesByBusiness(0L, "firstleg-service", 901L)).thenReturn(List.of()); + + assertThat(service.findAvailable(0L, 88L, 10)).isEmpty(); + assertThat(service.findActiveResources(0L, "firstleg-service", 901L)).isEmpty(); + } + @Test void shouldHandleCase01() { when(repository.findWarehouse(10001L, 88L)).thenReturn(warehouse());