diff --git a/app/controllers/ApiController.php b/app/controllers/ApiController.php index c47722d0..31cffb27 100644 --- a/app/controllers/ApiController.php +++ b/app/controllers/ApiController.php @@ -14,4 +14,9 @@ } } + public function getComponentIncidents($id) { + $component = $this->getComponent($id); + return $component->incidents; + } + } diff --git a/app/routes/api.php b/app/routes/api.php index 4059f2b2..dda32400 100644 --- a/app/routes/api.php +++ b/app/routes/api.php @@ -4,5 +4,6 @@ Route::get('components', 'ApiController@getComponents'); Route::get('components/{id}', 'ApiController@getComponent'); + Route::get('components/{id}/incidents', 'ApiController@getComponentIncidents'); }); diff --git a/app/transformers/ComponentTransformer.php b/app/transformers/ComponentTransformer.php index d3eade61..c586998a 100644 --- a/app/transformers/ComponentTransformer.php +++ b/app/transformers/ComponentTransformer.php @@ -8,6 +8,7 @@ 'description' => $component->description, 'status_id' => (int) $component->status, 'status' => $component->getHumanStatusAttribute(), + 'incident_count' => $component->incidents()->count() ]; }