@extends('adminlte::page') @section('title', 'Estado de Cuenta - Proveedor') @section('plugins.Datatables', true) @section('content_header')

Estado de Cuenta por Proveedor

@stop @section('content')

Seleccionar Proveedor

@if(isset($proveedor)) @endif
@if(isset($proveedor))
{{ $proveedor->razon_social }}

RUC: {{ $proveedor->ruc ?? 'N/A' }}

Teléfono: {{ $proveedor->telefono ?? 'N/A' }}

Email: {{ $proveedor->email ?? 'N/A' }}

@if($estadisticas['saldo_actual'] > 0)
Saldo Pendiente S/ {{ number_format($estadisticas['saldo_actual'], 2) }}
@elseif($estadisticas['saldo_actual'] < 0)
Saldo a Favor S/ {{ number_format(abs($estadisticas['saldo_actual']), 2) }}
@else
Saldo en Cero S/ 0.00
@endif @if(isset($estadisticas['total_pagado_automatico']) && $estadisticas['total_pagado_automatico'] > 0)
Pagos Automáticos S/ {{ number_format($estadisticas['total_pagado_automatico'], 2) }}
@endif

S/ {{ number_format($estadisticas['total_comprado'], 2) }}

Total Comprado

S/ {{ number_format($estadisticas['total_pagado'], 2) }}

Total Pagado

{{ $estadisticas['cantidad_compras'] }}

Total Compras

{{ $estadisticas['cantidad_pagos'] }}

Total Pagos

@if(isset($estadisticas['cantidad_pagos_automaticos']) && $estadisticas['cantidad_pagos_automaticos'] > 0) ({{ $estadisticas['cantidad_pagos_automaticos'] }} automáticos) @endif
@if(($request->tipo_vista ?? 'detallado') == 'resumido')

Resumen Diario por Empresa

