55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Domain\Role\Actions\DestroyAction;
|
|
use App\Domain\Role\Actions\IndexAction;
|
|
use App\Domain\Role\Actions\ShowAction;
|
|
use App\Domain\Role\Actions\StoreAction;
|
|
use App\Domain\Role\Actions\UpdateAction;
|
|
use App\Domain\Role\Data\DestroyRequest;
|
|
use App\Domain\Role\Data\IndexRequest;
|
|
use App\Domain\Role\Data\ShowRequest;
|
|
use App\Domain\Role\Data\StoreRequest;
|
|
use App\Domain\Role\Data\UpdateRequest;
|
|
use Illuminate\Contracts\View\View;
|
|
use Illuminate\Http\JsonResponse;
|
|
|
|
class RoleController extends Controller
|
|
{
|
|
public function index(IndexRequest $request, IndexAction $action): View
|
|
{
|
|
$data = $action->execute($request);
|
|
return view('pages.role.index', ['data' => $data]);
|
|
}
|
|
|
|
public function show(ShowRequest $request, ShowAction $action): View
|
|
{
|
|
$data = $action->execute($request);
|
|
return view('pages.role.show', ['data' => $data]);
|
|
}
|
|
|
|
public function store(StoreRequest $request, StoreAction $action): JsonResponse
|
|
{
|
|
$action->execute($request);
|
|
|
|
return response()->json(['success' => true, 'message' => 'Role created successfully']);
|
|
}
|
|
|
|
public function update(UpdateRequest $request, UpdateAction $action): JsonResponse
|
|
{
|
|
$action->execute($request);
|
|
|
|
return response()->json(['success' => true, 'message' => 'Role updated successfully']);
|
|
}
|
|
|
|
public function destroy(DestroyRequest $request, DestroyAction $action): JsonResponse
|
|
{
|
|
$action->execute($request);
|
|
|
|
return response()->json(['success' => true, 'message' => 'Role deleted successfully']);
|
|
}
|
|
}
|