@extends('layouts.app') @section('title', 'Orders') @push('styles') @endpush @section('content')
| ID | Order | Customer Info | Products | Payment Info | Actions | |
|---|---|---|---|---|---|---|
| {{ Str::limit($order->global_order_id, 12) }} |
#{{ $order->order_number }}
@if($order->is_manual)
@if($order->creator)
{{ Str::limit($order->creator->name, 20) }}
@if(Str::startsWith($order->order_number, 'CK-'))
@php
// Extract shortname from order number (CK-XXX-nnn → XXX)
$shortName = $order->creator->short_name ?? (explode('-', $order->order_number)[1] ?? 'N/A');
@endphp
{{ $shortName }} • Checkout
@elseif(Str::startsWith($order->order_number, 'SP-'))
@php
// Extract shortname from order number (SP-XXX-nnn → XXX)
$shortName = $order->creator->short_name ?? (explode('-', $order->order_number)[1] ?? 'N/A');
@endphp
{{ $shortName }} • Sales-pages
@else
Manual Order
@endif
@else
Manual Order
@endif
@elseif($order->store)
{{ Str::limit($order->store->name, 20) }}
{{ $order->store->store_prefix }} • WooCommerce
@elseif($order->webhookSource)
{{ Str::limit($order->webhookSource->name, 20) }}
{{ ucfirst($order->webhookSource->type) }} Webhook
@endif
@if($order->woo_order_id)
WOO: {{ $order->woo_order_id }}
@endif
@php
$statusColors = [
'processing' => 'yellow',
'approval' => 'purple',
'printed' => 'indigo',
'packed' => 'amber',
'completed' => 'green',
'on-hold' => 'orange',
'cancelled' => 'red',
'refunded' => 'blue',
'failed' => 'red'
];
$color = $statusColors[$order->status] ?? 'gray';
@endphp
{{ ucfirst($order->status) }}
|
@php
// Support both WooCommerce format (first_name/last_name) and sales page format (name)
$customerName = $order->billing['name'] ?? trim(($order->billing['first_name'] ?? '') . ' ' . ($order->billing['last_name'] ?? ''));
@endphp
{{ $customerName }}
@php
// Support both WooCommerce format (address_1) and sales page format (address)
$address1 = $order->shipping['address_1'] ?? $order->shipping['address'] ?? $order->billing['address_1'] ?? $order->billing['address'] ?? '';
$address2 = $order->shipping['address_2'] ?? $order->billing['address_2'] ?? '';
@endphp
{{ $address1 }}@if($address2), {{ $address2 }}@endif
{{ ($order->shipping['postcode'] ?? $order->billing['postcode'] ?? '') }} {{ ($order->shipping['city'] ?? $order->billing['city'] ?? '') }}, {{ ($order->shipping['state'] ?? $order->billing['state'] ?? '') }}
{{ $order->billing['email'] ?? '-' }}
@if(isset($order->billing['phone']))
@endif
|
@php
$expandedItems = $order->getExpandedLineItems();
@endphp
@if($expandedItems)
@foreach($expandedItems as $index => $expandedItem)
@if($index < 3)
@php
$item = $expandedItem['item'];
$isBundle = $expandedItem['is_bundle'];
$bundleDetails = $expandedItem['bundle_details'];
@endphp
@else
-
@endif
{{ $item['quantity'] ?? 1 }}x {{ Str::limit($item['name'] ?? 'Item', 30) }}
@if($isBundle && $bundleDetails)
@foreach($bundleDetails['items'] as $bundleItem)
- {{ $bundleItem['name'] ?? $bundleItem['sku'] }} x{{ $bundleItem['quantity'] }}
@endforeach
@endif
+{{ count($expandedItems) - 3 }} more
@endif
|
@php
$paymentColors = [
'cod' => 'amber',
'bacs' => 'blue',
'stripe' => 'indigo',
'paypal' => 'yellow',
'bayarcash-wc' => 'green',
'duitnowqr-wc' => 'sky',
'linecredit-wc' => 'purple'
];
$pColor = $paymentColors[$order->payment_method] ?? 'gray';
@endphp
{{ $order->payment_method_title }}
{{ $order->formatCurrency() }}
@if($order->date_created)
@php
// COD = Unpaid unless status is completed
// Online Banking = Paid if status is processing or completed
$isPaid = $order->isCOD()
? ($order->status === 'completed')
: in_array($order->status, ['processing', 'completed']);
@endphp
{{ $order->date_created->format('M d, Y') }}
{{ $order->date_created->format('H:i:s') }}
@else
N/A
@endif
Status:
{{ $isPaid ? 'Paid' : 'Unpaid' }}
|
@if($order->whatsapp_sent_at)
Tracking Sent
@else
@endif
@if($order->status !== 'completed')
@else
@else
Completed
@endif
|
|
| No orders found. @if(request()->hasAny(['search', 'status', 'payment_method', 'store_id'])) Clear filters @endif | ||||||
You are about to perform this action on the following orders:
Processing bulk action...
Please wait, this may take a moment.