@php $cartes = $this->cartes(); $dette = $this->detteTotale(); $categories = $this->categories(); $releve = $this->releve(); $dateOuverture = $this->dateOuvertureCommune(); $aArbitrer = $this->operationsAArbitrer(); $peutSaisir = auth()->user()?->can('tresorerie.gerer') ?? false; @endphp {{-- D'où sortent des dizaines de milliers de dirhams qu'on ne trouve dans aucune opération : le journal ne contient rien avant la mise en service, et le solde le plus gros vient précisément de là. La question ne se pose qu'une fois — l'encart est donc replié. --}} Comment ce solde est établi
Les comptes courants ont été tenus hors application jusqu'au {{ $dateOuverture ?? 'jour de la reprise' }} : ce solde d'ouverture est saisi, car ces années de mouvements ne sont pas dans le journal. Tout ce qui suit cette date en est lu à chaque affichage, sur les catégories « {{ $categories['apport'] }} » et « {{ $categories['recouvrement'] }} », rattachées nominativement à l'associé.
{{-- Ce que la société doit, en un chiffre — le total de toutes les cartes. --}}
Dette envers les associés
Apports non repris, tous comptes confondus. Figure au passif du bilan.
$dette >= 0, 'text-danger-600 dark:text-danger-400' => $dette < 0, ])>{{ dh($dette) }}
{{-- v1.8.2 §A — une carte par associé : le poste de travail du socle, au métier MOBDIE (solde d'ouverture hors journal conservé). --}}
@forelse ($cartes as $carte) @php $positif = $carte['solde'] >= 0; $tierId = $carte['tier_id'] ?? 0; @endphp

{{ $carte['nom'] }}

Compte courant d'associé @if ($carte['orphelin']) — mouvements à rattacher à un associé @endif

{{ $positif ? 'Dû à l\'associé' : 'Dû par l\'associé' }}
{{ dh($carte['solde']) }}
@if ($carte['sparkline'] !== '') @endif {{-- D'où vient le solde : la règle MOBDIE ne change pas. --}}
{{ $dateOuverture ? 'Solde au '.$dateOuverture : "Solde d'ouverture" }}
{{ dh($carte['ouverture']) }}
saisi, tenu hors journal
Apporté depuis
{{ dh($carte['apporte']) }}
lu au journal
Repris depuis
{{ dh($carte['repris']) }}
lu au journal
{{-- Les gestes, sur place. Pré-remplis, jamais muets : c'est la saisie du journal qui s'ouvre pré-garnie, et l'exploitant valide lui-même. --}}
@if ($carte['orphelin']) @if ($this->rattacherAction()->isVisible()) {{ ($this->rattacherAction)(['tierId' => $carte['tier_id']]) }} @endif @else @if ($peutSaisir) Apport Récupération @endif {{-- Le relevé passe par le lecteur : ouvert en direct, il s'affichait plein écran sur iPhone, sans retour ni téléchargement possible (v1.9.0 §D). --}} Relevé PDF {{-- L'envoi direct, sans passer par le téléchargement puis la messagerie : le geste manquait, et sur téléphone il était impraticable (v1.9.0 §D). --}} Envoyer @endif {{ ($this->associe ?: 0) === $tierId ? 'Replier le relevé' : 'Relevé complet' }}

Historique récent

@forelse (array_reverse($carte['historique']) as $mouvement) @empty @endforelse
{{ $mouvement['date']?->format('d/m/Y') ?? '—' }} {{ $mouvement['sens'] }} @if ($mouvement['apport'] > 0) + {{ dh($mouvement['apport']) }} @elseif ($mouvement['reprise'] > 0) − {{ dh($mouvement['reprise']) }} @endif {{ $mouvement['solde'] === null ? '' : dh($mouvement['solde']) }}
Aucun mouvement.
@empty
Aucun compte courant d'associé.
Le premier apport se saisit par le bouton « Apport », en tête de page.
@endforelse
{{-- Ce que le rangement automatique n'a pas osé toucher. Une opération de financement antérieure au solde d'ouverture y est déjà comprise, ou bien relève d'une autre dette que le compte courant — un prêt à terme, une dette ancienne. La reclasser d'office la ferait sortir du passif de financement de son exercice sans jamais entrer dans le compte courant, qui ne lit que l'après-date-de-référence : elle disparaîtrait des deux côtés du bilan. L'application ne tranche pas — elle montre. --}} @if ($aArbitrer->isNotEmpty()) Opérations de financement à arbitrer Antérieures au solde d'ouverture d'un associé : elles y sont déjà comprises, ou bien elles relèvent d'une autre dette.
@foreach ($aArbitrer as $operation) @endforeach
Date Tiers Catégorie Libellé Montant
{{ $operation->date?->format('d/m/Y') ?? '—' }} {{ $operation->tier?->name ?? '—' }} {{ $operation->category?->name ?? '—' }} {{ $operation->note ?: ($operation->tier_label ?: '—') }} {{ dh($operation->amount_ttc) }}
@endif {{-- Le relevé de l'associé déplié : la seule présentation qui permette de vérifier un compte. --}} @if ($this->associe !== null) Relevé — {{ $this->nomAssocieOuvert() ?? 'Associé non désigné' }} @if ($releve === [])
Aucun mouvement pour cet associé.
@else
@foreach ($releve as $ligne) $ligne['ouverture'], 'text-gray-400 dark:text-gray-500' => $ligne['comprise'], ])> @endforeach
Date Nature Libellé Compte Apport Reprise Solde
{{ $ligne['date']?->format('d/m/Y') ?? '—' }} @if ($ligne['ouverture']) Ouverture @else {{ $ligne['sens'] }} @endif {{ $ligne['libelle'] }} @if ($ligne['comprise']) — déjà compris dans le solde d'ouverture @endif {{ $ligne['compte'] ?? '—' }} {{ $ligne['apport'] > 0 ? dh($ligne['apport']) : '' }} {{ $ligne['reprise'] > 0 ? dh($ligne['reprise']) : '' }} {{ $ligne['solde'] === null ? '' : dh($ligne['solde']) }}
@endif
@endif