Cetaklabel/Http/Controllers/Api/DirectoratController.php

90 lines
2.8 KiB
PHP
Raw Normal View History

2023-05-15 10:03:46 +00:00
<?php
2023-05-20 14:09:49 +00:00
namespace Modules\Cetaklabel\Http\Controllers\Api;
2023-05-15 10:03:46 +00:00
use App\Http\Controllers\ApiController;
use Exception;
2023-05-20 14:09:49 +00:00
use Modules\Cetaklabel\Entities\Directorat;
use Modules\Cetaklabel\Http\Requests\Directorat\StoreDirectoratRequest;
use Modules\Cetaklabel\Http\Requests\Directorat\UpdateDirectoratRequest;
2023-05-15 10:03:46 +00:00
use Symfony\Component\HttpFoundation\JsonResponse;
class DirectoratController extends ApiController
{
2023-05-15 14:14:52 +00:00
public function index()
: JsonResponse
2023-05-15 10:03:46 +00:00
{
$directorats = Directorat::all();
return $this->sendResponse($directorats, 'Directorats retrieved successfully.');
}
2023-05-15 14:14:52 +00:00
public function show($directorat)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
$directorat = Directorat::find($directorat);
if (is_null($directorat)) {
return $this->sendError('Directorat not found.');
}
return $this->sendResponse($directorat, 'Directorat retrieved successfully.');
}
2023-05-15 14:14:52 +00:00
public function store(StoreDirectoratRequest $request)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
// Validate the request...
$validated = $request->validated();
// Store the Directorat...
if ($validated) {
try {
$data = Directorat::create($validated);
return $this->sendResponse($data, 'Directorat created successfully.');
} catch (Exception $e) {
return $this->sendError($e->getMessage(), $e->getCode());
}
}
return $this->sendError('Directorat created failed.', 400);
}
2023-05-15 14:14:52 +00:00
public function update(UpdateDirectoratRequest $request, Directorat $directorat)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
// Validate the request...
$validated = $request->validated();
// Store the Directorat...
if ($validated) {
try {
$data = $directorat->update($validated);
return $this->sendResponse($data, 'Directorat updated successfully.');
} catch (Exception $e) {
return $this->sendError($e->getMessage(), $e->getCode());
}
}
return $this->sendError('Directorat created failed.', 400);
}
2023-05-15 14:14:52 +00:00
public function destroy($id)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
$directorat = Directorat::find($id);
if (is_null($directorat)) {
return $this->sendError('Directorat not found.');
}
try {
$directorat->delete();
return $this->sendResponse($directorat, 'Directorat deleted successfully.');
} catch (Exception $e) {
return $this->sendError($e->getMessage(), $e->getCode());
}
}
}