# script zum updaten der adressdaten anhand der existierenden URI
from script_helper import DBTools, APITools
from configparser import ConfigParser


if __name__ == '__main__':
    print("updating dataset with adresses from areg by URI")

    # datenbank mit den schuldaten
    conn_config = ConfigParser()
    conn_config.read("db_conn.cfg")

    conn_str = f"""
    host={conn_config['connection']['host']}
    port={conn_config['connection']['port']}
    dbname={conn_config['connection']['dbname']}
    user={conn_config['connection']['user']}
    password={conn_config['connection']['pwd']}"""

    url = conn_config['connection']['url']

    my_db = DBTools(conn_str)
    my_api = APITools(url)

    schulen = my_db.select_uri()
    lenschule = len(schulen)
    i = 1

    for item in schulen:
        print(str(i) + "/" + str(lenschule))
        if item[0] is not None:
            adresse = my_api.findadresse(item[0])
            my_db.update_adress(adresse, item[0])
        else:
            print("hat keine URI")

        i += 1

    my_db.closecursor()
    print("update finished closing programm")