@extends('layouts.app') @section('content')

Commande #{{ $order->id }}

du {{ $order->created_at->format('d/m/Y à H:i') }}
Client : {{ $order->user->name ?? $order->customer_name }}
@if($order->payment_status == 'paye') Payé @elseif($order->payment_status == 'rembourse' || $order->payment_status == 'remboursé') Remboursé @else En attente de paiement @endif @if($order->status == 'en_attente') ⏳ En attente @elseif($order->status == 'en_cours') 🔨 En cours @elseif($order->status == 'expedie') 🚚 Expédié @elseif($order->status == 'livre') ✅ Livré @endif
Articles commandés {{ $order->items->count() }} article(s)
@foreach($order->items as $item) @php // 1. Décodage des données (JSON) $customData = is_string($item->custom_data) ? json_decode($item->custom_data, true) : ($item->custom_data ?? []); // 2. RECUPERATION DE L'APERÇU (Le Mug avec le design) $previewRaw = $item->preview_image ?? ($customData['preview'] ?? null); $previewUrl = null; if ($previewRaw) { if (str_starts_with($previewRaw, 'data:image')) { $previewUrl = $previewRaw; } elseif (str_starts_with($previewRaw, 'storage/')) { $previewUrl = asset($previewRaw); } else { $previewUrl = asset('storage/' . $previewRaw); } } // Fallback : Image produit de base $finalImageToDisplay = $previewUrl ?? ($item->product->image_path ? asset('storage/' . $item->product->image_path) : null); // 3. RECUPERATION DU FICHIER SOURCE (Pour impression) $sourceRaw = $item->source_image_path ?? $item->user_file ?? $item->custom_image_path ?? ($customData['image'] ?? null); $downloadUrl = null; if ($sourceRaw) { if (str_starts_with($sourceRaw, 'storage/')) { $downloadUrl = asset($sourceRaw); } else { $downloadUrl = asset('storage/' . $sourceRaw); } } @endphp @endforeach
@if($finalImageToDisplay) Aperçu du résultat @else
@endif @if($previewUrl) Aperçu Client @endif
{{ $item->product_name }}
Réf: #{{ $item->product_id }}
@if(!empty($customData))
Détails de personnalisation :
    @foreach($customData as $key => $value) @if(!in_array($key, ['image', 'file', 'preview', 'price_adjustment', 'source_image_path', 'preview_image']))
  • {{ str_replace('_', ' ', $key) }} : {{ $value }}
  • @endif @endforeach
@endif @if($downloadUrl) @endif
{{ $item->quantity }} x {{ number_format($item->price, 2) }} €
{{ number_format($item->quantity * $item->price, 2) }} €
Sous-total {{ number_format($order->total_price, 2) }} €
Total {{ number_format($order->total_price, 2) }} €

Discussion & B.A.T

@forelse($order->messages as $message)
{!! $message->content !!}
{{ $message->user->name ?? 'Système' }} • {{ $message->created_at->format('d/m H:i') }}
@empty

Aucun message pour l'instant.

@endforelse
@csrf

Envoyer un aperçu (B.A.T)

Le client recevra une notification pour valider cette maquette.

@csrf

Gestion du Paiement

@csrf @method('PATCH')

Client

{{ substr($order->customer_name, 0, 1) }}

{{ $order->customer_name }}

{{ $order->customer_email }}

Adresse de livraison

{{ $order->shipping_address }}

Télécharger Facture
@endsection