@php // typeColor resource → warna (info & gray tak ada → primary/neutral). $badgeColor = fn (string $type) => match (\App\Filament\Resources\SavingsDepositResource::typeColor($type)) { 'primary', 'info' => 'primary', 'success' => 'success', 'warning' => 'warning', default => 'neutral', }; @endphp
{{-- Header --}}

Setor Simpanan

Riwayat setoran simpanan anggota. Koreksi hanya lewat reversal.

@can('access_batch_salary_deduction') Batch Potong Gaji @endcan @can('create_savings::deposit') Setoran Baru @endcan
{{-- Toolbar --}}
@if ($this->hasActiveFilters()) @endif
{{-- Tabel --}}
@for ($i = 0; $i < 5; $i++) @endfor @forelse ($deposits as $deposit) @empty @endforelse
No. Transaksi Anggota Jenis Nominal Tanggal Metode Aksi
{{ $deposit->transaction_number }} @if ($deposit->is_reversal)
Reversal
@endif
{{ $deposit->member?->full_name ?? '—' }}

{{ $deposit->member?->member_number }}

{{ $savingsTypes[$deposit->savings_type] ?? $deposit->savings_type }} {{ $deposit->is_reversal ? '−' : '+' }}Rp {{ number_format((float) $deposit->amount, 0, ',', '.') }} {{ $deposit->deposit_date?->translatedFormat('d M Y') }} {{ $deposit->created_at?->translatedFormat('H.i') }} WIB {{ $depositMethods[$deposit->deposit_method] ?? $deposit->deposit_method }}
Lihat Detail Cetak Slip @if ($this->canReverse($deposit))
Reversal @endif

{{ $this->hasActiveFilters() ? 'Tidak ada setoran yang cocok' : 'Belum ada setoran simpanan' }}

{{ $this->hasActiveFilters() ? 'Coba ubah kata kunci atau filter.' : 'Catat setoran simpanan anggota pertama.' }}

@can('create_savings::deposit') @unless ($this->hasActiveFilters()) Setoran Baru @endunless @endcan
@if ($deposits->hasPages())
{{ $deposits->links() }}
@endif
{{-- Modal: Reversal --}}