<?php
session_start();
$ges_id = $_SESSION['ges_id'];
$ges_nom = $_SESSION['ges_nom'];
$ges_consu = $_SESSION['ges_consu'];

if($ges_id == '' || $ges_nom == ''):
    ?>
    <script type="text/javascript">
        alert('Usuario inválido');
        cerrar();
    </script>
    <?
endif;

header('Content-type: text/html; charset = utf-8');

require("../funciones/funciones.php");
require("../funciones/post_get.php");
require("../class/bases.php");

date_default_timezone_set("America/Bogota");
$hora_hoy = date("H:i:s");
$sis_dia = date('d');
$sis_mes = date('m');
$sis_ano = date('Y');
//Mensaje = mysql_error();
$fecha_hoy = $sis_ano."-".$sis_mes."-".$sis_dia;

if($mes_crea == '-'):
    $fecha_crea=$ano_crea;
else:
    $fecha_crea=$ano_crea.'-'.$mes_crea;
endif;
$nro=1;
$nro_grupos=1;

//Identifico el grupo
// 1. Obtener clientes desde bdFact
$sqlGrupo = "SELECT id_cli, nom_cli FROM cliente";
$conGrupo = $bdFact->consulta($sqlGrupo);

$clientes = [];
$id_clientes = [];

while ($resGrupo = $bdFact->fetch_assoc($conGrupo)) {
    $id = $resGrupo['id_cli'];
    $clientes[$id] = utf8_encode($resGrupo['nom_cli']);
    $id_clientes[] = $id;
}

// Verificamos si hay clientes
if (count($id_clientes) > 0) {
    // Sanitizamos lista de IDs para la consulta
    $ids_str = implode(',', array_map('intval', $id_clientes));

    // 2. Obtener todas las cuentas de esos clientes en una sola consulta desde bdDepen
    $sqlCTA = "
        SELECT 
            id_cta, 
            nombre, 
            nombre_plano, 
            nit_plano, 
            id_fk_cliente_fact, 
            comentario, 
            modo, 
            activo, 
            fecha_creacion
        FROM cta
        WHERE id_fk_cliente_fact IN ($ids_str)
          AND fecha_creacion LIKE '%$fecha_crea%'
    ";

    $conCTA = $bdDepen->consulta($sqlCTA);

    $array_cta = [];
    $array_grupos = [];
    $grupos_agregados = [];
    $nro = 1;
    $nro_grupos = 1;

    // 3. Procesar resultados
    while ($resCTA = $bdDepen->fetch_assoc($conCTA)) {
        $id_cli = $resCTA['id_fk_cliente_fact'];

        // Si el cliente no está en la lista original, lo ignoramos
        if (!isset($clientes[$id_cli])) continue;

        $nom_cli = $clientes[$id_cli];

        // Agregar cuenta
        $array_cta[] = [
            'nro' => $nro++,
            'id_fk_cliente_fact' => $id_cli,
            'id_cta' => $resCTA['id_cta'],
            'nit_plano' => $resCTA['nit_plano'],
            'nombre_plano' => utf8_encode($resCTA['nombre_plano']),
            'activo' => $resCTA['activo'],
            'modo' => $resCTA['modo'],
            'grupo' => $nom_cli,
            'comentario' => utf8_encode($resCTA['comentario']),
            'fecha_creacion' => $resCTA['fecha_creacion']
        ];

        // Agregar grupo si aún no se agregó
        if (!isset($grupos_agregados[$id_cli])) {
            $array_grupos[] = [
                'nro' => $nro_grupos++,
                'id_cli' => $id_cli,
                'nom_cli' => $nom_cli
            ];
            $grupos_agregados[$id_cli] = true;
        }
    }
}



//Vista de la relación de datos
require("dep_listado_grupos_vista.php");

?>