{{-- « Quantités » : prévu · commandé · livré · validé · reste, poste par poste et par famille. Les MONTANTS ne sortent que si le tableau de bord l'autorise — sinon la page compte des lignes, jamais des dirhams. --}} @php $publique = $publique ?? false; $t = $donnees['tuiles']; $montants = $donnees['afficher_montants']; $nombre = fn ($v) => rtrim(rtrim(number_format((float) $v, 2, ',', ' '), '0'), ','); $vues = $donnees['vues'] ?? ['bordereau' => 'Bordereau']; $vue = $donnees['vue'] ?? 'bordereau'; $reception = $donnees['prochaine_reception'] ?? ['date' => null, 'libelle' => '']; $receptions = $donnees['receptions'] ?? collect(); @endphp {{-- Le sélecteur de vues : Bordereau · Commandes · Réceptions, celles que l'exploitant a laissées. --}} @if (count($vues) > 1)
@foreach ($vues as $cle => $libelle) @if ($publique) $vue === $cle, 'text-gray-600 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-white/5' => $vue !== $cle, ])>{{ $libelle }} @else @endif @endforeach
@endif @if ($vue === 'bordereau')
@forelse ($donnees['familles'] as $famille) @foreach ($famille['lignes'] as $ligne) @endforeach @empty @endforelse
Prestation Prévu Commandé Livré Validé Reste
Famille {{ $famille['famille'] }}{{ $famille['libelle'] ? ' · '.$famille['libelle'] : '' }}
{{ $ligne['poste']->libelle }} {{ $ligne['poste']->numero }} · {{ $ligne['poste']->unite ?: 'unité' }} {{ $nombre($ligne['prevu']) }} {{ $nombre($ligne['commande']) }} {{ $nombre($ligne['livre']) }} {{ $nombre($ligne['valide']) }} {{ $nombre($ligne['reste']) }}
L'équipe prépare votre espace : les prestations du marché apparaîtront ici.
@endif @if ($vue === 'commandes') @forelse ($donnees['lettres'] as $lettre) {{ $lettre->statut->label() }} @if ($montants) {{ number_format($lettre->montantHt(), 2, ',', ' ') }} DH @endif @empty Aucune commande n'a encore été passée. Vos lettres de commande apparaîtront ici. @endforelse @endif {{-- ─── Réceptions : chaque période, son état en mots simples, et ses montants SEULEMENT si le tableau de bord les autorise. Jamais de pénalités, jamais de retenue : ce sont nos affaires, et le client n'a pas à découvrir sur sa page qu'un décompte lui est opposé. ─────────────── --}} @if ($vue === 'receptions') @forelse ($receptions as $periode) {{ $periode->phraseClient() }} @empty Les réceptions du marché apparaîtront ici au fil de l'exécution. @endforelse @endif