@extends('loans.base') @section('action-content')

Loans Management

{{-- CREATE LOAN BUTTON --}}
@if (session('success'))
{{ session('success') }}
@endif
{{-- NOW ONLY MAIN LOAN ROWS INSIDE TBODY — CLEAN! --}} @foreach($loans as $loan) @php // Calculate next installment $nextInstallment = $loan->repayments() ->whereIn('status', ['pending','partial']) ->orderBy('installment_number') ->first(); $nextAmount = $nextInstallment ? max(($nextInstallment->total_payment - ($nextInstallment->amount_paid ?? 0)), 0) : 0; // Total remaining (sum of pending/partial - amount paid) $totalRemaining = $loan->repayments() ->whereIn('status', ['pending','partial']) ->sum('total_payment') - $loan->repayments() ->whereIn('status', ['pending','partial']) ->sum('amount_paid'); // Outstanding principal $outstandingPrincipal = $loan->outstanding_principal; @endphp @endforeach
# Client Amount Interest Tenor Repayment Start Repayment End Status Action
{{ $loop->iteration }} {{ $loan->client->surname }} {{ $loan->client->first_name }} ({{ $loan->client->account_number }}) ₵{{ number_format($loan->amount, 2) }} {{ $loan->interest_rate }}% {{ $loan->tenor_months }} months {{ $loan->repayment_start ? date('d M Y', strtotime($loan->repayment_start)) : '—' }} {{ $loan->repayment_end ? date('d M Y', strtotime($loan->repayment_end)) : '—' }} {{ ucfirst($loan->status) }}
@if($loan->approval_status === 'pending') Pending Approval @elseif($loan->approval_status === 'approved') Approved @elseif($loan->approval_status === 'rejected') Rejected @endif
Outstanding: ₵{{ number_format($outstandingPrincipal,2) }}
Next Installment: ₵{{ number_format($nextAmount,2) }}
Total Remaining: ₵{{ number_format($totalRemaining,2) }}
{{-- View --}} {{-- Inline Schedule Toggle --}} {{-- Edit --}} {{-- Approve / Reject (Managers & Admin only) --}} @if(in_array(auth()->user()->role, ['manager', 'admin']) && $loan->approval_status === 'pending') @endif
{{-- CREATE LOAN MODAL --}} @include('loans.partials.create_loan') {{-- MODAL SCHEDULE --}} @include('loans.partials.repayment_schedule_modal') {{-- INLINE SCHEDULE AREA (OUTSIDE DATATABLE) --}}
@foreach($loans as $loan) @endforeach
@endsection @section('scripts') {{-- =============================== --}} {{-- GLOBAL SWEETALERT POPUPS --}} {{-- =============================== --}} @if(session('success')) @endif @if(session('error')) @endif @endsection