@extends('admin.layouts.app') @section('title', __('admin.billing.invoices')) @section('content')

{{ __('admin.billing.invoices') }}

@can('invoices.create') {{ __('admin.billing.new_invoice') }} @endcan @can('invoices.view') @endcan
@if (session('success')) @endif @if (session('error')) @endif
{{ __('admin.billing.total_invoices') }}

{{ $statistics['total'] ?? 0 }}

{{ __('admin.billing.total_revenue') }}

{{ number_format($statistics['totalAmount'] ?? 0, 2) }}

{{ __('admin.billing.total_paid') }}

{{ number_format($statistics['paidAmount'] ?? 0, 2) }}

{{ __('admin.billing.total_pending') }}

{{ number_format($statistics['dueAmount'] ?? 0, 2) }}

@forelse ($invoices as $invoice) @empty @endforelse
{{ __('admin.billing.invoice_no') }} {{ __('admin.billing.patient') }} {{ __('admin.billing.issued_at') }} {{ __('admin.billing.total_amount') }} {{ __('admin.billing.paid_amount') }} {{ __('admin.billing.remaining_amount') }} {{ __('admin.status') }} {{ __('admin.actions') }}
{{ $invoice->invoice_no ?? 'INV-' . $invoice->id }} @if ($invoice->patient) {{ $invoice->patient->full_name }} @else N/A @endif {{ optional($invoice->issued_at)->format('Y-m-d H:i') ?? '-' }} {{ number_format($invoice->total, 2) }} {{ number_format($invoice->paid_amount, 2) }} {{ number_format($invoice->remaining_amount ?? ($invoice->total - $invoice->paid_amount), 2) }} @php $statusBadgeClass = match($invoice->status?->value ?? $invoice->status) { 'paid' => 'success', 'partially_paid' => 'warning', 'unpaid' => 'danger', 'cancelled' => 'secondary', default => 'info' }; @endphp {{ $invoice->status?->label() ?? str((string) $invoice->status)->replace('_', ' ')->title() }}
@can('invoices.view') @endcan @can('invoices.edit') @endcan @can('invoices.delete') @endcan
{{ __('admin.billing.no_invoices_found') }}
@if ($invoices->hasPages()) @endif
@endsection