REPORTE DE COMISIONES

Sistema de Gestión SOSSYSTEM
Generado el: {{ date('d/m/Y H:i:s') }}
@if($filterInfo['salesman'] || $filterInfo['status'] || $filterInfo['date_from'] || $filterInfo['date_to'])

Filtros Aplicados

Vendedor: {{ $filterInfo['salesman'] ? $filterInfo['salesman']->first_name . ' ' . $filterInfo['salesman']->last_name : 'Todos' }}
Estado: {{ $filterInfo['status'] ? ucfirst($filterInfo['status']) : 'Todos' }}
Fecha Desde: {{ $filterInfo['date_from'] ? \Carbon\Carbon::parse($filterInfo['date_from'])->format('d/m/Y') : 'Sin límite' }} Fecha Hasta: {{ $filterInfo['date_to'] ? \Carbon\Carbon::parse($filterInfo['date_to'])->format('d/m/Y') : 'Sin límite' }}
@endif
Total Comisiones
{{ number_format($stats['total_commissions'], 0) }}
Ganadas
${{ number_format($stats['total_amount_earned'], 2) }}
Perdidas
${{ number_format($stats['total_amount_lost'], 2) }}
Pendientes
${{ number_format($stats['total_amount_pending'], 2) }}
Pagadas
${{ number_format($stats['total_amount_paid'], 2) }}
Parciales
${{ number_format($stats['total_amount_partial'], 2) }}
@forelse($commissions as $index => $comm) @php $invoice = $comm->salesInvoice; $isInvoicePaid = $invoice && ($invoice->amount_due ?? $invoice->total_amount_usd ?? 0) <= 0.01; $isOverdue = $comm->isOverdue(); $paidAmount = $comm->paid_amount; $remainingAmount = $comm->commission_amount_usd - $paidAmount; @endphp @empty @endforelse
# Factura Tipo Doc. Vendedor Fecha Venta Fecha Pago Días Pago Límite Días Monto Base (USD) Base % Comisión (USD) Pagado Pendiente Estado Observaciones
{{ $index + 1 }} {{ $comm->salesInvoice->invoice_number ?? 'N/A' }} {{ ($comm->document_type ?? 'invoice') == 'invoice' ? 'Factura' : 'Nota' }} {{ ($comm->salesman->first_name ?? '') . ' ' . ($comm->salesman->last_name ?? '') }} {{ $comm->invoice_date ? (is_string($comm->invoice_date) ? \Carbon\Carbon::parse($comm->invoice_date)->format('d/m/Y') : $comm->invoice_date->format('d/m/Y')) : 'N/A' }} {{ $comm->payment_date ? (is_string($comm->payment_date) ? \Carbon\Carbon::parse($comm->payment_date)->format('d/m/Y') : $comm->payment_date->format('d/m/Y')) : '-' }} @if($comm->days_to_pay) {{ $comm->days_to_pay }} @elseif($comm->invoice_date) {{ \Carbon\Carbon::parse($comm->invoice_date)->diffInDays(now()) }} @else - @endif {{ $comm->payment_days_limit ?? '-' }} ${{ number_format($comm->commissionable_amount_usd ?? 0, 2) }} {{ $comm->commissionable_base === 'subtotal' ? 'Subtotal' : 'Total' }} {{ number_format($comm->commission_rate_applied ?? 0, 2) }}% ${{ number_format($comm->commission_amount_usd ?? 0, 2) }} ${{ number_format($paidAmount, 2) }} ${{ number_format($remainingAmount, 2) }} @php $statusClass = 'status-' . ($comm->status ?? 'pending'); if ($isOverdue && $comm->status === 'pending') { $statusClass = 'status-overdue'; } @endphp @if($isOverdue && $comm->status === 'pending') Fuera de Tiempo @else {{ $comm->status_text }} @endif @if($isOverdue && $comm->status === 'pending') Comisión fuera de tiempo - Factura no pagada @elseif(!$isInvoicePaid && $comm->status === 'pending') En espera - Factura pendiente de pago @elseif($comm->status === 'lost') Comisión perdida - Excedió el límite de días @else - @endif
No hay comisiones que cumplan con los filtros seleccionados
TOTALES: ${{ number_format($commissions->sum('commission_amount_usd'), 2) }} ${{ number_format($commissions->sum(function($c) { return $c->paid_amount; }), 2) }} ${{ number_format($commissions->sum(function($c) { return $c->remaining_amount; }), 2) }}