@php
setlocale(LC_ALL, 'es_CO');
$no_permitidas = array ("January","February","March","April","May","June","July","August","September","October","November","December","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday");
$permitidas = array ("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo");
if (!isset($pdfDatos->registros_contabilidad)) {//PARA VISUALIZAR PLANTILLA HTML
$pdfDatos->registros_contabilidad = [];
for ($i=0; $i < 10; $i++) {
$pdfDatos->registros_contabilidad[$i] = new \stdClass();
$pdfDatos->registros_contabilidad[$i]->fecha = '2023-12-01';//${fecha}';
$pdfDatos->registros_contabilidad[$i]->abreviatura = '${abreviatura}';
$pdfDatos->registros_contabilidad[$i]->numero = '${numero}';
$pdfDatos->registros_contabilidad[$i]->id_soporte = "1";
$pdfDatos->registros_contabilidad[$i]->indicador = 1;
$pdfDatos->registros_contabilidad[$i]->codigo_cuenta = '${codigo_cuenta}';
$pdfDatos->registros_contabilidad[$i]->debito = ($i + 1) * 200;//0;
$pdfDatos->registros_contabilidad[$i]->credito = ($i + 1) * 100;//0;
$pdfDatos->registros_contabilidad[$i]->nombre_cuenta = '${nombre_cuenta}';
$pdfDatos->registros_contabilidad[$i]->abreviatura_tipo = "";
$pdfDatos->registros_contabilidad[$i]->tipo_documento_contable = 3;
$pdfDatos->registros_contabilidad[$i]->abreviatura_empresa = "";
$pdfDatos->registros_contabilidad[$i]->tipo_descripcion = "";
$pdfDatos->registros_contabilidad[$i]->abreviatura_descripcion = '${abreviatura_descripcion}';
$pdfDatos->registros_contabilidad[$i]->consecutivo = '${consecutivo}';
$pdfDatos->registros_contabilidad[$i]->detalle = '${detalle}';
$pdfDatos->registros_contabilidad[$i]->nombre_empresa = '${nombre_empresa}';
$pdfDatos->registros_contabilidad[$i]->nit = '${nit}';
$pdfDatos->registros_contabilidad[$i]->tercero_nombre = '${tercero_nombre}';
$pdfDatos->registros_contabilidad[$i]->llave = "";
}
$pdfDatos->registros_contabilidad[4]->id_soporte = $pdfDatos->registros_contabilidad[5]->id_soporte = "4";
$pdfDatos->registros_contabilidad[6]->id_soporte = "5";
$pdfDatos->registros_contabilidad[6]->abreviatura = "ALM";
$pdfDatos->registros_contabilidad[6]->abreviatura_descripcion = "ALMACEN";
$pdfDatos->registros_contabilidad[6]->consecutivo = "290115";
$pdfDatos->registros_contabilidad[7]->fecha = $pdfDatos->registros_contabilidad[8]->fecha = $pdfDatos->registros_contabilidad[9]->fecha = '2023-12-02';
$pdfDatos->registros_contabilidad[7]->id_soporte = "2";
$pdfDatos->registros_contabilidad[8]->id_soporte = "6";
$pdfDatos->registros_contabilidad[9]->id_soporte = "3";
$pdfDatos->registros_contabilidad[8]->abreviatura = "ALM1";
$pdfDatos->registros_contabilidad[8]->consecutivo = "1234";
$pdfDatos->registros_contabilidad[9]->abreviatura = "ALM2";
$pdfDatos->registros_contabilidad[9]->consecutivo = "5678";
}
$datos = $eliminar = $puc = array();
$arrayId = $cantId = $variable = $totalBloque = array();
$cont = $fila = $cant = $cont2 = $valor = $total = 0;
//print ""; print_r($pdfDatos->registros_contabilidad); print "
\n";exit;
//print ""; print_r(count($pdfDatos->registros_contabilidad)); print "
\n";exit;
if (empty($pdfDatos->registros_contabilidad)) {
echo 'No se encontró información';
} else {
$ultimoObjeto = end($pdfDatos->registros_contabilidad);
$nuevoObjeto = (object) get_object_vars($ultimoObjeto);
$nuevoObjeto->id_soporte = "0";
$pdfDatos->registros_contabilidad[] = $nuevoObjeto;
$cont = 1;
$fecha = $consecutivo = $auxAbreviatura = $auxFecha = $abreviatura = $abreviatura_descripcion = $llave = $llave_abre = "";
foreach ($pdfDatos->registros_contabilidad as $key => &$dato) {
$dato->llave = "{$dato->fecha}{$dato->abreviatura}{$dato->id_soporte}";
$dato->llave_abre = "{$dato->fecha}{$dato->abreviatura}";
$fila = $mostrar = 0;
if ($llave != $dato->llave) {
if ($llave != "") {
$totalBloque["d{$llave}"][$cont] = array_sum($totalBloque[$cont]["d{$llave}"]);
$totalBloque["c{$llave}"][$cont] = array_sum($totalBloque[$cont]["c{$llave}"]);
@endphp
|
Subtotal Comprobante: |
{{$consecutivo}} |
{{$pdfDatos->formatoAplicacion->monedaColombia($totalBloque["d{$llave}"][$cont])}} |
{{$pdfDatos->formatoAplicacion->monedaColombia($totalBloque["c{$llave}"][$cont])}} |
@php
$cont++;
$totalBloque["total"]["d{$llave}"] = array_sum($totalBloque["d{$llave}"]);
$totalBloque["total"]["c{$llave}"] = array_sum($totalBloque["c{$llave}"]);
if ($llave_abre != $dato->llave_abre || ($dato === end($pdfDatos->registros_contabilidad))) {
$totalBloque["total"]["{$abreviatura}{$fecha}d"] = array_sum(array_filter($totalBloque["total"], fn($valor, $clave) => preg_match('/^' . preg_quote("d{$fecha}{$abreviatura}") . '/', $clave), ARRAY_FILTER_USE_BOTH));
$totalBloque["total"]["{$abreviatura}{$fecha}c"] = array_sum(array_filter($totalBloque["total"], fn($valor, $clave) => preg_match('/^' . preg_quote("c{$fecha}{$abreviatura}") . '/', $clave), ARRAY_FILTER_USE_BOTH));
//print ""; print_r($totalBloque); print "
\n";exit;
@endphp
|
SubTotal: |
{{$abreviatura_descripcion}} |
{{$pdfDatos->formatoAplicacion->monedaColombia($totalBloque["total"]["{$abreviatura}{$fecha}d"])}} |
{{$pdfDatos->formatoAplicacion->monedaColombia($totalBloque["total"]["{$abreviatura}{$fecha}c"])}} |
@php
}
if ($fecha != $dato->fecha || ($dato === end($pdfDatos->registros_contabilidad))) {
$totalBloque["total"]["{$fecha}d"] = array_sum(array_filter($totalBloque["total"], fn($valor, $clave) => preg_match('/^' . preg_quote("d{$fecha}") . '/', $clave), ARRAY_FILTER_USE_BOTH));
$totalBloque["total"]["{$fecha}c"] = array_sum(array_filter($totalBloque["total"], fn($valor, $clave) => preg_match('/^' . preg_quote("c{$fecha}") . '/', $clave), ARRAY_FILTER_USE_BOTH));
@endphp
|
Total por Fecha: |
{{$fechaFormateada}} |
{{$pdfDatos->formatoAplicacion->monedaColombia($totalBloque["total"]["{$fecha}d"])}} |
{{$pdfDatos->formatoAplicacion->monedaColombia($totalBloque["total"]["{$fecha}c"])}} |
@php
}
@endphp
@php
}
$consecutivo = $dato->numero;
$auxAbreviatura = $abreviatura;
$auxFecha = $fecha;
$abreviatura = $dato->abreviatura;
$abreviatura_descripcion = $dato->abreviatura_descripcion;
$llave = $dato->llave;
$llave_abre = $dato->llave_abre;
$mostrar = 1;
if ($fecha != $dato->fecha) {
$fecha = $dato->fecha;
$timestamp = strtotime($fecha);
$fechaFormateada = str_ireplace($no_permitidas, $permitidas, date('l, d F Y', $timestamp));
@endphp
{{"Fecha {$fechaFormateada}"}}
@php
}
if (!($dato === end($pdfDatos->registros_contabilidad))) {
if ("{$dato->abreviatura}{$dato->fecha}" != "{$auxAbreviatura}{$auxFecha}") {
@endphp
{{"Tipo de Comprobante: {$dato->abreviatura} {$dato->abreviatura_descripcion}"}}
@php
}
@endphp
|
Comprobante #
|
{{$dato->numero}}
|
{{str_limit(trim(htmlspecialchars_decode($dato->detalle)), 81)}}
|
|
Cód. cuenta
|
Cta Contable
|
Tercero
|
Valor Débito
|
Valor Crédito
|
@php
}
}
if (!($dato === end($pdfDatos->registros_contabilidad))) {
$totalBloque[$cont]["d{$llave}"][] = $dato->debito;
$totalBloque[$cont]["c{$llave}"][] = $dato->credito;
@endphp
| {{$dato->codigo_cuenta}} |
{{str_limit(trim(htmlspecialchars_decode($dato->nombre_cuenta)), 63)}} |
{{str_limit(trim(htmlspecialchars_decode($dato->nit . " " . $dato->tercero_nombre)), 71)}} |
{{$pdfDatos->formatoAplicacion->monedaColombia(end($totalBloque[$cont]["d{$llave}"]))}} |
{{$pdfDatos->formatoAplicacion->monedaColombia(end($totalBloque[$cont]["c{$llave}"]))}} |
@php
}
}
}
//print ""; print_r($totalBloque); print "
\n";
@endphp