File: /var/www/matriculas_api_dev/app/Http/Controllers/ParentController.php
<?php
namespace App\Http\Controllers;
use App\Http\Requests\ParentRequest\StoreParentRequest;
use App\Http\Requests\ParentRequest\UpdateParentRequest;
use App\Services\ParentService;
use Exception;
class ParentController extends Controller
{
protected $parentService;
public function __construct(ParentService $parentService)
{
$this->parentService = $parentService;
}
public function list($publicData = false)
{
try {
$periodId = request()->query('period_id');
$data = $this->parentService->list($publicData, $periodId);
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(StoreParentRequest $request)
{
try {
$data = $this->parentService->store($request);
return genericResponse(['data' => $data, 'message' => 'Apoderado Creado Correctamente', 'code' => 201], 201);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function update($id, UpdateParentRequest $request)
{
try {
$data = $this->parentService->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->parentService->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->parentService->delete($id);
return genericResponse(['data' => null, 'message' => 'Apoderado Eliminado correctamente', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
}