Files
SGF/scripts/a-status.php
T

12 lines
1.1 KiB
PHP

<?php
require __DIR__.'/../vendor/autoload.php';
$app = require __DIR__.'/../bootstrap/app.php';
$app->make(\Illuminate\Contracts\Console\Kernel::class)->bootstrap();
if (! \App\Modules\Identity\Services\LocalDatabaseGuard::allows()) { exit(1); }
$counts = [];
foreach (['a_clients','a_services','a_service_drafts','a_billing_drafts','a_history','a_events','a_outbox','a_pending','a_commands'] as $table) { $counts[$table] = \Illuminate\Support\Facades\DB::table($table)->count(); }
$permissions = array_merge(\App\Modules\Services\ServicePermissions::catalogue(false), \App\Modules\Services\ServicePermissions::catalogue(true));
$grants = \Illuminate\Support\Facades\DB::table('permission_grants as g')->join('users as u', 'u.id', '=', 'g.user_id')->whereIn('g.permission', $permissions)->orderBy('u.id')->orderBy('g.permission')->get(['u.id as user_id','u.name','g.tenant_id','g.company_id','g.unit_id','g.permission']);
echo json_encode(['database' => 'sgf_tempo_dev', 'role' => 'sgf_dev_app', 'records' => $counts, 'explicit_grants' => $grants], JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE).PHP_EOL;