@php $typeColor = fn(string $type) => $type === 'jangka_panjang' ? 'primary' : 'warning'; @endphp
Daftar pinjaman anggota. Pinjaman immutable — koreksi salah-input lewat reversal.
Pinjaman Aktif
{{ number_format($stats['active'], 0, ',', '.') }}
Lunas
{{ number_format($stats['settled'], 0, ',', '.') }}
Tunggakan
{{ number_format($stats['overdue'], 0, ',', '.') }}
Sisa Pokok Aktif
Rp {{ number_format((float) $stats['outstanding'], 0, ',', '.') }}
| No. Pinjaman | Anggota | Jenis | Jumlah | Status / Progres | Pencairan | Aksi |
|---|---|---|---|---|---|---|
|
{{ $loan->loan_number }}
@if ($loan->overdue_count > 0)
|
{{ $loan->member?->full_name ?? '—' }}
{{ $loan->member?->member_number }} |
|
Rp {{ number_format((float) $loan->principal_amount, 0, ',', '.') }} |
@if ($loan->status === \App\Enums\LoanStatus::Lunas)
{{-- Berjalan --}}
{{ $loan->schedules_paid }}/{{ $loan->schedules_total }}
angsuran
|
{{ $loan->disbursement_date?->translatedFormat('d M Y') }} {{ $loan->term_months }} bln @if ($loan->disbursement_method) · {{ \App\Filament\Resources\LoanResource::DISBURSEMENT_METHODS[$loan->disbursement_method] }} @endif |
|
{{ $this->hasActiveFilters() ? 'Tidak ada pinjaman yang cocok' : 'Belum ada pinjaman' }}{{ $this->hasActiveFilters() ? 'Coba ubah kata kunci atau filter.' : 'Catat pinjaman anggota pertama yang sudah disetujui.' }} @can('create_loan') @unless ($this->hasActiveFilters()) |
||||||
Hanya untuk pinjaman salah input yang belum punya angsuran. Record & jadwalnya dihapus, dicatat di audit.