39 lines
1.6 KiB
Java
39 lines
1.6 KiB
Java
package com.baiyue.firstleg.client;
|
|
|
|
import com.baiyue.common.core.api.ApiResponse;
|
|
import org.springframework.cloud.openfeign.FeignClient;
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
import org.springframework.web.bind.annotation.PathVariable;
|
|
import org.springframework.web.bind.annotation.RequestHeader;
|
|
|
|
import java.util.List;
|
|
|
|
/** 获取平台仓库主数据,供虚拟柜校验国内中转仓使用。 */
|
|
@FeignClient(name = "warehouse-service", contextId = "firstlegWarehouseMasterDataClient",
|
|
url = "${baiyue.clients.warehouse.url:}", path = "/internal/warehouses")
|
|
public interface WarehouseMasterDataClient {
|
|
@GetMapping("/order-catalog")
|
|
ApiResponse<List<CatalogWarehouse>> catalog(@RequestHeader("X-Internal-Service-Token") String token);
|
|
|
|
record CatalogWarehouse(Long id, String warehouseCode, String warehouseName, String warehouseType, String countryCode) { }
|
|
|
|
@GetMapping("/{tenantId}/{warehouseId}/active")
|
|
ApiResponse<Detail> active(@RequestHeader("X-Internal-Service-Token") String token,
|
|
@PathVariable long tenantId,
|
|
@PathVariable long warehouseId);
|
|
|
|
@GetMapping("/domestic")
|
|
ApiResponse<List<WarehouseOption>> domestic(
|
|
@RequestHeader("X-Internal-Service-Token") String token);
|
|
|
|
record Detail(Warehouse warehouse) {
|
|
}
|
|
|
|
record Warehouse(Long id, Long tenantId, String warehouseCode, String internalCode, String warehouseName,
|
|
String warehouseType, String status) {
|
|
}
|
|
|
|
record WarehouseOption(Long id, String warehouseCode, String warehouseName) {
|
|
}
|
|
}
|