<?php

namespace App\Http\Livewire;
use App\Models\ControlDiario;
use App\Models\Equipo;
use Carbon\Carbon;
use Livewire\Component;

class Dashboard extends Component
{
    public $equiposActivosHoy;
    public $numeroSalidas;
    public $totalEquipos;
    public $equiposQueSalieronHoy = [];

    public $fechaFiltro;

    public function mount()
    {
        $this->fechaFiltro = Carbon::today()->format('Y-m-d');
        $this->actualizarEstadisticas();
    }

    public function updatedFechaFiltro()
    {
        $this->actualizarEstadisticas();
    }

    public function actualizarEstadisticas()
    {
        $fecha = Carbon::parse($this->fechaFiltro);

        $this->equiposActivosHoy = Equipo::where('estado', 'activo')->count();

        $this->numeroSalidas = ControlDiario::whereDate('fecha', $fecha)
                                ->where('salio', true)
                                ->count();

        $this->totalEquipos = Equipo::count();

        $this->equiposQueSalieronHoy = ControlDiario::with('equipo')
            ->whereDate('fecha', $fecha)
            ->where('salio', true)
            ->get();
    }

    public function render()
    {
        return view('livewire.dashboard')->layout('layouts.app');
    }
}

