![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/rentpix.corals.io/Corals/modules/RentPix/Http/Controllers/API/ |
<?php namespace Corals\Modules\RentPix\Http\Controllers\API; use Corals\Foundation\Http\Controllers\APIBaseController; use Corals\Modules\RentPix\DataTables\DriversDataTable; use Corals\Modules\RentPix\Http\Requests\DriverRequest; use Corals\Modules\RentPix\Models\Driver; use Corals\Modules\RentPix\Services\DriverService; use Corals\Modules\RentPix\Transformers\API\DriverPresenter; class DriversController extends APIBaseController { protected $driverService; /** * DriversController constructor. * * @param DriverService $driverService * * @throws \Exception */ public function __construct(DriverService $driverService) { $this->driverService = $driverService; $this->driverService->setPresenter(new DriverPresenter()); parent::__construct(); } /** * @param DriverRequest $request * @param DriversDataTable $dataTable * @return mixed * * @throws \Exception */ public function index(DriverRequest $request, DriversDataTable $dataTable) { $drivers = $dataTable->query(new Driver()); return $this->driverService->index($drivers, $dataTable); } /** * @param DriverRequest $request * @return \Illuminate\Http\JsonResponse */ public function store(DriverRequest $request) { try { $driver = $this->driverService->store($request, Driver::class); return apiResponse($this->driverService->getModelDetails(), trans('Corals::messages.success.created', ['item' => $driver->name])); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } /** * @param DriverRequest $request * @param Driver $driver * @return \Illuminate\Http\JsonResponse */ public function show(DriverRequest $request, Driver $driver) { try { return apiResponse($this->driverService->getModelDetails($driver)); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } /** * @param DriverRequest $request * @param Driver $driver * @return \Illuminate\Http\JsonResponse */ public function update(DriverRequest $request, Driver $driver) { try { $this->driverService->update($request, $driver); return apiResponse($this->driverService->getModelDetails(), trans('Corals::messages.success.updated', ['item' => $driver->name])); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } /** * @param DriverRequest $request * @param Driver $driver * @return \Illuminate\Http\JsonResponse */ public function destroy(DriverRequest $request, Driver $driver) { try { $this->driverService->destroy($request, $driver); return apiResponse([], trans('Corals::messages.success.deleted', ['item' => $driver->name])); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } }