@if($panneau->sousTraitants->isEmpty())
Pour l'instant, aucun sous traitant n'est renseigné.
À venir prochainement...
@else
@php
// Grouper et trier les sous-traitants
$sousTraitantsGroupes = $panneau->sousTraitants
->sortBy('numeroOrdre')
->groupBy('lot_id')
->sortBy(function($groupe, $lotId) {
if (!$lotId) return 999999; // Sans lot à la fin
$lot = $groupe->first()->lot;
if (!$lot) return 999999;
$ordrePrincipal = $lot->lotParent->numeroOrdre ?? $lot->numeroOrdre;
return sprintf('%04d-%05d', $ordrePrincipal, $lot->lotParent ? $lot->id : 0);
})
->values();
@endphp
@foreach($sousTraitantsGroupes as $sousTraitantsDuLot)
@php
$premierSousTraitant = $sousTraitantsDuLot->first();
$lot = $premierSousTraitant->lot;
@endphp
{{-- En-tête du lot --}}
@if($lot)
Lot n° {{ $lot->numeroOrdre ?? 'N.C' }} - {{ $lot->nom }}
@else
Lot non renseigné
@endif
{{-- Liste des sous-traitants --}}
@foreach($sousTraitantsDuLot as $sousTraitant)
{{ $sousTraitant->nom }}
{{ $sousTraitant->designation }}
{{ $sousTraitant->adresse }}
{{ $sousTraitant->codePostal }} {{ $sousTraitant->ville }}
@if($sousTraitant->numeroTel)
{{ preg_replace('/(\d{2})(?=\d)/', '$1 ', $sousTraitant->numeroTel) }}
@endif
@endforeach
{{-- Séparateur entre les groupes de lots --}}
@if(!$loop->last)
@endif
@endforeach
@endif