@php
$datos = $resultado->resultado;
$fmt = function ($v) {
$v = $v ?? 0;
$neg = $v < 0;
$texto = '$ ' . number_format(abs($v), 0, ',', '.');
return $neg ? "-$texto" : $texto;
};
$horizontes = $datos['proyeccion']['horizontes'] ?? ['hoy', '7', '15', '30', '60'];
$labels = ['hoy' => 'Hoy', '7' => '+7 días', '15' => '+15 días', '30' => '+30 días', '60' => '+60 días'];
@endphp
@if(!empty($datos['advertencias']))
Advertencias
@foreach($datos['advertencias'] as $adv)
- {{ $adv }}
@endforeach
@endif
Resumen
| Cash disponible real (pesos) |
Cash disponible real (dólares) |
@php $cashPesos = $datos['posicion']['cash_disponible_pesos_ajustado'] ?? $datos['posicion']['cash_disponible_pesos'] ?? 0; @endphp
| {{ $fmt($cashPesos) }} |
US$ {{ number_format($datos['posicion']['cash_disponible_dolares'] ?? 0, 2, ',', '.') }} |
Posición por cuenta
| Cuenta |
Rol |
Saldo conciliado |
Pendiente de conciliar |
Saldo libro |
@foreach($datos['posicion']['cuentas'] ?? [] as $cta)
@php $conciliado = $cta['saldo_conciliado'] ?? $cta['saldo_libro']; @endphp
| {{ $cta['nombre'] }} |
{{ $cta['rol'] }} |
{{ $cta['moneda_simbolo'] }} {{ number_format($conciliado, 2, ',', '.') }} |
{{ $cta['moneda_simbolo'] }} {{ number_format($cta['saldo_libro'] - $conciliado, 2, ',', '.') }} |
{{ $cta['moneda_simbolo'] }} {{ number_format($cta['saldo_libro'], 2, ',', '.') }} |
@endforeach
Proyección de cash flow
| Concepto |
@foreach($horizontes as $h)
{{ $labels[$h] ?? $h }} |
@endforeach
| Saldo de Cash y Bancos |
@foreach($horizontes as $h)
{{ $fmt($datos['proyeccion']['pagos_comprometidos'][$h] ?? 0) }} |
@endforeach
| Cobranzas esperadas (optimista) |
@foreach($horizontes as $h)
{{ $fmt($datos['proyeccion']['cobranzas_esperadas'][$h] ?? 0) }} |
@endforeach
@if(!empty($datos['cheques_cartera']['incluido']))
| Cheques en cartera a acreditar |
@foreach($horizontes as $h)
{{ $fmt($datos['proyeccion']['cheques_en_cartera'][$h] ?? 0) }} |
@endforeach
@endif
@if(($datos['cheques_recibidos_en_banco']['cantidad'] ?? 0) > 0)
| Cheques/echeq recibidos en banco, aún no acreditados |
@foreach($horizontes as $h)
{{ $fmt($datos['proyeccion']['cheques_recibidos_en_banco'][$h] ?? 0) }} |
@endforeach
@endif
| Sueldos a pagar (estimado) |
@foreach($horizontes as $h)
{{ $fmt($datos['proyeccion']['sueldos_estimado'][$h] ?? 0) }} |
@endforeach
@php
$limitesPartidas = ['hoy' => 0, '7' => 7, '15' => 15, '30' => 30, '60' => 60];
$filasPartidas = [];
foreach ($datos['partidas_ocurrencias'] ?? [] as $o) {
$filasPartidas[$o['partida_id']] ??= ['label' => $o['tipo'], 'por_horizonte' => array_fill_keys($horizontes, 0)];
$diasPartida = \Carbon\Carbon::now()->startOfDay()->diffInDays(\Carbon\Carbon::parse($o['fecha'])->startOfDay(), false);
foreach ($horizontes as $h) {
if ($diasPartida <= ($limitesPartidas[$h] ?? 0)) {
$filasPartidas[$o['partida_id']]['por_horizonte'][$h] += $o['monto'];
}
}
}
@endphp
@foreach($filasPartidas as $p)
| {{ $p['label'] }} (partida manual) |
@foreach($horizontes as $h)
{{ $fmt($p['por_horizonte'][$h]) }} |
@endforeach
@endforeach
| Cash flow neto proyectado |
@foreach($horizontes as $h)
{{ $fmt($datos['proyeccion']['cash_flow_neto'][$h] ?? 0) }} |
@endforeach
@if(!empty($datos['cheques_emitidos_por_vencer']['por_tipo']))
Cheques, echeq y transferencias emitidos por vencer
| Tipo |
Cantidad |
Total |
Hasta 7 días |
8 a 15 días |
16 a 30 días |
31 a 60 días |
Más de 60 días |
@foreach($datos['cheques_emitidos_por_vencer']['por_tipo'] as $t)
| {{ $t['tipo'] }} |
{{ $t['cantidad'] }} |
{{ $fmt($t['monto']) }} |
{{ $fmt($t['rangos']['7']) }} |
{{ $fmt($t['rangos']['15']) }} |
{{ $fmt($t['rangos']['30']) }} |
{{ $fmt($t['rangos']['60']) }} |
{{ $fmt($t['rangos']['mas60']) }} |
@endforeach
@endif
Conciliación bancaria
| Cuenta |
Movs. sin conciliar |
Importe neto pendiente |
Pendiente más antiguo |
Estado |
@php
$nombrePorCuenta = collect($datos['posicion']['cuentas'] ?? [])->keyBy('id');
$estadosLabel = ['atrasada' => 'Atrasada', 'pendiente_puntual' => 'Pendiente puntual', 'a_vigilar' => 'A vigilar', 'al_dia' => 'Al día'];
@endphp
@forelse($datos['conciliacion'] ?? [] as $c)
| {{ optional($nombrePorCuenta->get($c['cta_cte_tesoreria_cuenta_id']))['nombre'] ?? $c['cta_cte_tesoreria_cuenta_id'] }} |
{{ $c['cantidad_pendiente'] }} |
{{ $fmt($c['importe_neto_pendiente']) }} |
{{ \Carbon\Carbon::parse($c['fecha_mas_antigua_pendiente'])->format('d/m/Y') }} ({{ $c['antiguedad_dias'] }} días) |
{{ $estadosLabel[$c['estado']] ?? $c['estado'] }} |
@empty
| Sin movimientos pendientes de conciliar |
@endforelse