File: /var/www/matriculas_api_dev/app/Http/Controllers/GenderController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests\Gender\StoreGenderRequest;
use App\Http\Requests\Gender\UpdateGenderRequest;
use App\Services\GenderService;
use Exception;
class GenderController extends Controller
{
protected $genderService;
public function __construct(GenderService $genderService)
{
$this->genderService = $genderService;
}
public function list($allData = false)
{
try {
$data = $this->genderService->list($allData);
return genericResponse(['data' => $data, 'message' => 'ok', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function store(StoreGenderRequest $request)
{
try {
$data = $this->genderService->store($request);
return genericResponse(['data' => $data, 'message' => 'Género Creado Correctamente', 'code' => 201], 201);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function update($id, UpdateGenderRequest $request)
{
try {
$data = $this->genderService->update($request, $id);
return genericResponse(['data' => null, 'message' => null, 'code' => 204], 204);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function show($id)
{
try {
$data = $this->genderService->show($id);
return genericResponse(['data' => $data, 'message' => 'ok', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function destroy($id)
{
try {
$data = $this->genderService->delete($id);
return genericResponse(['data' => null, 'message' => 'Género Eliminado correctamente', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
}