from formulario.models import Organismo, Reparticion, Dependencia

def run():
    fn = open("scripts/organismos_2025.txt","r")

    Organismo.objects.all().delete()
    Reparticion.objects.all().delete()
    Dependencia.objects.all().delete()

    ORGANISMOS = []
    for f in fn:
        f = f.replace("\n","").replace("\\u00c1","Á").replace("\\u00e1","á").replace("\\u00e9","é").replace("\\u00ed","í").replace("\\u00d3","Ó").replace("\\u00f3","ó").replace("\\u00fa","ú").replace("\\u00b0","°").replace("\\u00f1","ñ").replace("\\u00a0","-").replace("\\","'")

        if '"id"' in f:
            ID = int(str(f.split(":")[1].replace('"','').replace(",","").replace(" ","")).split(".")[0])
        if '"name"' in f:
            KEY = f.split(":")[1].replace('"','').replace(",","").replace(" ","")
        if '"text"' in f:
            NOMBRE = f.split(":")[1].replace('"','').replace(",","")
        if '"parent_id"' in f:
            PADRE = int(str(f.split(":")[1].replace('"','').replace(",","").replace(" ","")).split(".")[0])
        if '"children"' in f:
            HIJOS = f.split(":")[1].replace('"','').replace(",","").replace(" ","")

            if PADRE == 0:
                continue
            if PADRE == 1:
                org = Organismo(id=ID,nombre=NOMBRE)
                org.save()
                print("Organismo: " + str(org.id) + " | " + org.nombre)
            else:
                if HIJOS != "[]":
                    if PADRE == org.id:
                        rep = Reparticion(id=ID,nombre=NOMBRE,organismo=org.id,depende=0)
                    else:
                        rep = Reparticion(id=ID,nombre=NOMBRE,organismo=1,depende=PADRE)
                    rep.save()
                else:
                    dep = Dependencia(id=ID,nombre=NOMBRE,reparticion=PADRE)
                    dep.save()
