"""
Diagnostico: para num_indices dados, muestra las columnas de la matriz
'Detalle por Curso' del apartado LEADS (importe pauta, cartera, leads, matriculas...).
Filtro por defecto: TODOS (sin mes). Cambia ANO/MES/DIA si quieres un periodo.
"""
import services as S

NUM_INDICES = ["1157", "1174"]
ANO, MES, DIA = "TODOS", "TODOS", "TODOS"   # cambia si quieres filtrar (ej "2026","7","TODOS")

d = S.leads_dashboard(ANO, MES, DIA, "TODOS", "TODOS")
matriz = d.get("matriz_cursos", {})
filas = matriz.get("filas", []) if isinstance(matriz, dict) else matriz

def _ni(v):
    s = str(v or "").strip()
    return s[:-2] if s.endswith(".0") else s

objetivo = set(NUM_INDICES)
encontrados = [f for f in filas if _ni(f.get("num_indice")) in objetivo]

if not encontrados:
    print("No se encontraron esos num_indice en la matriz. num_indices disponibles (muestra):")
    print([_ni(f.get("num_indice")) for f in filas[:40]])
else:
    for f in encontrados:
        print("=" * 70)
        print(f"NUM_INDICE: {_ni(f.get('num_indice'))}   |   {f.get('personalizado') or f.get('programa') or ''}")
        print("-" * 70)
        for k, v in f.items():
            print(f"  {k:32}: {v}")
        print()