@if(isset($resumenDiario) && $resumenDiario)
@foreach($resumenDiario['empresas'] as $empresa) @endforeach @foreach($resumenDiario['dias'] as $dia) @foreach($resumenDiario['empresas'] as $empresa) @php $saldoData = $dia['empresas'][$empresa->id] ?? null; $saldo = $saldoData ? $saldoData['saldo'] : 0; $esPositivo = $saldo >= 0; @endphp @endforeach @endforeach
Día {{ $empresa->razon_social }}
{{ strtoupper($dia['nombre_dia']) }}
{{ $dia['fecha']->format('d/m/Y') }}
@if($saldoData) S/ {{ number_format($saldo, 2) }} @else - @endif
@else
Selecciona un rango de fechas de más de un día para ver el resumen diario.
@endif
@endif @if(($request->tipo_vista ?? 'detallado') == 'detallado')
@forelse($movimientos as $mov) @empty @endforelse
Fecha Tipo Descripción Empresa Compradora Monto Saldo Anterior Saldo Nuevo
{{ $mov->fecha_movimiento->format('d/m/Y') }} @php $badges = [ 'compra' => 'badge-danger', 'pago' => 'badge-success', 'nota_credito' => 'badge-info', 'nota_debito' => 'badge-warning', 'ajuste' => 'badge-secondary', 'anulacion_compra' => 'badge-dark' ]; @endphp {{ strtoupper(str_replace('_', ' ', $mov->tipo_movimiento)) }} @if($mov->pagoProveedor && $mov->pagoProveedor->metodo_pago == 'saldo_a_favor') {{ $mov->descripcion }} @else {{ $mov->descripcion }} @endif @if($mov->compra && $mov->compra->empresaCompradora) {{ $mov->compra->empresaCompradora->razon_social }} @elseif($mov->pagoProveedor && $mov->pagoProveedor->empresaCompradora) {{ $mov->pagoProveedor->empresaCompradora->razon_social }} @elseif($mov->pagoMaestro && $mov->pagoMaestro->empresaCompradora) {{ $mov->pagoMaestro->empresaCompradora->razon_social }} @elseif($mov->empresa_compradora_id && $mov->empresaCompradora) {{ $mov->empresaCompradora->razon_social }} @else - @endif @if(in_array($mov->tipo_movimiento, ['compra', 'nota_debito', 'ajuste'])) +S/ {{ number_format($mov->monto, 2) }} @else -S/ {{ number_format($mov->monto, 2) }} @endif S/ {{ number_format($mov->saldo_anterior, 2) }} S/ {{ number_format($mov->saldo_nuevo, 2) }}
No hay movimientos registrados
@forelse($compras as $compra) @empty @endforelse @if($compras->isNotEmpty()) @endif
ID Fecha Nº Factura Tipo Documento Empresa Compradora Subtotal IGV Total
#{{ $compra->id }} {{ $compra->fecha_compra->format('d/m/Y') }} {{ $compra->numero_factura }} @php $badges = [ 'factura' => 'badge-primary', 'boleta' => 'badge-info', 'nota_credito' => 'badge-success', 'nota_debito' => 'badge-warning' ]; @endphp {{ strtoupper(str_replace('_', ' ', $compra->tipo_documento)) }} @if($compra->empresaCompradora) {{ $compra->empresaCompradora->razon_social }}
{{ $compra->empresaCompradora->ruc }} @else - @endif
S/ {{ number_format($compra->subtotal, 2) }} S/ {{ number_format($compra->igv, 2) }} S/ {{ number_format($compra->total, 2) }}
No hay compras registradas
TOTALES: S/ {{ number_format($compras->sum('subtotal'), 2) }} S/ {{ number_format($compras->sum('igv'), 2) }} S/ {{ number_format($compras->sum('total'), 2) }}
@forelse($pagos as $pago) @empty @endforelse @if($pagos->isNotEmpty()) @endif
ID Fecha Compra Asociada Método Empresa Compradora Nº Operación Monto
#{{ $pago->id }} {{ $pago->fecha_pago->format('d/m/Y') }} @if($pago->compra) {{ $pago->compra->numero_factura }} @else A cuenta @endif @php $badgesMetodo = [ 'efectivo' => 'badge-success', 'transferencia' => 'badge-primary', 'deposito' => 'badge-info', 'cheque' => 'badge-warning' ]; @endphp {{ strtoupper($pago->metodo_pago) }} @if($pago->empresaCompradora) {{ $pago->empresaCompradora->razon_social }}
{{ $pago->empresaCompradora->ruc }} @else - @endif
{{ $pago->numero_operacion ?? '-' }} S/ {{ number_format($pago->monto, 2) }}
No hay pagos registrados
TOTAL PAGADO: S/ {{ number_format($pagos->sum('monto'), 2) }}
@if(!isset($request->empresa_compradora_id) || empty($request->empresa_compradora_id))
@if(isset($saldosPorEmpresa) && count($saldosPorEmpresa) > 0)
Resumen por Empresa Compradora
@foreach($saldosPorEmpresa as $empresaNombre => $datos) @endforeach
# Empresa Compradora Saldo Actual Estado Total Comprado Total Pagado Movimientos
{{ $loop->iteration }} {{ $datos['empresa'] ?? 'Movimientos Generales' }} @if(!isset($datos['empresa']))
(Ajustes, saldos iniciales y otros) @endif
@if($datos['saldo_final'] > 0) S/ {{ number_format($datos['saldo_final'], 2) }} @elseif($datos['saldo_final'] < 0) S/ {{ number_format(abs($datos['saldo_final']), 2) }} @else S/ 0.00 @endif @if($datos['saldo_final'] > 0) Pendiente @elseif($datos['saldo_final'] < 0) A Favor @else Al Día @endif S/ {{ number_format($datos['total_compras'], 2) }} S/ {{ number_format($datos['total_pagos'], 2) }} {{ $datos['movimientos']->count() }}
TOTALES: @php $saldoTotal = collect($saldosPorEmpresa)->sum('saldo_final'); @endphp @if($saldoTotal > 0) S/ {{ number_format($saldoTotal, 2) }} @elseif($saldoTotal < 0) S/ {{ number_format(abs($saldoTotal), 2) }} @else S/ 0.00 @endif @if($saldoTotal > 0) Pendiente @elseif($saldoTotal < 0) A Favor @else Al Día @endif S/ {{ number_format(collect($saldosPorEmpresa)->sum('total_compras'), 2) }} S/ {{ number_format(collect($saldosPorEmpresa)->sum('total_pagos'), 2) }} {{ collect($saldosPorEmpresa)->sum(function($datos) { return $datos['movimientos']->count(); }) }}
@foreach($saldosPorEmpresa as $empresa => $datos)
{{ $empresa }}
Total Comprado S/ {{ number_format($datos['total_compras'], 2) }}
Total Pagado S/ {{ number_format($datos['total_pagos'], 2) }}
Saldo Final S/ {{ number_format($datos['saldo_final'], 2) }}
Movimientos {{ $datos['movimientos']->count() }}
@foreach($datos['movimientos'] as $mov) @endforeach
Fecha Tipo Descripción Monto Saldo Anterior Saldo Nuevo
{{ $mov->fecha_movimiento->format('d/m/Y') }} @php $badges = [ 'compra' => 'badge-primary', 'pago' => 'badge-success', 'nota_credito' => 'badge-info', 'nota_debito' => 'badge-warning', 'ajuste' => 'badge-secondary', 'anulacion_compra' => 'badge-danger' ]; @endphp {{ strtoupper($mov->tipo_movimiento) }} {{ $mov->descripcion }} {{ $mov->tipo_movimiento == 'pago' ? '-' : '+' }} S/ {{ number_format($mov->monto, 2) }} S/ {{ number_format($mov->saldo_anterior, 2) }} S/ {{ number_format($mov->saldo_nuevo, 2) }}
@endforeach @else
No hay movimientos registrados para este proveedor.
@endif
@endif @endif
@endif @stop @section('js') @stop