Cetaklabel/Http/Controllers/Api/SpecialCodeController.php

90 lines
2.9 KiB
PHP
Raw Permalink 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\SpecialCode;
use Modules\Cetaklabel\Http\Requests\SpecialCode\StoreSpecialCodeRequest;
use Modules\Cetaklabel\Http\Requests\SpecialCode\UpdateSpecialCodeRequest;
2023-05-15 10:03:46 +00:00
use Symfony\Component\HttpFoundation\JsonResponse;
class SpecialCodeController extends ApiController
{
2023-05-15 14:14:52 +00:00
public function index()
: JsonResponse
2023-05-15 10:03:46 +00:00
{
$special_codes = SpecialCode::all();
return $this->sendResponse($special_codes, 'Special Codes retrieved successfully.');
}
2023-05-15 14:14:52 +00:00
public function show($special_code)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
$special_code = SpecialCode::find($special_code);
if (is_null($special_code)) {
return $this->sendError('Special Code not found.');
}
return $this->sendResponse($special_code, 'Special Code retrieved successfully.');
}
2023-05-15 14:14:52 +00:00
public function store(StoreSpecialCodeRequest $request)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
// Validate the request...
$validated = $request->validated();
// Store the SpecialCode...
if ($validated) {
try {
$data = SpecialCode::create($validated);
return $this->sendResponse($data, 'Special Code created successfully.');
} catch (Exception $e) {
return $this->sendError($e->getMessage(), $e->getCode());
}
}
return $this->sendError('Special Code created failed.', 400);
}
2023-05-15 14:14:52 +00:00
public function update(UpdateSpecialCodeRequest $request, SpecialCode $special_code)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
// Validate the request...
$validated = $request->validated();
// Store the SpecialCode...
if ($validated) {
try {
$data = $special_code->update($validated);
return $this->sendResponse($data, 'Special Code updated successfully.');
} catch (Exception $e) {
return $this->sendError($e->getMessage(), $e->getCode());
}
}
return $this->sendError('Special Code created failed.', 400);
}
2023-05-15 14:14:52 +00:00
public function destroy($id)
: JsonResponse
2023-05-15 10:03:46 +00:00
{
$special_code = SpecialCode::find($id);
if (is_null($special_code)) {
return $this->sendError('Special Code not found.');
}
try {
$special_code->delete();
return $this->sendResponse($special_code, 'Special Code deleted successfully.');
} catch (Exception $e) {
return $this->sendError($e->getMessage(), $e->getCode());
}
}
}