{{-- New-Unity ERP | app/Modules/Deliveries/Resources/Views/deliveries/show.blade.php | v2.0 | 15/07/2026 --}} {{-- v1.0 — Detalle de Orden de Entrega con items, Document Flow y acciones de flujo. --}} {{-- v2.0 — Vista condicional por status. Modo PICKING mobile-first con validacion PEPS. --}} @extends('layouts.vertical', ['pageTitle' => $delivery->delivery_number]) @section('page-title')

{{ $delivery->delivery_number }} {{ $delivery->so_number }} — {{ $delivery->customer_name }} {{ $delivery->status_label }}

@if($delivery->status === 'draft') {{ __('deliveries.edit') }}
@csrf
@endif @if($delivery->status === 'confirmed')
@csrf
@endif @if($delivery->status === 'picking') {{-- Picking Slip PDF --}} {{ __('deliveries.print-picking-slip') }} {{-- Dispatch solo si picking fue confirmado --}} @if($delivery->picking_confirmed) @else @endif @endif @if($delivery->status === 'dispatched') @endif @if(!in_array($delivery->status, ['dispatched','delivered','invoiced','picking'])) @endif @if(!in_array($delivery->status, ['draft','cancelled'])) {{ __('deliveries.print-remision') }} @endif {{ __('deliveries.back') }}
@endsection @section('content') @if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif {{-- ═══════════════════════════════════════════════════ MODO PICKING — Vista mobile-first para el operador ════════════════════════════════════════════════════════ --}} @if($delivery->status === 'picking')
{{-- Panel principal de picking --}}
{{-- Alert PEPS --}} @if(!$delivery->picking_confirmed)
{{ __('deliveries.picking-in-progress') }} {{ __('deliveries.scan-confirm-pallet') }}
@else
{{ __('deliveries.picking-confirmed') }} {{ __('deliveries.lot-scanned-ready', ['lot' => $delivery->picking_lot_scanned]) }}
@endif {{-- Instrucciones por item --}} @foreach($delivery->items as $item)

{{ __('deliveries.go-to-location') }}

{{-- Ubicacion --}}
{{ __('deliveries.bin-id') }}
{{ $item->bin_id ?? 'N/A' }}
{{ $item->bin_code ?? '--' }}
{{ __('deliveries.lot-number') }}
{{ $item->lot_number ?? 'N/A' }}
PEPS / FIFO
{{-- Producto --}}
{{ __('deliveries.product-upper') }}
{{ $item->product_name }}
SKU: {{ $item->sku ?? '--' }}
{{-- Cantidad --}}
{{ __('deliveries.qty-to-pick') }}
{{ number_format($item->quantity_ordered, 0) }}
{{ $item->unit }}
{{ __('deliveries.take') }}
{{ __('deliveries.full-pallet') }}
{{ __('deliveries.or-partial-qty') }}
@endforeach {{-- SCAN SECTION — Candado PEPS --}} @if(!$delivery->picking_confirmed)

{{ __('deliveries.step2-scan') }}

{{ __('deliveries.scan-qr-info') }} {{ __('deliveries.cannot-dispatch-without') }}
{{ __('deliveries.expected-lot') }} {{ $delivery->items->first()?->lot_number ?? '--' }} {{ __('deliveries.any-other-rejected') }}
@endif
{{-- Document Flow sidebar --}}

{{ __('deliveries.document-flow') }}

@foreach($delivery->statusLogs as $log)
{{ \App\Modules\Deliveries\Models\Delivery::STATUS_LABELS[$log->status_to] ?? ucfirst($log->status_to) }}
{{ $log->notes }}
{{ $log->created_at->format('d/m/Y H:i') }} @if($log->createdBy) — {{ $log->createdBy->name }} @endif
@endforeach
{{-- Info basica --}}

{{ __('deliveries.delivery-info') }}

