<?php

declare(strict_types=1);

use Illuminate\Database\Migrations\Migration;
use Illuminate\Support\Facades\DB;

/**
 * Прослеживаемость онлайн-пополнения: ссылка saas_transactions → строка ledger
 * balance_transactions, созданная при зачислении по webhook. Без FK —
 * balance_transactions партиционирована (FK к ней невозможен). Nullable —
 * squawk-safe (без DEFAULT/NOT NULL, без блокировки записи на больших таблицах).
 */
return new class extends Migration
{
    public function up(): void
    {
        DB::statement('ALTER TABLE saas_transactions ADD COLUMN IF NOT EXISTS balance_transaction_id BIGINT');
    }

    public function down(): void
    {
        DB::statement('ALTER TABLE saas_transactions DROP COLUMN IF EXISTS balance_transaction_id');
    }
};
