@extends('layouts.admin') @section('page-title', 'Order #' . $order->order_number) @section('content')

Order #{{ $order->order_number }}

Back to Orders

Order Items

@foreach($order->items as $item) @endforeach
ProductWarehouseFulfillmentQtyPriceSubtotal
{{ $item->product_name ?? ($item->product?->name ?? 'Deleted') }} @if(($item->warehouse ?? 'ghana') === 'china') 🇨🇳 China @else 🇬🇭 Ghana @endif @php $fStatus = $item->fulfillment_status ?? 'pending'; $fBadge = match($fStatus) { 'pending' => 'bg-gray-100 text-gray-600', 'in_transit' => 'bg-blue-100 text-blue-700', 'arrived' => 'bg-amber-100 text-amber-700', 'shipped' => 'bg-purple-100 text-purple-700', 'delivered' => 'bg-green-100 text-green-700', default => 'bg-gray-100 text-gray-600' }; $fLabel = match($fStatus) { 'pending' => 'Pending', 'in_transit' => 'In Transit', 'arrived' => 'Arrived', 'shipped' => 'Shipped', 'delivered' => 'Delivered', default => 'Pending' }; @endphp {{ $fLabel }} @if($item->expected_arrival && $fStatus === 'pending')

ETA: {{ $item->expected_arrival->format('M d, Y') }}

@endif
{{ $item->quantity }} ${{ number_format($item->price, 2) }} ${{ number_format($item->subtotal, 2) }}
@if($order->hasMixedWarehouses())

⚠️ Mixed warehouse order

Ghana items can ship immediately. China items need freight processing first.

@endif

Subtotal: ${{ number_format($order->subtotal, 2) }}

@if($order->shipping_cost > 0)

Shipping: ${{ number_format($order->shipping_cost, 2) }}

@endif @if($order->discount > 0)

Discount: -${{ number_format($order->discount, 2) }}

@endif @if($order->tax > 0)

Tax: ${{ number_format($order->tax, 2) }}

@endif

Total: ${{ number_format($order->total, 2) }}

@if($order->shipments->count() > 0)

Shipments

@foreach($order->shipments as $shipment)
@if($shipment->warehouse === 'china') 🇨🇳 China @else 🇬🇭 Ghana @endif @php $sBadge = match($shipment->status) { 'pending' => 'bg-gray-100 text-gray-600', 'processing' => 'bg-amber-100 text-amber-700', 'in_transit' => 'bg-blue-100 text-blue-700', 'out_for_delivery' => 'bg-purple-100 text-purple-700', 'delivered' => 'bg-green-100 text-green-700', default => 'bg-gray-100 text-gray-600' }; @endphp {{ ucfirst(str_replace('_', ' ', $shipment->status)) }}
@if($shipment->tracking_number) {{ $shipment->tracking_number }} @endif
@if($shipment->carrier)

Carrier: {{ $shipment->carrier }}

@endif @if($shipment->notes)

{{ $shipment->notes }}

@endif
@csrf @method('PATCH')
@endforeach
@endif @if($order->notes)

Order Notes

{{ $order->notes }}

@endif

Order Info

Status: {{ ucfirst($order->status) }}
Payment:{{ $order->payment_status }}
Date:{{ $order->created_at->format('M d, Y') }}

Customer

{{ $order->customer->name }}

{{ $order->customer->email }}

{{ $order->customer->phone ?: 'N/A' }}

@if($order->customer->phone) Call @endif

Shipping Address

@php $addr = is_array($order->shipping_address) ? $order->shipping_address : json_decode($order->shipping_address, true); @endphp @if($addr)

{{ $addr['first_name'] }} {{ $addr['last_name'] }}

{{ $addr['address_line1'] }}

@if(!empty($addr['address_line2']))

{{ $addr['address_line2'] }}

@endif

{{ $addr['city'] }}, {{ $addr['state'] }} {{ $addr['postal_code'] }}

{{ $addr['country'] }}

@if(!empty($addr['phone']))

Phone: {{ $addr['phone'] }}

@endif @else

No shipping address available

@endif
@csrf @method('PATCH')

Update Status

@if($order->status === 'pending' && $order->payment_status === 'pending')

Order Actions

@if($order->shipping_address['phone'] ?? $order->customer?->phone) Call Customer @endif
@csrf @method('PATCH')
@endif @if($order->status === 'confirmed' && $order->payment_status === 'pending')
@csrf @method('PATCH')
@endif @if($order->status === 'processing' && $order->payment_status === 'pending')

Process Payment in POS

Complete payment for this order

@endif
@endsection