@extends('layouts.provider') @section('title', 'Détail de l\'achat') @section('page-title', 'Finances > Détail de l\'achat') @section('content')
@if($expense->isOverdue() && $expense->remainingAmount > 0)

{{ format_currency($expense->remainingAmount) }} {{ $expense->currency }} impayés depuis {{ $expense->due_date->diffInDays(now()->startOfDay()) }} jours

Échéance dépassée : {{ $expense->due_date->format('d/m/y') }}

@elseif($expense->due_date && $expense->due_date >= now()->startOfDay() && $expense->due_date <= now()->addDays(7)->endOfDay() && $expense->remainingAmount > 0)

{{ format_currency($expense->remainingAmount) }} {{ $expense->currency }} à échéance dans {{ now()->startOfDay()->diffInDays($expense->due_date) }} jour{{ now()->startOfDay()->diffInDays($expense->due_date) > 1 ? 's' : '' }}

Échéance : {{ $expense->due_date->format('d/m/y') }}

@elseif($expense->remainingAmount > 0 && !$expense->isCancelled())

{{ format_currency($expense->remainingAmount) }} {{ $expense->currency }} à payer

{{ $expense->totalPaid > 0 ? 'Partiellement payé' : 'Achat non payé' }}{{ $expense->due_date ? ' - Échéance : ' . $expense->due_date->format('d/m/y') : '' }}

@endif

{{ $expense->supplier_invoice_no ?? 'Sans facture' }}

{{ $expense->isCancelled() ? 'Annulé' : ($expense->status === 'paid' ? 'Payé' : (in_array($expense->status, ['partial', 'partly_paid']) ? 'Partiellement payé' : 'Impayé')) }}

{{ $expense->expenseType->name ?? 'N/A' }}

{{ $expense->supplier->name ?? 'Sans fournisseur' }}

@if(!$expense->isCancelled()) @if(can_access_module('expenses', 'update')) @endif @if($expense->totalPaid > 0 && can_access_module('expenses', 'cancel')) @elseif($payments->where('amount', '>', 0)->count() > 0 && can_access_module('expenses', 'cancel')) @elseif($payments->count() === 0 && can_access_module('expenses', 'delete'))
@endif @endif
Date: {{ $expense->expense_date->format('d/m/y') }}
Facture: {{ $expense->invoice_date ? $expense->invoice_date->format('d/m/y') : '-' }}
Échéance: {{ $expense->due_date ? $expense->due_date->format('d/m/y') : '-' }}
@if($expense->notes)

{{ $expense->notes }}

@endif
@if($expense->status === 'paid')
Montant
{{ format_currency($expense->amount) }} {{ $expense->currency }}
@else
Montant total
{{ format_currency($expense->amount) }} {{ $expense->currency }}
Payé
{{ format_currency($expense->totalPaid) }} {{ $expense->currency }}
Restant
{{ format_currency($expense->remainingAmount) }} {{ $expense->currency }}
@endif

Paiements ({{ $payments->count() }})

@if($expense->remainingAmount > 0 && !$expense->isCancelled() && can_access_module('expenses', 'add_payment')) @endif
@if($payments->count() > 0)
Payé: {{ format_currency($expense->totalPaid) }} / {{ format_currency($expense->amount) }} {{ $expense->currency }}
@php $paymentNumber = 0; $paymentNumbers = []; foreach($payments->sortBy('id') as $p) { $paymentNumber++; $paymentNumbers[$p->id] = $paymentNumber; } @endphp @foreach($payments->sortByDesc('id') as $payment)
#{{ str_pad($paymentNumbers[$payment->id] ?? 0, 2, '0', STR_PAD_LEFT) }} - {{ $payment->payment_date->format('d/m/y') }} @if($payment->isReversed()) (Annulé) @endif
@if($payment->isCancellation()) @php $cancelledPaymentId = $payment->cancelled_payment_id; $cancelledPaymentNumber = str_pad($paymentNumbers[$cancelledPaymentId] ?? 0, 2, '0', STR_PAD_LEFT); @endphp Annulation · #{{ $cancelledPaymentNumber }} · {{ $payment->notes }} @else @if($payment->payment_method) @switch($payment->payment_method) @case('cash') Espèces @break @case('bank_transfer') Virement @break @case('check') Chèque @break @case('card') Carte @break @default {{ $payment->payment_method }} @endswitch @else - @endif @if($payment->treasuryAccount) · {{ $payment->treasuryAccount->name }} @endif @if($payment->reference) · Réf: {{ $payment->reference }} @endif @endif
{{ $payment->amount < 0 ? '-' : '' }}{{ format_currency(abs($payment->amount)) }}
@if(!$payment->isCancellation() && !$payment->isReversed() && can_access_module('expenses', 'cancel_payment')) @endif
@endforeach
@else

Aucun paiement enregistré

@endif
@if($errors->any()) @endif @foreach($payments as $payment) @if(!$payment->isCancellation() && !$payment->isReversed()) @endif @endforeach @endsection @push('scripts') @endpush