@include('admin.layouts.header')
@include('admin.layouts.sidebar')
<div class="m-grid__item m-grid__item--fluid m-wrapper">
    <div class="m-subheader ">
        <div class="d-flex align-items-center">
            <div class="mr-auto">
                <h3 class="m-subheader__title m-subheader__title--separator">
                    Co-Lending Leads {{ request()->is('*/ready-disbursement') ? '(Ready For Disbursement)' : '' }}
                </h3>
            </div>
        </div>
    </div>
    <style>
        .ready-disbursement-card:hover {
            background: #f1f3f6 !important;
            border-color: #5867dd !important;
            box-shadow: 0 4px 15px rgba(88, 103, 221, 0.1);
            cursor: pointer;
        }
    </style>
    <div class="m-content">
        <div class="m-portlet m-portlet--mobile">
            <div class="m-portlet__head">
                <div class="m-portlet__head-caption">
                    <div class="m-portlet__head-title">
                        <span class="m-portlet__head-icon">
                            <i class="fa fa-list"></i>
                        </span>
                        <h3 class="m-portlet__head-text">
                            Leads {{ request()->is('*/ready-disbursement') ? '(Ready For Disbursement)' : '' }}
                        </h3>
                    </div>
                </div>
            </div>
            <div class="m-portlet__body">

                {{-- Summary Metrics Cards --}}
                @if(isset($summaryData) && !request()->is('*/ready-disbursement'))
                <div class="row" style="margin-bottom: 20px; display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px;">
                    <div style="flex: 1; min-width: 200px; padding: 0 15px; margin-bottom: 10px;">
                        <div style="padding: 15px; border-radius: 6px; background: #f7f8fa; border: 1px solid #ebedf2; height: 100%;">
                            <div style="font-size: 11px; font-weight: 600; text-transform: uppercase; color: #898b96; margin-bottom: 5px;">Total Leads</div>
                            <div style="font-size: 22px; font-weight: 700; color: #36a3f7;">{{ number_format($summaryData['total_leads'] ?? 0) }}</div>
                            <div style="font-size: 11px; color: #a7abc3; margin-top: 3px;"><i class="fa fa-users"></i> Registered leads</div>
                        </div>
                    </div>
                    <div style="flex: 1; min-width: 200px; padding: 0 15px; margin-bottom: 10px;">
                        <div style="padding: 15px; border-radius: 6px; background: #f7f8fa; border: 1px solid #ebedf2; height: 100%;">
                            <div style="font-size: 11px; font-weight: 600; text-transform: uppercase; color: #898b96; margin-bottom: 5px;">Active Partners</div>
                            <div style="font-size: 22px; font-weight: 700; color: #34bfa3;">{{ number_format($summaryData['total_partners'] ?? 0) }}</div>
                            <div style="font-size: 11px; color: #a7abc3; margin-top: 3px;"><i class="fa fa-handshake-o"></i> Connected partners</div>
                        </div>
                    </div>

                    <div style="flex: 1; min-width: 200px; padding: 0 15px; margin-bottom: 10px;">
                        <a @if(Session::has('Disbursement_View|16-11-0')) href="/admin/co-lending/leads/ready-disbursement" @endif style="text-decoration: none; color: inherit; display: block; height: 100%;">
                            <div style="padding: 15px; border-radius: 6px; background: #f7f8fa; border: 1px solid #ebedf2; height: 100%; transition: all 0.3s ease;" @if(Session::has('Disbursement_View|16-11-0')) class="ready-disbursement-card" @endif>
                                <div style="font-size: 11px; font-weight: 600; text-transform: uppercase; color: #898b96; margin-bottom: 5px;">Ready For Disbursement</div>
                                <div style="font-size: 22px; font-weight: 700; color: #5867dd;">{{ number_format($summaryData['ready_disbursement'] ?? 0) }}</div>
                                <div style="font-size: 11px; color: #a7abc3; margin-top: 3px;"><i class="fa fa-money"></i> Leads ready for payout</div>
                            </div>
                        </a>
                    </div>
                    <div style="flex: 1; min-width: 200px; padding: 0 15px; margin-bottom: 10px;">
                        <div style="padding: 15px; border-radius: 6px; background: #f7f8fa; border: 1px solid #ebedf2; height: 100%;">
                            <div style="font-size: 11px; font-weight: 600; text-transform: uppercase; color: #898b96; margin-bottom: 5px;">BRE Decisions</div>
                            <div style="font-size: 22px; font-weight: 700; color: #ffb822;">{{ number_format($summaryData['total_decisions'] ?? 0) }}</div>
                            <div style="font-size: 11px; color: #a7abc3; margin-top: 3px;"><i class="fa fa-check-circle-o"></i> Processed decisions</div>
                        </div>
                    </div>
                </div>
                @endif

                {{-- Search --}}
                <form method="GET" action="{{ request()->is('*/ready-disbursement') ? '/admin/co-lending/leads/ready-disbursement' : '/admin/co-lending/leads' }}" class="form-inline" style="margin-bottom: 15px; gap: 8px; display: flex; flex-wrap: wrap;">
                    <input type="text" name="search_customer" class="form-control form-control-sm" placeholder="Search by Customer Name"
                        value="{{ request('search_customer') }}" style="width: 220px;">
                    <input type="text" name="search_app_id" class="form-control form-control-sm" placeholder="Search by App ID"
                        value="{{ request('search_app_id') }}" style="width: 200px;">
                    <button type="submit" style="margin-top: -10px;" class="btn btn-accent btn-sm">Search</button>
                    @if(request('search_customer') || request('search_app_id'))
                        <a href="{{ request()->is('*/ready-disbursement') ? '/admin/co-lending/leads/ready-disbursement' : '/admin/co-lending/leads' }}" style="margin-top: -10px;" class="btn btn-secondary btn-sm">Clear</a>
                    @endif
                    @if(request()->is('*/ready-disbursement'))
                        <a href="/admin/co-lending/leads" style="margin-top: -10px;" class="btn btn-outline-metal btn-sm"><i class="fa fa-arrow-left"></i> All Leads</a>
                    @endif
                </form>

                <div class="" style="overflow-x: auto;">
                    <table class="table table-bordered table-hover" style="font-size: 13px; white-space: nowrap;">
                        <thead>
                            <tr style="background-color: #f4f5f8;">
                                <th>App ID</th>
                                <th>Customer Name</th>
                                <th>Vendor</th>
                                <th>Status</th>
                                <th>Action</th>
                            </tr>
                        </thead>
                        <tbody>
                            @forelse($decisions as $decision)
                                @php
                                    $payload = json_decode($decision->bre_payload);
                                @endphp
                                <tr>
                                    <td>{{ !empty($decision->application_id) ? $decision->application_id : '—' }}</td>
                                    <td style="font-weight: 500;">{{ !empty($decision->customer_name) ? ucwords($decision->customer_name) : '—' }}</td>
                                    <td>{{ !empty($decision->partner_name) ? ucwords($decision->partner_name) : (!empty($decision->vendor) ? ucfirst($decision->vendor) : '—') }}</td>
                                    <td>
                                        @php
                                            $statusText = !empty($decision->status) ? trim($decision->status) : 'In-Progress';
                                            $badgeStyle = 'background-color: #f4f5f8; color: #575962; border: 1px solid #ebedf2; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                            
                                            switch (strtolower($statusText)) {
                                                case 'in-progress':
                                                    $badgeStyle = 'background-color: #e1f0ff; color: #36a3f7; border: 1px solid #c0dfff; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                                    break;
                                                case 'waiting for decision':
                                                case 'waiting for documents':
                                                    $badgeStyle = 'background-color: #fff4de; color: #ffb822; border: 1px solid #ffe8bc; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                                    break;
                                                case 'approved':
                                                case 'disbursement checklist done':
                                                    $badgeStyle = 'background-color: #d1f7ec; color: #34bfa3; border: 1px solid #a3f1db; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                                    break;
                                                case 'ready for disbursement':
                                                    $badgeStyle = 'background-color: #e2e5ec; color: #5867dd; border: 1px solid #c9d0e3; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                                    break;
                                                case 'disbursed':
                                                    $badgeStyle = 'background-color: #d1f7ec; color: #34bfa3; border: 1px solid #a3f1db; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                                    break;
                                                case 'rejected':
                                                    $badgeStyle = 'background-color: #ffeef0; color: #f4516c; border: 1px solid #ffd4d9; padding: 4px 8px; border-radius: 4px; font-weight: 500; font-size: 11px;';
                                                    break;
                                            }
                                        @endphp
                                        <span style="{{ $badgeStyle }}">{{ $statusText }}</span>
                                    </td>
                                    <td>
                                        @if(request()->is('*/ready-disbursement'))
                                            @php
                                                $calculatedAmountRow = 0;
                                                if (isset($decision->loan_amount)) {
                                                    if (($decision->partner_id ?? null) == 1) {
                                                        $calculatedAmountRow = $decision->loan_amount * 0.9;
                                                    } elseif (($decision->partner_id ?? null) == 2) {
                                                        $calculatedAmountRow = $decision->loan_amount * 0.8;
                                                    } else {
                                                        $calculatedAmountRow = $decision->loan_amount;
                                                    }
                                                }
                                                $calculatedAmountRow = number_format($calculatedAmountRow, 2, '.', '');
                                            @endphp
                                            <button class="btn btn-success btn-sm btn-disburse-lead" 
                                                    data-loan-id="{{ $decision->id }}" 
                                                    data-customer-name="{{ $decision->customer_name }}"
                                                    data-amount="{{ $calculatedAmountRow }}"
                                                    style="padding: 4px 10px; font-size: 12px; font-weight: 500;">
                                                <i class="fa fa-send"></i> Disburse
                                            </button>
                                        @else
                                            @if(Session::has('Disbursement_Checklist_View|16-10-0'))
                                            <a href="/admin/co-lending/leads/checklist/{{ $decision->id }}" target="_blank" title="View Checklist" style="color: #575962; font-size: 16px; text-decoration: none; padding: 4px 8px; display: inline-block; margin-right: 2px;">
                                                <i class="fa fa-list-alt"></i>
                                            </a>
                                            @endif
                                            <div class="dropdown" style="display: inline-block;">
                                                <a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" style="color: #575962; font-size: 16px; text-decoration: none; padding: 4px 8px; display: inline-block;">
                                                    <i class="fa fa-ellipsis-v"></i>
                                                </a>
                                                <div class="dropdown-menu dropdown-menu-right" style="font-size: 13px; min-width: 140px; padding: 5px 0;">
                                                    <a class="dropdown-item" href="/admin/co-lending/loans/{{ $decision->id }}" style="padding: 6px 15px;">View RPS</a>
                                                    @if($decision->bre_id)
                                                    <a class="dropdown-item" href="/admin/co-lending/decision-results/{{ $decision->bre_id }}" style="padding: 6px 15px;">View BRE Result</a>
                                                    @endif
                                                </div>
                                            </div>
                                        @endif
                                    </td>
                                </tr>
                            @empty
                                <tr>
                                    <td colspan="6" class="text-center">No records found.</td>
                                </tr>
                            @endforelse
                        </tbody>
                    </table>
                </div>

                <div class="text-center" style="margin-top: 15px;">
                    {!! $decisions->appends(\Request::except('page', '_token'))->render() !!}
                </div>

            </div>
        </div>
    </div>
</div>

@if(request()->is('*/ready-disbursement'))
<!-- Status Change Modal (Disbursement Pop-up) -->
<div class="modal fade" id="disbursementModal" tabindex="-1" role="dialog" aria-labelledby="disbursementModalLabel" aria-hidden="true">
    <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title" id="disbursementModalLabel">
                    Disburse Loan for: <span id="modalCustomerName" style="font-weight: 600; color: #5867dd;"></span>
                </h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">
                <div class="form-group">
                    <label style="font-weight: 500; font-size: 13px;">UTR Number <span class="text-danger">*</span></label>
                    <input type="text" id="modalUtrNumber" class="form-control" placeholder="Enter UTR number...">
                </div>
                <div class="form-group">
                    <label style="font-weight: 500; font-size: 13px;">Disbursement Date <span class="text-danger">*</span></label>
                    <input type="date" id="modalDisbursementDate" class="form-control">
                </div>
                <div class="form-group">
                    <label style="font-weight: 500; font-size: 13px;">Amount <span class="text-danger">*</span></label>
                    <input type="number" step="0.01" id="modalDisbursementAmount" class="form-control" placeholder="Enter amount..." readonly style="background-color: #f4f5f8; font-weight: 600;">
                </div>
                <div class="form-group">
                    <label style="font-weight: 500; font-size: 13px;">Add Remark</label>
                    <textarea id="modalStatusRemark" class="form-control" rows="3" placeholder="Enter remark..."></textarea>
                </div>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-secondary btn-sm" data-dismiss="modal">Cancel</button>
                <button type="button" class="btn btn-accent btn-sm" id="btnConfirmDisbursement">Confirm Disbursement</button>
            </div>
        </div>
    </div>
