{{-- v1.16.0 §B3 — la situation des primes, A4 portrait : les quatre chiffres, les primes acquises par bénéficiaire, les versements, le reste à régler, et le contrôle (interne, jamais pour le cabinet). --}} @php $nombre = fn ($m) => number_format((float) $m, 2, ',', ' '); $veille = $s['du']->copy()->subDay(); $renvoi = fn (array $l) => collect($renvois['par_ligne'][$l['id']] ?? [])->map(fn ($n) => ''.$n.'')->implode(''); $pluriel = fn (int $n, string $mot, string $motPluriel) => $n.' '.($n > 1 ? $motPluriel : $mot); @endphp @extends('pdf.layout') @section('styles') h2 { font-size: 12px; color: #0B0A0A; margin: 18px 0 4px; } h2 .total { float: right; color: #AD5DEC; } .beneficiaire { font-size: 10px; color: #4b5563; margin: 8px 0 2px; } table.data td, table.data th { padding: 4px 5px; font-size: 9px; } table.data td.nowrap { white-space: nowrap; } table.data thead { display: table-header-group; } table.data tr { page-break-inside: avoid; } sup { font-size: 7px; color: #AD5DEC; } .renvois { font-size: 8.5px; color: #6b7280; margin: 4px 0 0; } .texte { margin: 8px 0 0; padding: 6px 8px; background: #F7F2FD; border-left: 3px solid #AD5DEC; font-size: 9.5px; } .controle p { margin: 4px 0; font-size: 9.5px; } .pied { margin-top: 18px; font-size: 8.5px; color: #6b7280; } .cards .sub { font-size: 8.5px; color: #6b7280; margin-top: 2px; } @endsection @section('content')
|
Dû au {{ $veille->format('d/m/Y') }}
{{ $nombre($s['du_debut']) }} DH
{{ $pluriel($s['nb_du_debut'], 'prime', 'primes') }}
|
Acquises sur la période
{{ $nombre($s['acquises']) }} DH
{{ $pluriel($s['nb_clients_acquis'], 'nouveau client payé', 'nouveaux clients payés') }}
|
Versées sur la période
{{ $nombre($s['versees']) }} DH
{{ $pluriel($s['nb_versements'], 'versement', 'versements') }}
|
Dû au {{ $s['au']->format('d/m/Y') }}
{{ $s['du_fin'] < 0 ? 'Avance : '.$nombre(-$s['du_fin']) : $nombre($s['du_fin']) }} DH
{{ $pluriel($s['nb_du_fin'], 'prime', 'primes') }}
|
| Acquise le | Client | Dossier | Encaissement | Facture | Prime | Au {{ $s['au']->format('d/m') }} |
|---|---|---|---|---|---|---|
| {{ $l['acquise_le']?->format('d/m/Y') }} | {{ $l['client'] }} | {{ $l['code'] ?? '—' }} | {{ $l['encaissement'] ?? '—' }} | {{ $l['facture'] ?? '—' }} | {{ $nombre($l['montant']) }} | {{ $l['etat'] }}{!! $renvoi($l) !!} |
| {{ $pluriel($groupe['lignes']->count(), 'prime', 'primes') }} | {{ $nombre($groupe['total']) }} | |||||
Aucune prime acquise sur la période.
@endforelseAucun versement sur la période.
@else| Versé le | Opération | Payé avec | Primes couvertes | Montant |
|---|---|---|---|---|
| {{ $v['date']?->format('d/m/Y') ?? '—' }} | {{ $v['operation'] ? 'n° '.$v['operation'] : '—' }} | {{ $v['compte'] ?? '—' }} | {{ $v['primes']->pluck('client')->implode(', ') }} | {{ $nombre($v['montant']) }} |
| Total versé | {{ $nombre($s['versees']) }} | |||
Rien à régler à cette date.
@else| Client | Bénéficiaire | Acquise le | Note | Prime |
|---|---|---|---|---|
| {{ $l['client'] }} | {{ $l['beneficiaire'] }} | {{ $l['acquise_le']?->format('d/m/Y') }} | @if ($l['enregistree_le'])enregistrée le {{ $l['enregistree_le']->format('d/m') }}@endif{!! $renvoi($l) !!} | {{ $nombre($l['montant']) }} |
| Versée d'avance, à déduire : {{ $l['client'] }} | {{ $l['beneficiaire'] }} | {{ $l['acquise_le']?->format('d/m/Y') }} | {!! $renvoi($l) !!} | − {{ $nombre($l['montant']) }} |
| Total | {{ $nombre($s['reste']['total']) }} | |||
| {{ $l['client'] }} | {{ $l['beneficiaire'] }} | {{ $l['acquise_le']?->format('d/m/Y') }} | {{ $nombre($l['montant']) }} |
Encaissé sans prime ({{ $s['controle']['sans_prime']->count() }})
@forelse ($s['controle']['sans_prime'] as $c){{ $c['client'] }} — {{ $c['detail'] }}. À qualifier : prime due, ou client hors accord.
@emptyAucun.
@endforelsePas encore payés ({{ $s['controle']['pas_payes']->count() }})
{{ $s['controle']['pas_payes']->isEmpty() ? 'Aucun.' : $s['controle']['pas_payes']->pluck('client')->implode(', ').' : la prime viendra avec le premier paiement complet.' }}