@extends('layouts.app') @section('title', Auth::user()->isAdmin() ? 'Todas las Citas' : 'Mis Citas') @section('content') @include('layouts.title-header', [ 'title' => Auth::user()->isAdmin() ? 'Todas las Citas' : 'Mis Citas', 'breadcrumbs' => [ ['text' => Auth::user()->isAdmin() ? 'Dashboard' : 'Cuenta', 'url' => Auth::user()->isAdmin() ? route('dashboard') : null], ['text' => Auth::user()->isAdmin() ? 'Todas las Citas' : 'Mis Citas'] ] ])
{{ Auth::user()->isAdmin() ? 'Todas las Citas' : 'Mis Citas' }}
Nueva Cita
@if(session('success')) @endif @if(session('error')) @endif @if($citas->count() > 0)
@if(Auth::user()->isAdmin()) @endif @foreach($citas as $cita) @if(Auth::user()->isAdmin()) @endif @endforeach
ServiciosClienteFecha/Hora Estado Total Imágenes Acciones
@if($cita->citaServicios->count() > 0) @php // Organizar servicios por categoría $serviciosPorCategoria = $cita->citaServicios->groupBy('categoria'); $serviciosManicura = $serviciosPorCategoria->get('manicura', collect()); $serviciosPedicura = $serviciosPorCategoria->get('pedicura', collect()); // Obtener servicios principales (tipo) y adicionales $manicuraPrincipal = $serviciosManicura->where('subcategoria', 'tipo')->first(); $manicuraAdicionales = $serviciosManicura->where('subcategoria', 'adicional'); $pedicuraPrincipal = $serviciosPedicura->where('subcategoria', 'tipo')->first(); $pedicuraAdicionales = $serviciosPedicura->where('subcategoria', 'adicional'); @endphp
@if($manicuraPrincipal)
{{ $manicuraPrincipal->nombre_servicio }} @if($manicuraAdicionales->count() > 0) +{{ $manicuraAdicionales->count() }} @endif
@endif @if($pedicuraPrincipal)
{{ $pedicuraPrincipal->nombre_servicio }} @if($pedicuraAdicionales->count() > 0) +{{ $pedicuraAdicionales->count() }} @endif
@endif
@elseif($cita->servicios_detallados) @php // Para citas antiguas, usar datos JSON $serviciosDetallados = json_decode($cita->servicios_detallados, true) ?? []; $serviciosPorCategoria = collect($serviciosDetallados)->groupBy('categoria'); $serviciosManicura = $serviciosPorCategoria->get('manicura', collect()); $serviciosPedicura = $serviciosPorCategoria->get('pedicura', collect()); $manicuraPrincipal = $serviciosManicura->where('subcategoria', 'tipo')->first(); $manicuraAdicionales = $serviciosManicura->where('subcategoria', 'adicional'); $pedicuraPrincipal = $serviciosPedicura->where('subcategoria', 'tipo')->first(); $pedicuraAdicionales = $serviciosPedicura->where('subcategoria', 'adicional'); @endphp
@if($manicuraPrincipal)
{{ $manicuraPrincipal['nombre'] }} @if($manicuraAdicionales->count() > 0) +{{ $manicuraAdicionales->count() }} @endif
@endif @if($pedicuraPrincipal)
{{ $pedicuraPrincipal['nombre'] }} @if($pedicuraAdicionales->count() > 0) +{{ $pedicuraAdicionales->count() }} @endif
@endif
@elseif($cita->servicios_detallados) @php // Para citas antiguas, usar datos JSON $serviciosDetallados = json_decode($cita->servicios_detallados, true) ?? []; $serviciosPorCategoria = collect($serviciosDetallados)->groupBy('categoria'); $serviciosManicura = $serviciosPorCategoria->get('manicura', collect()); $serviciosPedicura = $serviciosPorCategoria->get('pedicura', collect()); $manicuraPrincipal = $serviciosManicura->where('subcategoria', 'tipo')->first(); $manicuraAdicionales = $serviciosManicura->where('subcategoria', 'adicional'); $pedicuraPrincipal = $serviciosPedicura->where('subcategoria', 'tipo')->first(); $pedicuraAdicionales = $serviciosPedicura->where('subcategoria', 'adicional'); @endphp
@if($manicuraPrincipal)
{{ $manicuraPrincipal['nombre'] }} @if($manicuraAdicionales->count() > 0) +{{ $manicuraAdicionales->count() }} @endif
@endif @if($pedicuraPrincipal)
{{ $pedicuraPrincipal['nombre'] }} @if($pedicuraAdicionales->count() > 0) +{{ $pedicuraAdicionales->count() }} @endif
@endif
@else Sin servicios @endif
{{ $cita->user->full_name }}
{{ $cita->user->full_name }}
{{ $cita->user->userPoints->getBadge() ?? '👤 Nuevo' }}
{{ \Carbon\Carbon::parse($cita->fecha_hora)->format('d/m') }}
{{ \Carbon\Carbon::parse($cita->fecha_hora)->format('H:i') }}
{{ ucfirst($cita->estado) }}
${{ number_format($cita->total_final_cita ?? 0, 2) }}
@if($cita->citaImagenes->count() > 0) {{ $cita->citaImagenes->count() }} @else - @endif
@if(Auth::user()->isAdmin()) @if(in_array($cita->estado, ['pendiente', 'cancelado', 'confirmado', 'completado'])) @if(in_array($cita->estado, ['pendiente', 'cancelado'])) @endif @if(in_array($cita->estado, ['pendiente', 'confirmado'])) @endif @if($cita->estado === 'confirmado') @endif @if($cita->estado === 'completado') @endif @endif @else @if($cita->estado === 'pendiente') @endif @if($cita->estado === 'confirmado') @endif @if($cita->estado === 'completado') @endif @endif
{{ $citas->links() }}
@else

{{ Auth::user()->isAdmin() ? 'No hay citas registradas' : 'No tienes citas programadas' }}

{{ Auth::user()->isAdmin() ? 'Los usuarios podrán crear citas desde su panel.' : '¿Quieres programar tu primera cita?' }}

@if(!Auth::user()->isAdmin()) Programar Cita @endif
@endif
@if(!Auth::user()->isAdmin()) @endif