<?php

namespace App\Http\Controllers;

  use App\Models\Lead;
use App\Models\Quote;
use Illuminate\Http\Request;


class QuoteController extends Controller
{
  

public function store(Request $request)
{
    $data = $request->all();

    // Guardar el Lead con form_data completo
    $lead = Lead::create([
        'property_id' => $data['property_id'],
        'form_data' => $data,
        'status' => 'nuevo',
    ]);

    // Calcular mensualidad
    $price = floatval($data['price']);
    $advance = $price * ($data['advance_percentage'] / 100);
    $apartado = 30000;
    $restante = $price - $advance - $apartado;
    $mensualidad = $restante > 0 ? $restante / 48 : 0;

    // Guardar la cotización y guardarla en variable
    $quote = $lead->quotes()->create([
        'property_id' => $data['property_id'],
        'month' => $data['month'],
        'price' => $data['price'],
        'base_price' => $data['base_price'],
        'advance_percentage' => $data['advance_percentage'],
        'monthly_payment' => round($mensualidad, 2),
    ]);

    // Redirigir a la vista pública
    return redirect()->route('public.quotes.show', $quote->slug);

}

public function index()
{
    $quotes = Quote::with(['lead', 'property'])->latest()->paginate(15);

    $meses = [
        'january' => 'Enero',
        'february' => 'Febrero',
        'march' => 'Marzo',
        'april' => 'Abril',
        'may' => 'Mayo',
        'june' => 'Junio',
        'july' => 'Julio',
        'august' => 'Agosto',
        'september' => 'Septiembre',
        'october' => 'Octubre',
        'november' => 'Noviembre',
        'december' => 'Diciembre',
    ];

    return view('quotes.index', compact('quotes', 'meses'));
}

public function show(Quote $quote)
{
    $quote->load(['lead', 'property']);
    $meses = [
    'january' => 'Enero',
    'february' => 'Febrero',
    'march' => 'Marzo',
    'april' => 'Abril',
    'may' => 'Mayo',
    'june' => 'Junio',
    'july' => 'Julio',
    'august' => 'Agosto',
    'september' => 'Septiembre',
    'october' => 'Octubre',
    'november' => 'Noviembre',
    'december' => 'Diciembre',
];

return view('quotes.show', compact('quote', 'meses'));

}

}
