Aby znaleźć wszystkie pojazdy, które spełniają określone opcje żądania, użyj metody ListVehicles
. Metoda ListVehicles
zwraca posortowaną listę pojazdów w projekcie, która pasuje do zapytań w polach pojazdu.
Filtrowanie według atrybutów pojazdu
Możesz też użyć tej metody do filtrowania według atrybutów pojazdu, które działają jak operator AND, gdy są używane w połączeniu z innymi specyfikacjami pól. Szczegółowe informacje o składni zapytania filtra znajdziesz w artykule Filtrowanie: AIP-160, w którym znajdziesz też przykłady. Szczegółowe informacje o tworzeniu atrybutów pojazdu znajdziesz w sekcji Pola atrybutów pojazdu w przewodniku Aktualizowanie pól pojazdu.
Przykład listy pojazdów
W tym przykładzie filtruje się pola vehicle_type
i attributes
za pomocą ciągu filter
, wyświetlając tylko pojazdy typu AUTO i uzyskiwanie wartości LUXURY dla atrybutu niestandardowego class
.
Java
static final String PROJECT_ID = "project-id";
VehicleServiceBlockingStub vehicleService = VehicleService.newBlockingStub(channel);
String parent = "providers/" + PROJECT_ID;
ListVehiclesRequest listVehiclesRequest = ListVehiclesRequest.newBuilder()
.setParent(parent)
.addTripTypes(TripType.EXCLUSIVE)
.addVehicleTypes(VehicleType.newBuilder().setCategory(VehicleType.Category.AUTO))
.setFilter("attributes.on_trip=\"false\"")
.setIncludeBackToBack(true) // Fleet Engine includes vehicles that are en route.
.build();
// Error handling
// If matches are returned and the authentication passed, the request completed
// successfully
try {
ListVehiclesResponse listVehiclesResponse =
vehicleService.listVehicles(listVehiclesRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND:
break;
case PERMISSION_DENIED:
break;
}
return;
}
REST
curl -X POST \
"https://fleetengine.googleapis.com/v1/providers/project-id/vehicles:list" \
-H "Authorization: Bearer $JWT" \
-H "Content-Type: application/json" \
--data-binary @- << EOM
{
"vehicleTypes": [{"category": "AUTO"}],
"filter": "attributes.class=\"LUXURY\"",
}
EOM