add all controllers logic

This commit is contained in:
root
2026-03-11 17:53:15 -04:00
parent 3e6c577085
commit 2ef71cc92b
421 changed files with 12009 additions and 5211 deletions
+32
View File
@@ -0,0 +1,32 @@
<?php
namespace App\Http\Middleware;
use App\Services\Auth\PermissionCheckService;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class RequirePermission
{
public function __construct(private PermissionCheckService $permissions)
{
}
public function handle(Request $request, Closure $next, string $permission): Response
{
$userId = (int) ($request->user()?->id ?? 0);
if ($userId <= 0) {
return response()->json(['status' => false, 'message' => 'Unauthorized.'], 401);
}
if (!$this->permissions->hasPermission($userId, $permission)) {
if ($request->expectsJson()) {
return response()->json(['status' => false, 'message' => 'Access denied.'], 403);
}
return response()->json(['status' => false, 'message' => 'Access denied.'], 403);
}
return $next($request);
}
}