Add /api/fleet to get subfleets and all the aircraft #120

This commit is contained in:
Nabeel Shahzad
2018-01-05 10:45:34 -06:00
parent e931310dee
commit 1ee9041058
11 changed files with 105 additions and 27 deletions

View File

@@ -2,17 +2,14 @@
namespace App\Http\Controllers\Api;
use Log;
use Illuminate\Http\Request;
use App\Http\Controllers\AppBaseController;
use App\Models\Acars;
use App\Services\GeoService;
use App\Repositories\AcarsRepository;
use App\Repositories\PirepRepository;
class AcarsController extends AppBaseController
class AcarsController extends RestController
{
protected $acarsRepo, $geoSvc, $pirepRepo;

View File

@@ -3,13 +3,12 @@
namespace App\Http\Controllers\Api;
use App\Repositories\AirportRepository;
use App\Http\Controllers\AppBaseController;
use App\Http\Resources\Airport as AirportResource;
use Illuminate\Support\Facades\Cache;
use VaCentral\Airport as AirportLookup;
class AirportController extends AppBaseController
class AirportController extends RestController
{
protected $airportRepo;

View File

@@ -0,0 +1,34 @@
<?php
namespace App\Http\Controllers\Api;
use App\Repositories\AircraftRepository;
use App\Repositories\SubfleetRepository;
use App\Http\Resources\Subfleet as SubfleetResource;
class FleetController extends RestController
{
protected $aircraftRepo, $subfleetRepo;
public function __construct(
AircraftRepository $aircraftRepo,
SubfleetRepository $airportRepo
) {
$this->aircraftRepo = $airportRepo;
$this->subfleetRepo = $airportRepo;
}
/**
* Return all the subfleets and the aircraft and any other associated data
* Paginated
*/
public function index()
{
$airports = $this->subfleetRepo
->with(['aircraft', 'airline', 'fares', 'ranks'])
->paginate(50);
return SubfleetResource::collection($airports);
}
}

View File

@@ -2,16 +2,14 @@
namespace App\Http\Controllers\Api;
use Log;
use Illuminate\Http\Request;
use App\Http\Controllers\AppBaseController;
use App\Repositories\FlightRepository;
use App\Http\Resources\Flight as FlightResource;
use Prettus\Repository\Exceptions\RepositoryException;
class FlightController extends AppBaseController
class FlightController extends RestController
{
protected $flightRepo;

View File

@@ -3,10 +3,8 @@
namespace App\Http\Controllers\Api;
use PragmaRX\Version\Package\Facade as Version;
use App\Http\Controllers\AppBaseController;
class StatusController extends AppBaseController
class StatusController extends RestController
{
public function status()
{

View File

@@ -5,18 +5,15 @@ namespace App\Http\Controllers\Api;
use Auth;
use Illuminate\Http\Request;
use App\Http\Controllers\AppBaseController;
use App\Repositories\UserRepository;
use App\Models\User;
use App\Models\UserBid;
use App\Http\Resources\Flight as FlightResource;
use App\Http\Resources\User as UserResource;
use App\Http\Resources\UserBid as UserBidResource;
class UserController extends AppBaseController
class UserController extends RestController
{
protected $userRepo;