@php $logoPath = storage_path('app/public/logo/logo.png'); $logoBase64 = ''; if (file_exists($logoPath)) { $logoBase64 = 'data:image/png;base64,' . base64_encode(file_get_contents($logoPath)); } @endphp @if($logoBase64) @endif
{{ $entreprise['nom'] ?? 'PISTON GABON' }}
{{ $entreprise['adresse'] ?? '' }}
Tél: {{ $entreprise['telephone'] ?? '' }} | Email: {{ $entreprise['email'] ?? '' }}
DEVIS N° {{ $devis->reference }} @php $statusClass = 'status-brouillon'; $statusText = 'BROUILLON'; if ($devis->statut === 'envoye') { $statusClass = 'status-envoye'; $statusText = 'ENVOYÉ'; } elseif ($devis->statut === 'accepte') { $statusClass = 'status-accepte'; $statusText = 'ACCEPTÉ'; } elseif ($devis->statut === 'rejete') { $statusClass = 'status-rejete'; $statusText = 'REJETÉ'; } @endphp {{ $statusText }}
Informations Devis
Date: {{ \Carbon\Carbon::parse($devis->date)->format('d/m/Y') }}
Validité: {{ \Carbon\Carbon::parse($devis->date_validite)->format('d/m/Y') }}
Référence: {{ $devis->reference }}
Client
@if($devis->client)
Nom: {{ $devis->client->raison_sociale ?? $devis->client->nom ?? 'N/A' }}
@if($devis->client->adresse)
Adresse: {{ $devis->client->adresse }}
@endif @if($devis->client->nif)
NIF: {{ $devis->client->nif }}
@endif @else
Client non spécifié
@endif
@foreach($devis->lignes as $ligne) @endforeach
Désignation Qté P.U. HT Remise Total HT
{{ $ligne->produit->nom ?? 'Produit' }} @if($ligne->produit && $ligne->produit->code_barres)
{{ $ligne->produit->code_barres }} @endif
{{ $ligne->quantite }} {{ number_format($ligne->prix_unitaire, 0, ',', ' ') }} @php $remiseAffichee = '-'; $clientRemise = $devis->client ? floatval($devis->client->remise_defaut ?? 0) : 0; // Remise globale du document $docRemiseType = $devis->remise_globale_type ?? 'pourcentage'; $docRemiseValeur = floatval($devis->remise_globale_valeur ?? 0); $ligneRemise = floatval($ligne->remise_valeur ?? 0); // Priorité 1: remise sur la ligne elle-même if ($ligneRemise > 0) { $remiseAffichee = $ligne->remise_type === 'pourcentage' ? number_format($ligneRemise, 0) . '%' : number_format($ligneRemise, 0, ',', ' '); } // Priorité 2: remise globale du document elseif ($docRemiseValeur > 0) { $remiseAffichee = $docRemiseType === 'pourcentage' ? number_format($docRemiseValeur, 0) . '%' : number_format($docRemiseValeur, 0, ',', ' '); } // Priorité 3: remise par défaut du client elseif ($clientRemise > 0) { $remiseAffichee = number_format($clientRemise, 0) . '%'; } @endphp {{ $remiseAffichee }} {{ number_format($ligne->montant_ht ?? ($ligne->quantite * $ligne->prix_unitaire), 0, ',', ' ') }}
Sous-total HT
{{ number_format($devis->sous_total ?? $devis->montant_ht ?? 0, 0, ',', ' ') }} FCFA
@php $remiseGlobale = floatval($devis->remise_globale_valeur ?? 0); $remiseGlobaleType = $devis->remise_globale_type ?? 'pourcentage'; @endphp @if($remiseGlobale > 0 || ($devis->total_remises ?? 0) > 0)
Remises {{ $remiseGlobale > 0 && $remiseGlobaleType === 'pourcentage' ? '(' . $remiseGlobale . '%)' : '' }}
-{{ number_format($devis->total_remises ?? 0, 0, ',', ' ') }} FCFA
@endif @if($devis->taxes && $devis->taxes->count() > 0) @foreach($devis->taxes as $taxe)
{{ $taxe->nom }} ({{ $taxe->taux }}%)
{{ number_format(($devis->sous_total ?? $devis->montant_ht ?? 0) * $taxe->taux / 100, 0, ',', ' ') }} FCFA
@endforeach @endif
TOTAL TTC
{{ number_format($devis->montant_total ?? $devis->montant_ttc ?? 0, 0, ',', ' ') }} FCFA
@if($devis->acompte)
Acompte demandé
Un acompte de {{ number_format($devis->acompte, 0, ',', ' ') }} FCFA est requis à la commande.
@endif
Ce devis est valable jusqu'au {{ \Carbon\Carbon::parse($devis->date_validite)->format('d/m/Y') }}
Politique de retour
Qu'il s'agisse de ses produits, Piston Gabon prend la qualité au sérieux. Si vous n'êtes pas entièrement satisfait de votre achat, vous pouvez retourner le produit dans son emballage d'origine dans un délai de 7 jours suivant la date de livraison pour obtenir un remboursement. Si le produit est endommagé ou défectueux.
@if($devis->notes)
Notes
{{ $devis->notes }}
@endif