<?php

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

/**
 * Atama maliyet başlıklarına çarpan desteği: birim fiyat (unit_amount) × çarpan
 * (quantity) = toplam (amount). Çarpanın birimi (unit) gün/km/saat vb. olabilir.
 * `amount` toplam olarak korunur; mevcut toplam/rapor sorguları değişmez.
 */
return new class extends Migration {
    public function up(): void
    {
        Schema::table('resource_schedule_cost_items', function (Blueprint $table) {
            $table->decimal('unit_amount', 12, 2)->default(0)->after('title'); // birim fiyat
            $table->decimal('quantity', 10, 2)->default(1)->after('unit_amount'); // çarpan
            $table->string('unit', 20)->nullable()->after('quantity'); // gün, km, saat, kişi, adet...
        });

        // Mevcut satırlar: birim fiyat = toplam, çarpan = 1.
        DB::table('resource_schedule_cost_items')->update([
            'unit_amount' => DB::raw('amount'),
            'quantity' => 1,
        ]);
    }

    public function down(): void
    {
        Schema::table('resource_schedule_cost_items', function (Blueprint $table) {
            $table->dropColumn(['unit_amount', 'quantity', 'unit']);
        });
    }
};
