Order Items
@php
$orderItems = [];
// Prefer orderItems relation so menu item images are available.
if ($order->orderItems && $order->orderItems->count() > 0) {
$orderItems = $order->orderItems->toArray();
} elseif ($order->items) {
if (is_string($order->items)) {
$orderItems = json_decode($order->items, true);
} elseif (is_array($order->items)) {
$orderItems = $order->items;
}
}
if (!is_array($orderItems)) {
$orderItems = [];
}
@endphp
@if(count($orderItems) > 0)
@foreach($orderItems as $item)
@php
// Safe extraction of item details
$itemName = 'Item';
$itemQty = 1;
$itemPrice = 0;
$itemTotal = 0;
$itemImage = null;
if (is_array($item)) {
$itemName = $item['name']
?? $item['item_name']
?? data_get($item, 'menu_item.name')
?? $item['title']
?? 'Item';
$itemQty = (int) ($item['quantity'] ?? $item['qty'] ?? 1);
$itemPrice = (float) ($item['unit_price'] ?? $item['price'] ?? 0);
$itemTotal = (float) ($item['total_price'] ?? $item['total'] ?? ($itemPrice * $itemQty));
$itemImage = $itemImageUrl(
$item['image']
?? $item['image_url']
?? $item['thumbnail']
?? $item['photo']
?? $item['images']
?? data_get($item, 'menu_item.image')
?? data_get($item, 'menu_item.images')
?? null
);
if ($itemPrice <= 0 && $itemQty > 0 && $itemTotal > 0) {
$itemPrice = $itemTotal / $itemQty;
}
}
@endphp
@if($itemImage)

@else
@endif
{{ $itemName }}
Qty: {{ $itemQty }} x {{ $currencySymbol }}{{ number_format($itemPrice, App\Models\AppSetting::currencyDecimals()) }}
{{ $currencySymbol }}{{ number_format($itemTotal ?? ($itemPrice * $itemQty), App\Models\AppSetting::currencyDecimals()) }}
@endforeach
@else
No items found for this order
@endif
Subtotal
{{ $currencySymbol }}{{ number_format($order->subtotal, App\Models\AppSetting::currencyDecimals()) }}
Delivery Fee
{{ $currencySymbol }}{{ number_format($order->delivery_fee, App\Models\AppSetting::currencyDecimals()) }}
Platform Fee
{{ $currencySymbol }}{{ number_format($order->platform_fee ?? 0, App\Models\AppSetting::currencyDecimals()) }}
Taxes & Charges
{{ $currencySymbol }}{{ number_format($order->tax, App\Models\AppSetting::currencyDecimals()) }}
@if($order->discount > 0)
Discount
-{{ $currencySymbol }}{{ number_format($order->discount, App\Models\AppSetting::currencyDecimals()) }}
@endif
Total Bill Payable
{{ $currencySymbol }}{{ number_format($order->total, App\Models\AppSetting::currencyDecimals()) }}