@php $statusMap = [ 'pending' => ['Pendiente', 'warning'], 'confirmed' => ['Confirmado', 'info'], 'at_restaurant' => ['En restaurante', 'primary'], 'en_route' => ['En camino', 'secondary'], 'delivered' => ['Entregado', 'success'], 'cancelled' => ['Cancelado', 'danger'], ]; [$statusLabel, $statusColor] = $statusMap[$delivery->status] ?? ['Pendiente', 'secondary']; $fmtDate = function ($dt) { if (!$dt) return '-'; return ucfirst($dt->locale('es')->translatedFormat('d F Y')); }; $fmtTime = function ($dt) { if (!$dt) return ''; return $dt->format('h:i') . ' ' . ucfirst(strtolower($dt->format('A'))); }; @endphp @extends('layouts/layoutMaster') @section('title', 'Orden #' . $delivery->id) @section('vendor-style') @vite([ 'resources/assets/vendor/libs/animate-css/animate.scss', 'resources/assets/vendor/libs/sweetalert2/sweetalert2.scss' ]) @endsection @section('vendor-script') @vite([ 'resources/assets/vendor/libs/sweetalert2/sweetalert2.js' ]) @endsection @section('page-script') @endsection @section('content')
Orden #{{ $delivery->id }} {{ $statusLabel }} @if ($delivery->is_urgent) Urgente @endif {{ $delivery->payment_method === 'cash' ? 'Efectivo' : 'Wallet' }}

{{ $fmtDate($delivery->created_at) }} · {{ $fmtTime($delivery->created_at) }}

Volver
Detalles de la entrega
Restaurante
{{ $delivery->restaurant?->name ?? '-' }}
{{ $delivery->restaurant?->zone?->name ?? '—' }}
{{ $delivery->restaurant?->address ?? '—' }}
Repartidor
{{ $delivery->courier?->name ?? 'Sin asignar' }}
{{ $delivery->courier?->phone ?? '—' }}
{{ $delivery->courier?->zone?->name ?? '—' }}

Cliente
{{ $delivery->customer_name ?? 'Por definir' }}
{{ $delivery->customer_phone ?: '-' }}
Dirección de entrega
{{ $delivery->delivery_address ?? 'Por definir' }}
@if ($delivery->delivery_address_extra)
{{ $delivery->delivery_address_extra }}
@endif @if ($delivery->delivery_lat && $delivery->delivery_lng)
({{ $delivery->delivery_lat }}, {{ $delivery->delivery_lng }})
@endif
@if ($delivery->notes)

Notas
{{ $delivery->notes }}
@endif
Seguimiento
  • Pedido creado
    {{ $fmtDate($delivery->created_at) }} · {{ $fmtTime($delivery->created_at) }}

    Restaurante: {{ $delivery->restaurant?->name ?? '-' }}

  • @if ($delivery->is_urgent && $delivery->urgent_requested_at)
  • Solicitud urgente
    {{ $fmtDate($delivery->urgent_requested_at) }} · {{ $fmtTime($delivery->urgent_requested_at) }}

    Se solicitó un repartidor urgente.

  • @endif
  • Repartidor
    {{ $delivery->courier ? 'Asignado' : 'En espera' }}

    {{ $delivery->courier?->name ?? 'Sin asignar' }}

  • @if ($delivery->status === 'cancelled' && $delivery->cancelled_at)
  • Cancelado
    {{ $fmtDate($delivery->cancelled_at) }} · {{ $fmtTime($delivery->cancelled_at) }}

    {{ $delivery->cancel_reason ?? 'Cancelado por administrador.' }}

  • @endif @if ($delivery->status === 'delivered' && $delivery->completed_at)
  • Entregado
    {{ $fmtDate($delivery->completed_at) }} · {{ $fmtTime($delivery->completed_at) }}

    Entrega completada.

  • @endif
Configuración de orden
{{ $statusLabel }} @if ($delivery->is_urgent) Urgente @endif {{ $delivery->payment_method === 'cash' ? 'Efectivo' : 'Wallet' }}
Los cambios requieren confirmación.
Repartidor
@php $courierName = $delivery->courier?->name ?? 'Sin asignar'; $courierInitials = collect(explode(' ', $courierName)) ->filter() ->map(fn ($part) => strtoupper(mb_substr($part, 0, 1))) ->take(2) ->implode(''); @endphp
{{ $courierInitials ?: '-' }}
{{ $courierName }}
{{ $delivery->courier?->phone ?? '—' }}
{{ $delivery->courier?->is_online ? 'En línea' : 'Desconectado' }}
Cliente
@php $customerName = $delivery->customer_name ?? 'Por definir'; $customerInitials = collect(explode(' ', $customerName)) ->filter() ->map(fn ($part) => strtoupper(mb_substr($part, 0, 1))) ->take(2) ->implode(''); @endphp
{{ $customerInitials ?: '-' }}
{{ $customerName }}
{{ $delivery->customer_phone ?: '-' }}
{{ $delivery->delivery_address ?? 'Por definir' }}
@if ($delivery->delivery_address_extra)
{{ $delivery->delivery_address_extra }}
@endif
Restaurante
@php $restName = $delivery->restaurant?->name ?? 'Restaurante'; $restInitials = collect(explode(' ', $restName)) ->filter() ->map(fn ($part) => strtoupper(mb_substr($part, 0, 1))) ->take(2) ->implode(''); @endphp
{{ $restInitials ?: '-' }}
{{ $restName }}
{{ $delivery->restaurant?->phone ?? '—' }}
{{ $delivery->restaurant?->address ?? '—' }}
Zona: {{ $delivery->restaurant?->zone?->name ?? '—' }}
Pago
Metodo {{ $delivery->payment_method === 'cash' ? 'Efectivo' : 'Wallet' }}
Costo €{{ number_format($delivery->delivery_fee ?? 0, 2) }}
Transferido {{ $delivery->fee_transferred_at ? 'Si' : 'No' }}
Acciones
Ver restaurante @if ($delivery->courier_id) Ver repartidor @endif
@endsection