Merge branch '230-restructure-the-response-for-capi-get-vehicles' into 'master'

Resolve "Restructure the response for CAPI get vehicles"

Closes #230

See merge request jankstudio/resq!269
This commit is contained in:
Korina Cordero 2019-07-18 06:17:16 +00:00
commit c52cdd71f5

View file

@ -48,19 +48,37 @@ class VehicleController extends APIController
{
$this->denyAccessUnlessGranted('vehicle.list', null, 'No access.');
// get manufacturers
$mfgs = $em->getRepository(VehicleManufacturer::class)->findBy([], ['name' => 'ASC']);
// get vehicles
$vehicles = $em->getRepository(Vehicle::class)->findBy([], ['manufacturer' => 'ASC', 'make' => 'ASC']);
$result = [];
foreach ($vehicles as $v)
// process manufacturer results
$mfg_data = [];
foreach($mfgs as $mfg)
{
$result[] = [
'id' => $v->getID(),
'name' => $v->getMake() . ' ' . $v->getModelYearFormatted(),
$mfg_data[] = [
'id' => $mfg->getID(),
'name' => $mfg->getName(),
];
}
// process vehicle results
$make_data = [];
foreach($vehicles as $vehicle)
{
$make_data[] = [
'id' => $vehicle->getID(),
'mfg_id' => $vehicle->getManufacturer()->getID(),
'make' => $vehicle->getMake(),
'model' => $vehicle->getModelYearFormatted(),
];
}
$data = [
'vehicles' => $result,
'manufacturers' => $mfg_data,
'vehicles' => $make_data,
];
return new APIResponse(true, 'Vehicles loaded.', $data);