@php $controles = $this->controles(); $perimetre = $this->perimetre(); @endphp @if ($perimetre['information'])
{{ $perimetre['information'] }}
@endif @php $fermeture = \App\Support\Portail::raisonsDeFermeture(); @endphp @if ($fermeture !== []) {{-- v1.12.0 §B — pourquoi le formulaire en ligne est fermé, une ligne par cause. --}}
Formulaire en ligne : fermé au public
@endif
@foreach ($controles as $c) @php $couleur = $c['nombre'] === 0 ? 'success' : ($c['gravite'] === 'bloquant' ? 'danger' : 'warning'); @endphp {{ $c['numero'] }}. {{ $c['intitule'] }} {{ $c['nombre'] === 0 ? 'aucun' : $c['nombre'].' · '.$c['gravite'] }} {{ $c['pourquoi'] }} @if ($c['nombre'] > 0)
@foreach ($c['lignes'] as $l) @endforeach
Facture Client Date Montants Paiement Opération Constat
{{ $l['facture'] ?? '—' }} {{ $l['client'] ?? '—' }} {{ $l['date'] ?? '—' }} {{ $l['montants'] ?? '—' }} {{ $l['paiement'] ? 'n° '.$l['paiement'] : '—' }} {{ $l['operation'] ? 'n° '.$l['operation'] : '—' }} {{ $l['detail'] }}
Ouvrir @if ($c['code'] === 'paiement_sans_operation' && ($l['jumelle'] ?? null)) @if ($this->relierAction()->isVisible()) {{ ($this->relierAction)(['paiement' => $l['paiement'], 'jumelle' => $l['jumelle']]) }} @endif @endif {{-- v1.20.0 §C.6 — l'échéance proposée, simulée puis confirmée. --}} @if ($c['code'] === 'encaissement_sans_facture' && ($l['echeance_proposee'] ?? null)) @if ($this->rattacherEcheanceAction()->isVisible()) {{ ($this->rattacherEcheanceAction)(['operation' => $l['operation'], 'echeance' => $l['echeance_proposee']]) }} @endif @endif @if ($c['code'] === 'statut_ecrase' && $l['facture_id']) @if ($this->remettreAPayeeAction()->isVisible()) {{ ($this->remettreAPayeeAction)(['facture' => $l['facture_id']]) }} @endif @endif {{-- v1.16.1 §E — « C'est voulu », sur un constat à vérifier. --}} @if ($c['gravite'] !== 'bloquant' && isset($l['ecart_cle']) && $this->ecarterAction()->isVisible()) {{ ($this->ecarterAction)(['type' => \App\Domaines\Facturation\Services\ControleFacturesOperations::typeEcart($c['code']), 'cle' => $l['ecart_cle'], 'empreinte' => $l['ecart_empreinte'], 'libelle' => $c['numero'].'. '.$c['intitule'].' — '.$l['detail']]) }} @endif
@endif @foreach ($c['informations'] as $info)

{{ $info }}

@endforeach @if (! empty($c['ecartees'])) @include('filament.pages.partials.constats-ecartes', ['ecartes' => collect($c['ecartees'])->map(fn ($l) => ['texte' => ($l['facture'] ? $l['facture'].' · ' : '').$l['detail'], 'ecart' => $l['ecart']])->all()]) @endif
@endforeach
{{-- v1.16.1 §E — le diagnostic des données : ses constats « à décider », et « C'est voulu ». --}} Les familles de « mobdie:diagnostic » ; ce que vous déclarez voulu ne revient plus, sauf si ses données changent. @if (! $voirDiagnostic) Afficher le diagnostic des données @else @foreach ($this->familles() as $f) @php $aDecider = collect($f['lignes'])->filter(fn ($l, $i) => ($f['cles'][$i] ?? null) !== null); @endphp @if ($aDecider->isNotEmpty() || ! empty($f['ecartees']))
{{ $f['numero'] }}. {{ $f['titre'] }}
    @foreach ($aDecider as $i => $ligne)
  • {{ implode(' · ', array_filter(array_slice($ligne, 0, 4), fn ($v) => filled($v) && $v !== '—')) }} — {{ $ligne[4] ?? '' }} @if ($this->ecarterAction()->isVisible()) {{ ($this->ecarterAction)(['type' => \App\Services\DiagnosticDonnees::typeEcart($f['numero']), 'cle' => $f['cles'][$i], 'empreinte' => $f['cles'][$i], 'libelle' => $f['numero'].'. '.implode(' · ', array_slice($ligne, 0, 4))]) }} @endif
  • @endforeach
@if (! empty($f['ecartees'])) @include('filament.pages.partials.constats-ecartes', ['ecartes' => collect($f['ecartees'])->map(fn ($e) => ['texte' => implode(' · ', array_slice($e['ligne'], 0, 4)), 'ecart' => $e['ecart']])->all()]) @endif
@endif @endforeach @endif