@extends('layouts.master') @section('title') Besoins Budgetaires @endsection @section('content')

BESOINS BUDGETAIRES

Synthèse Budget - Ressources & Emplois
@foreach($besoinbudgetaires as $besoinbudgetaire) @php $totalRessources = $besoinbudgetaire->budgetressources->sum('montant_inscrit'); $totalDepenses = $besoinbudgetaire->budgetdepenses->sum('montant'); $ecart = $totalRessources - $totalDepenses; @endphp @php $user = auth()->user(); // 🔥 MON STEP (pas le step courant du besoin) $myStep = $besoinbudgetaire->workflow->workflow_steps ->where('role', $user->role) ->first(); $currentStep = $besoinbudgetaire->workflow_step; $isMyStep = $currentStep && $currentStep->role === $user->role; // 🔥 MON HISTORIQUE $myHistory = $besoinbudgetaire->workflowHistories ->where('workflow_step_id', $myStep->id ?? null) ->sortByDesc('id') ->first(); // 🔥 HISTORIQUE ÉTAPE SUIVANTE $nextHistory = $besoinbudgetaire->workflowHistories ->where('workflow_step_id', $myStep->next_step_id ?? null) ->sortByDesc('id') ->first(); // ========================= // 🔥 DÉTERMINATION DU STATUS // ========================= if ($besoinbudgetaire->status === 'brouillon') { $currentStatus = 'brouillon'; } // 🔥 SI J’AI DÉJÀ TRANSMIS elseif ($nextHistory && $nextHistory->status === 'transmis') { $currentStatus = 'transmis'; } // 🔥 SI RETOUR DE L’ÉTAPE SUIVANTE elseif ($nextHistory && $nextHistory->status === 'retourne') { $currentStatus = 'retourne'; } else { $currentStatus = $myHistory->status ?? 'en_attente'; } @endphp @endforeach
Exercice Direction Centre de responsabilité Entité Type Contrat Code Contrat Nom Contrat Immatriculation Responsable Objet Total Ressources Total Emplois Ecart Détails Ressources Détails Emplois Action Motif Si Retour
{{ $besoinbudgetaire->exercice }} {{ $besoinbudgetaire->direction->code ?? '-' }} - {{ $besoinbudgetaire->direction->libelle ?? '-' }} {{ $besoinbudgetaire->centrerespo->code ?? '-' }} - {{ $besoinbudgetaire->centrerespo->libelle_long ?? '-' }} {{ $besoinbudgetaire->entite->libelle ?? '-' }} @if($besoinbudgetaire->type_contrat === 'signe') Signé @elseif($besoinbudgetaire->type_contrat === 'permanent') Permanent @elseif($besoinbudgetaire->type_contrat === 'accessoire') Accessoire @endif {{ $besoinbudgetaire->code_budget ?? '-' }} {{ $besoinbudgetaire->nom_budget ?? '-' }} {{ $besoinbudgetaire->immatriculation ?? '---' }} {{ $besoinbudgetaire->responsable }} {{ $besoinbudgetaire->objet }} {{ number_format($totalRessources, 2, ',', ' ') }} FCFA {{ number_format($totalDepenses, 2, ',', ' ') }} FCFA {{ number_format($ecart, 2, ',', ' ') }} FCFA @if($isMyStep) {{-- 🔵 REÇU → À TRAITER --}} @if($currentStatus === 'transmis')
@csrf
{{-- 🟢 VALIDÉ --}} @elseif($currentStatus === 'valide') Budget validé
@csrf
{{-- 🔵 TRANSMIS → PLUS D’ACTION --}} @elseif($currentStatus === 'transmis') Budget transmis {{-- 🔴 RETOURNÉ --}} @elseif($currentStatus === 'retourne') Budget retourné
@csrf
@endif @else {{-- 👁️ AUTRES ÉTAPES --}} @if($currentStatus === 'valide') Budget validé @elseif($currentStatus === 'transmis') Budget transmis @elseif($currentStatus === 'retourne') Budget retourné @else En attente @endif @endif
@php $retour = $besoinbudgetaire->workflowHistories ->where('status', 'retourne') ->whereNotNull('motif') ->sortByDesc('id') ->first(); @endphp {{ $retour->motif ?? '---' }}
Budget Ressources
@foreach($besoinbudgetaire->budgetressources as $budgetressource) @endforeach
Poste de gestion Compte syscohada Libellé Montant total Montant inscrit JanvierFévrierMarsAvril MaiJuinJuilletAoût SeptembreOctobreNovembreDécembre
{{ $budgetressource->postegestion->code ?? '-' }} - {{ $budgetressource->postegestion->libelle ?? '-' }} {{ $budgetressource->comptesyscohada->code ?? '-' }} - {{ $budgetressource->comptesyscohada->libelle ?? '-' }} {{ $budgetressource->libelle ?? '-' }} {{ number_format($budgetressource->montant_total,0,',',' ') }} FCFA {{ number_format($budgetressource->montant_inscrit,0,',',' ') }} FCFA {{ number_format($budgetressource->janvier,0,',',' ') }} FCFA {{ number_format($budgetressource->fevrier,0,',',' ') }} FCFA {{ number_format($budgetressource->mars,0,',',' ') }} FCFA {{ number_format($budgetressource->avril,0,',',' ') }} FCFA {{ number_format($budgetressource->mai,0,',',' ') }} FCFA {{ number_format($budgetressource->juin,0,',',' ') }} FCFA {{ number_format($budgetressource->juillet,0,',',' ') }} FCFA {{ number_format($budgetressource->aout,0,',',' ') }} FCFA {{ number_format($budgetressource->septembre,0,',',' ') }} FCFA {{ number_format($budgetressource->octobre,0,',',' ') }} FCFA {{ number_format($budgetressource->novembre,0,',',' ') }} FCFA {{ number_format($budgetressource->decembre,0,',',' ') }} FCFA
@php // Regrouper les dépenses par activité $depensesParActivite = $besoinbudgetaire->budgetdepenses->groupBy('activite'); @endphp @foreach($depensesParActivite as $activite => $depenses) {{-- ================= BLOC ACTIVITE ================= --}}
Informations complémentaires - Activité : {{ $activite ?? '-' }}
@php $firstDepense = $depenses->first(); @endphp
Direction : {{ $firstDepense->direction->code ?? '-' }} - {{ $firstDepense->direction->libelle ?? '-' }}
Centre de responsabilité : {{ $firstDepense->centrerespo->code ?? '-' }} - {{ $firstDepense->centrerespo->libelle_long ?? '-' }}
Domaine d’activités : {{ $firstDepense->domaineact->code ?? '-' }} - {{ $firstDepense->domaineact->libelle ?? '-' }}
Axe PSD : {{ $firstDepense->axe->code ?? '-' }} - {{ $firstDepense->axe->libelle ?? '-' }}
Domaine PSD : {{ $firstDepense->domainepsd->code ?? '-' }} - {{ $firstDepense->domainepsd->libelle ?? '-' }}
Programme PSD : {{ $firstDepense->programme->code ?? '-' }} - {{ $firstDepense->programme->libelle ?? '-' }}
Rubrique 5 : {{ $firstDepense->rubrique5->libelle ?? '- - -' }}
{{-- ================= TABLEAU LIGNES DEPENSES ================= --}}
@foreach($depenses as $budgetdepense) @endforeach
Poste de gestion Compte syscohada Nature dépense Nbre Quantite C.U Montant JanvierFévrierMarsAvril MaiJuinJuilletAoût SeptembreOctobreNovembreDécembre
{{ $budgetdepense->postegestion->code ?? '-' }} - {{ $budgetdepense->postegestion->libelle ?? '-' }} {{ $budgetdepense->comptesyscohada->code ?? '-' }} - {{ $budgetdepense->comptesyscohada->libelle ?? '-' }} {{ $budgetdepense->nature ?? '-' }} {{ number_format($budgetdepense->nbre, 2, ',', ' ') }} {{ number_format($budgetdepense->qte, 2, ',', ' ') }} {{ number_format($budgetdepense->c_u,2,',',' ') }} FCFA {{ number_format($budgetdepense->montant,2,',',' ') }} FCFA {{ number_format($budgetdepense->janvier,2,',',' ') }} FCFA {{ number_format($budgetdepense->fevrier,2,',',' ') }} FCFA {{ number_format($budgetdepense->mars,2,',',' ') }} FCFA {{ number_format($budgetdepense->avril,2,',',' ') }} FCFA {{ number_format($budgetdepense->mai,2,',',' ') }} FCFA {{ number_format($budgetdepense->juin,2,',',' ') }} FCFA {{ number_format($budgetdepense->juillet,2,',',' ') }} FCFA {{ number_format($budgetdepense->aout,2,',',' ') }} FCFA {{ number_format($budgetdepense->septembre,2,',',' ') }} FCFA {{ number_format($budgetdepense->octobre,2,',',' ') }} FCFA {{ number_format($budgetdepense->novembre,2,',',' ') }} FCFA {{ number_format($budgetdepense->decembre,2,',',' ') }} FCFA
@endforeach
Affichage de {{ $besoinbudgetaires->firstItem() }} à {{ $besoinbudgetaires->lastItem() }} sur {{ $besoinbudgetaires->total() }} résultats
{{ $besoinbudgetaires->appends(request()->query())->links() }}
@endsection