%PDF- %PDF-
Direktori : /var/www/html/news/app/Http/Controllers/Api/ |
Current File : /var/www/html/news/app/Http/Controllers/Api/RolesController.php |
<?php namespace App\Http\Controllers\Api; use App\Http\Controllers\ApiController; use App\Http\Requests\Role\RoleStoreRequest; use App\Http\Requests\Role\RoleUpdateRequest; use App\Repositories\Role\RolesRepository; use App\Transformers\RoleTransformer; use EllipseSynergie\ApiResponse\Contracts\Response; class RolesController extends ApiController { /** * @var RolesRepository */ private $rolesRepository; /** * UsersController constructor. * @param Response $response * @param RolesRepository $rolesRepository */ public function __construct(Response $response, RolesRepository $rolesRepository) { parent::__construct($response); $this->transformer = new RoleTransformer; $this->rolesRepository = $rolesRepository; } /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { return $this->response->withPaginator($this->rolesRepository->paginate(), $this->transformer); } /** * Store a newly created resource in storage. * * @param RoleStoreRequest $request * @return \Illuminate\Http\Response */ public function store(RoleStoreRequest $request) { $role = $this->rolesRepository->create($request->all()); return $this->response->withItem($role, $this->transformer); } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show($id) { return $this->response->withItem($this->rolesRepository->findOrFail($id), $this->transformer); } /** * Update the specified resource in storage. * * @param RoleUpdateRequest $request * @param int $id * @return \Illuminate\Http\Response */ public function update(RoleUpdateRequest $request, $id) { $role = $this->rolesRepository->findOrFail($id); $role->update($request->all()); return $this->response->withItem($role, $this->transformer); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $role = $this->rolesRepository->findOrFail($id); $result = $this->rolesRepository->delete($role->id); if (!$result) { return $this->response->errorInternalError('Unexpected error occurred'); } return response([], 204); } }