@php // Warna status di-drive enum WithdrawalStatus::color() (palet x-ui.badge). $typeBadge = fn(string $t) => match (\App\Filament\Resources\SavingsWithdrawalResource::typeColor($t)) { 'warning' => 'warning', 'success' => 'success', default => 'neutral', }; @endphp
{{-- Header --}}

Pencairan Simpanan

Pengajuan, ACC, dan pencairan dana simpanan anggota. Koreksi hanya lewat reversal.

@can('create_savings::withdrawal') Ajukan Pencairan @endcan
{{-- Ringkasan status (chips). Kelas literal per nada agar terdeteksi scanner Tailwind v4. --}} @php $chip = [ 'draft' => [ 'icon' => 'document', 'ic' => 'bg-muted/10 text-muted', 'active' => 'border-muted/40 bg-muted/5 ring-1 ring-muted/20', ], 'acc' => [ 'icon' => 'check', 'ic' => 'bg-primary/10 text-primary', 'active' => 'border-primary/40 bg-primary/5 ring-1 ring-primary/20', ], 'cair' => [ 'icon' => 'banknotes', 'ic' => 'bg-success/10 text-success', 'active' => 'border-success/40 bg-success/5 ring-1 ring-success/20', ], 'ditolak' => [ 'icon' => 'x', 'ic' => 'bg-danger/10 text-danger', 'active' => 'border-danger/40 bg-danger/5 ring-1 ring-danger/20', ], ]; @endphp
@foreach ($statuses as $value => $label) @php($c = $chip[$value]) @endforeach
{{-- Toolbar --}}
@if ($this->hasActiveFilters()) @endif
{{-- Tabel --}}
@for ($i = 0; $i < 5; $i++) @endfor @forelse ($withdrawals as $withdrawal) @php($isRefund = \App\Filament\Resources\SavingsWithdrawalResource::isLoanRefund($withdrawal)) @empty @endforelse
No. Pencairan Anggota Jenis Nominal Status Tanggal Aksi
{{ $withdrawal->withdrawal_number }} @if ($withdrawal->is_reversal)
Reversal
@endif
{{ $withdrawal->member?->full_name ?? '—' }}

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

{{ $isRefund ? 'Pengembalian Pelunasan' : $withdrawalTypes[$withdrawal->savings_type] ?? $withdrawal->savings_type }} @if ($isRefund) SWP + Tab. Berjangka @elseif ($withdrawal->period_year) {{ $withdrawal->period_year }} @endif {{ $withdrawal->is_reversal ? '+' : '−' }}Rp {{ number_format((float) ($isRefund ? \App\Filament\Resources\SavingsWithdrawalResource::pairTotal($withdrawal) : $withdrawal->amount), 0, ',', '.') }} {{ $withdrawal->status->label() }} {{ $withdrawal->withdrawal_date?->translatedFormat('d M Y') }} {{ $withdrawal->created_at?->translatedFormat('H.i') }} WIB @if ($withdrawal->disbursement_method) · {{ $disbursementMethods[$withdrawal->disbursement_method] ?? $withdrawal->disbursement_method }} @endif
Lihat Detail @if ($this->hasAnyAction($withdrawal))
@if ($this->canApprove($withdrawal)) Setujui (ACC) @endif @if ($this->canDisburse($withdrawal)) Cairkan Dana @endif @if ($this->canReject($withdrawal)) Tolak @endif @if ($this->canReverse($withdrawal)) Reversal @endif @endif

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

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

@can('create_savings::withdrawal') @unless ($this->hasActiveFilters()) Ajukan Pencairan @endunless @endcan
@if ($withdrawals->hasPages())
{{ $withdrawals->links() }}
@endif
{{-- Modal: Konfirmasi transisi --}} @php($meta = $this->confirmMeta())
{{-- Modal: Reversal --}}