24 lines
1.3 KiB
PHP
24 lines
1.3 KiB
PHP
<?php
|
|
|
|
use Illuminate\Contracts\Console\Kernel;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\Schema;
|
|
|
|
$root = dirname(__DIR__);
|
|
require $root.'/vendor/autoload.php';
|
|
require __DIR__.'/portal-qa-environment.php';
|
|
$target = portalQaEnvironment();
|
|
$app = require $root.'/bootstrap/app.php';
|
|
$app->make(Kernel::class)->bootstrap();
|
|
$identity = portalQaAssertTarget($target);
|
|
DB::beginTransaction();
|
|
DB::statement('SET TRANSACTION READ ONLY');
|
|
$result = ['target' => $identity];
|
|
foreach (['sectors', 'economic_activities', 'reference_catalog_versions', 'contacts', 'investors', 'organizations', 'tasks', 'documents', 'opportunity_location_drafts'] as $table) {
|
|
$result[$table] = ['columns' => Schema::getColumnListing($table), 'count' => DB::table($table)->count()];
|
|
}
|
|
$result['activities'] = DB::table('economic_activities')->orderBy('code')->get(['id', 'parent_id', 'sector_id', 'code', 'label_pt_mz', 'status', 'catalog_version_id'])->all();
|
|
file_put_contents($root.'/storage/app/private/investmoz-v2/portal-audit/opportunity-contract-inspect-qa.json', json_encode($result, JSON_PRETTY_PRINT | JSON_THROW_ON_ERROR));
|
|
DB::rollBack();
|
|
echo json_encode(['target' => $identity, 'counts' => array_map(fn ($v) => is_array($v) ? ($v['count'] ?? count($v)) : null, $result), 'active_writes' => 0]).PHP_EOL;
|