@extends('layouts.dashboard.inface', ['section' => 'home']) @section('content') @php $dashboard = $dashboard ?? null; $metrics = $dashboard?->metrics ?? []; $topProspects = $dashboard?->topProspects ?? []; $salesByDevelopment = $dashboard?->salesByDevelopment ?? []; $expenseDistribution = $dashboard?->expenseDistribution ?? []; $todayAgenda = $dashboard?->todayAgenda ?? []; $inventoryAlert = $dashboard?->inventoryAlert ?? null; $metricBadgeClasses = [ 'positive' => 'bg-emerald-50 text-emerald-600 dark:bg-emerald-900/20 dark:text-emerald-400', 'negative' => 'bg-red-50 text-red-600 dark:bg-red-900/20 dark:text-red-400', 'info' => 'bg-blue-50 text-blue-600 dark:bg-blue-900/20 dark:text-blue-400', 'neutral' => 'bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-400', ]; $prospectBadgeClasses = [ 'hot' => 'bg-red-50 text-red-700 dark:bg-red-900/20 dark:text-red-300', 'warm' => 'bg-orange-50 text-orange-700 dark:bg-orange-900/20 dark:text-orange-300', 'cold' => 'bg-slate-100 text-slate-700 dark:bg-slate-800 dark:text-slate-300', ]; $agendaToneClasses = [ 'positive' => 'bg-emerald-50 text-emerald-600 dark:bg-emerald-900/20 dark:text-emerald-300', 'danger' => 'bg-red-50 text-red-600 dark:bg-red-900/20 dark:text-red-300', 'neutral' => 'bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-300', 'info' => 'bg-blue-50 text-blue-600 dark:bg-blue-900/20 dark:text-blue-300', ]; $expenseSegments = []; $expenseCursor = 0; foreach ($expenseDistribution as $expenseRow) { $end = min(100, $expenseCursor + (float) ($expenseRow['percentage'] ?? 0)); $expenseSegments[] = ($expenseRow['color'] ?? '#1D4ED8') . ' ' . $expenseCursor . '% ' . $end . '%'; $expenseCursor = $end; } $expenseChartStyle = $expenseSegments !== [] ? 'background: conic-gradient(' . implode(', ', $expenseSegments) . ');' : 'background: conic-gradient(#e5e7eb 0 100%);'; @endphp

Panel de Control

Métricas críticas y gestión en tiempo real.

@forelse ($metrics as $metric)
{{ $metric['label'] }} {{ $metric['badge'] }}
{{ $metric['value'] }} {{ $metric['unit'] }}
@empty
Aún no hay métricas disponibles para este panel.
@endforelse

group Prospectos

Ver todos
@forelse ($topProspects as $prospect) @empty @endforelse
Prospecto Desarrollo Calificación Acciones
{{ $prospect['name'] }}
{{ $prospect['last_contact'] }}
{{ $prospect['development'] }} {{ $prospect['score_label'] }}
No hay prospectos con seguimiento para mostrar.

Ventas por Desarrollo Mes actual

@forelse ($salesByDevelopment as $development)
{{ $development['name'] }} {{ $development['amount'] }}
@empty

No hay ventas registradas este mes.

@endforelse

Distribución de Gastos pie_chart

@if ($expenseDistribution !== [])
{{ number_format((float) ($expenseDistribution[0]['percentage'] ?? 0), 1) }}%
@foreach ($expenseDistribution as $expense)
{{ $expense['name'] }}
{{ $expense['amount'] }}
@endforeach
@else

No hay gastos registrados en el mes actual.

@endif

today Agenda de Hoy

open_in_new
@forelse ($todayAgenda as $appointment)
{{ $appointment['time'] }}
{{ $appointment['meridiem'] }}

{{ $appointment['title'] }}

{{ $appointment['subtitle'] }}

chevron_right
@empty
No hay citas programadas para hoy.
@endforelse
inventory_2
{{ ($inventoryAlert['tone'] ?? null) === 'warning' ? 'warning' : 'inventory' }} {{ $inventoryAlert['title'] ?? 'Inventario' }}

{{ $inventoryAlert['message'] ?? 'No hay alertas de inventario disponibles.' }}

@if (($inventoryAlert['development_id'] ?? null) !== null) Gestionar Inventario @endif
@endsection