{{ __('deliveries.sales-order') }}{{ $delivery->so_number }}
{{ __('deliveries.customer') }}{{ $delivery->customer_name }}
{{ __('deliveries.warehouse') }}{{ $delivery->warehouse?->code }}
{{ __('deliveries.total') }}${{ number_format($delivery->total, 2) }}
{{-- AJAX para confirmar picking scan --}} {{-- Modal PEPS Success --}} {{-- Modal PEPS Violation --}} @else {{-- ═══════════════════════════════════════════════════ VISTA NORMAL — Draft / Confirmed / Dispatched / Delivered ════════════════════════════════════════════════════════ --}}
{{-- Header info --}}
{{ __('deliveries.sales-order') }}
{{ $delivery->so_number }}
{{ __('deliveries.customer') }}
{{ $delivery->customer_name }}
@if($delivery->customer_rfc)
{{ $delivery->customer_rfc }}
@endif
{{ __('deliveries.warehouse') }}
{{ $delivery->warehouse?->code }} — {{ $delivery->warehouse?->name }}
{{ __('deliveries.created') }}
{{ $delivery->created_at->format('d/m/Y H:i') }}
{{ $delivery->createdBy?->name }}
@if($delivery->carrier || $delivery->driver_name)
{{ __('deliveries.carrier') }}
{{ $delivery->carrier ?? '--' }}
{{ __('deliveries.driver') }}
{{ $delivery->driver_name ?? '--' }}
{{ __('deliveries.plates') }}
{{ $delivery->vehicle_plates ?? '--' }}
@endif @if($delivery->signed_by)
{{ __('deliveries.signed-by-pod') }}
{{ $delivery->signed_by }}
{{ __('deliveries.delivered-at') }}
{{ $delivery->delivered_at?->format('d/m/Y H:i') }}
@endif
{{-- Items --}}

{{ __('deliveries.items') }}

{{ $delivery->items->count() }} {{ __('deliveries.items-suffix') }}
@forelse($delivery->items as $item) @empty @endforelse
{{ __('deliveries.product') }} SKU {{ __('deliveries.type') }} {{ __('deliveries.lot') }} {{ __('deliveries.bin') }} {{ __('deliveries.qty') }} {{ __('deliveries.unit-price') }} {{ __('deliveries.amount') }} {{ __('deliveries.status') }}
{{ $item->product_name }}
{{ $item->sku ?? '--' }} {{ $item->material_type ?? '--' }} @if($item->lot_number) {{ $item->lot_number }} @else {{ __('deliveries.no-stock') }} @endif @if($item->bin_id) {{ $item->bin_id }}
{{ $item->bin_code }}
@else -- @endif
{{ number_format($item->quantity_ordered, 2) }} ${{ number_format($item->unit_price, 2) }} ${{ number_format($item->amount, 2) }} {{ ucfirst($item->status) }}
{{ __('deliveries.no-items') }}
{{ __('deliveries.subtotal') }} ${{ number_format($delivery->subtotal, 2) }}
{{ __('deliveries.iva-16') }} ${{ number_format($delivery->tax, 2) }}
{{ __('deliveries.total-colon') }} ${{ number_format($delivery->total, 2) }}
{{-- Document Flow --}}

{{ __('deliveries.document-flow') }}

@forelse($delivery->statusLogs as $log)
{{ \App\Modules\Deliveries\Models\Delivery::STATUS_LABELS[$log->status_to] ?? ucfirst($log->status_to) }}
{{ $log->notes }}
{{ $log->created_at->format('d/m/Y H:i') }} @if($log->createdBy) — {{ $log->createdBy->name }} @endif
@empty
{{ __('deliveries.no-log-entries') }}
@endforelse
@if($delivery->notes)

{{ __('deliveries.notes') }}

{{ $delivery->notes }}

@endif
@endif {{-- Modal: Dispatch --}} @if($delivery->status === 'picking' && $delivery->picking_confirmed) @endif {{-- Modal: POD --}} @if($delivery->status === 'dispatched') @endif {{-- Modal: Cancel --}} @if(in_array($delivery->status, ['draft','confirmed'])) @endif @endsection