<?php

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

return new class extends Migration
{
    /**
     * PRC-833: `time_guarantee` iade tipi hiçbir iş mantığına bağlı değildi
     * (ölü seçenek) — enum'dan kaldırılır. Mevcut satırlar önce güvenli
     * varsayılana (end_of_period) çekilir, sonra enum daraltılır.
     */
    public function up(): void
    {
        DB::table('cancellation_requests')
            ->where('refund_type', 'time_guarantee')
            ->update(['refund_type' => 'end_of_period']);

        Schema::table('cancellation_requests', function (Blueprint $table) {
            $table->enum('refund_type', [
                'immediate_refund',
                'end_of_period',
            ])->comment('İade tipi')->change();
        });
    }

    public function down(): void
    {
        Schema::table('cancellation_requests', function (Blueprint $table) {
            $table->enum('refund_type', [
                'immediate_refund',
                'end_of_period',
                'time_guarantee',
            ])->comment('İade tipi')->change();
        });
    }
};