</div>

<script>
    document.addEventListener('DOMContentLoaded', function () {
        var currentLoanId = '';

        $(document).on('click', '.btn-disburse-lead', function (e) {
            e.preventDefault();
            currentLoanId = $(this).attr('data-loan-id');
            var customerName = $(this).attr('data-customer-name') || 'Customer';
            var amount = $(this).attr('data-amount') || '0.00';
            $('#modalCustomerName').text(customerName);
            
            // Reset input values
            $('#modalUtrNumber').val('');
            $('#modalDisbursementDate').val('');
            $('#modalDisbursementAmount').val(amount);
            $('#modalStatusRemark').val('');
            
            $('#disbursementModal').modal('show');
        });

        $('#btnConfirmDisbursement').on('click', function () {
            var utrNumber = $('#modalUtrNumber').val().trim();
            var disbursementDate = $('#modalDisbursementDate').val().trim();
            var amount = $('#modalDisbursementAmount').val().trim();
            var remark = $('#modalStatusRemark').val().trim();

            // Check if amount is zero or less than zero
            var parsedAmount = parseFloat(amount);
            if (isNaN(parsedAmount) || parsedAmount <= 0) {
                alert('Amount cannot be zero or less.');
                return;
            }

            if (!utrNumber) {
                alert('UTR number is required.');
                return;
            }
            if (!disbursementDate) {
                alert('Disbursement Date is required.');
                return;
            }
            if (!amount) {
                alert('Amount is required.');
                return;
            }

            var $btn = $(this);
            $btn.prop('disabled', true).text('Processing...');

            $.ajax({
                url: '/admin/co-lending/leads/status-update',
                type: 'POST',
                data: {
                    _token: '{{ csrf_token() }}',
                    vendor_loan_id: currentLoanId,
                    status: 'Disbursed',
                    remark: remark,
                    utr_number: utrNumber,
                    disbursement_date: disbursementDate,
                    amount: amount
                },
                success: function (res) {
                    $btn.prop('disabled', false).text('Confirm Disbursement');
                    if (res && res.success) {
                        $('#disbursementModal').modal('hide');
                        location.reload();
                    } else {
                        alert(res.message || 'Error processing disbursement.');
                    }
                },
                error: function (xhr) {
                    $btn.prop('disabled', false).text('Confirm Disbursement');
                    var msg = 'Error processing disbursement.';
                    if (xhr.responseJSON && xhr.responseJSON.message) {
                        msg = xhr.responseJSON.message;
                    }
                    alert(msg);
                }
            });
        });
    });
</script>
@endif

@include("admin.layouts.footer")
