90 lines
2.8 KiB
PHP
90 lines
2.8 KiB
PHP
<?php
|
|
|
|
namespace Modules\Cetaklabel\Http\Controllers\Api;
|
|
|
|
use App\Http\Controllers\ApiController;
|
|
use Exception;
|
|
use Modules\Cetaklabel\Entities\Directorat;
|
|
use Modules\Cetaklabel\Http\Requests\Directorat\StoreCardboardRequest;
|
|
use Modules\Cetaklabel\Http\Requests\Directorat\UpdateCardboardRequest;
|
|
use Symfony\Component\HttpFoundation\JsonResponse;
|
|
|
|
class DirectoratController extends ApiController
|
|
{
|
|
public function index()
|
|
: JsonResponse
|
|
{
|
|
$directorats = Directorat::all();
|
|
|
|
return $this->sendResponse($directorats, 'Directorats retrieved successfully.');
|
|
}
|
|
|
|
public function show($directorat)
|
|
: JsonResponse
|
|
{
|
|
$directorat = Directorat::find($directorat);
|
|
if (is_null($directorat)) {
|
|
return $this->sendError('Directorat not found.');
|
|
}
|
|
|
|
return $this->sendResponse($directorat, 'Directorat retrieved successfully.');
|
|
}
|
|
|
|
public function store(StoreCardboardRequest $request)
|
|
: JsonResponse
|
|
{
|
|
// 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);
|
|
}
|
|
|
|
public function update(UpdateCardboardRequest $request, Directorat $directorat)
|
|
: JsonResponse
|
|
{
|
|
// 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);
|
|
}
|
|
|
|
public function destroy($id)
|
|
: JsonResponse
|
|
{
|
|
$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());
|
|
}
|
|
}
|
|
}
|