knuwe1 of FNT
4/16/2016 - 9:01 AM

No Description

No Description

# encoding: utf-8

from psycopg2 import connect
from psycopg2.extensions import ISOLATION_LEVEL_AUTOCOMMIT

def getValueForID(name,id,con):
    cursorX = con.cursor()
    if(name == "flurstueck"):
        cursorX.execute('SELECT lage_index FROM flurstuecke WHERE id =' + str(id))
        res = cursorX.fetchall()
        for elm in res:
            result = elm[0]
    else:
        cursorX.execute('SELECT nname, vname FROM bewirtschafter WHERE id =' + str(id))
        tmp = cursorX.fetchall()
        for el in tmp:
            result = el[1]+ " " + el[0]
    return result

dictTauschabend1 = {}
dictTauschabendN = {}

listeGetauschteFlurstuecke = []

AnzahlObjekteTA1 = 0
AnzahlObjekteTA2 = 0

nrTauschabend = 3


con = connect(user='postgres', host='localhost', password='???', database='owen')
con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT)

cursorA = con.cursor()
cursorA.execute('SELECT tauschabende_id, flurstuecke_id, bewirtschafter_id FROM tausch WHERE tauschabende_id = 1')
tauschEins = cursorA.fetchall()

cursorB = con.cursor()
cursorB.execute('SELECT tauschabende_id, flurstuecke_id, bewirtschafter_id FROM tausch WHERE tauschabende_id = ' + str(nrTauschabend ))
tauschZwei = cursorB.fetchall()

cursorA.close()
cursorB.close()


for tau in tauschEins:
    flurstueck = str(tau[1])
    bewirtschafter = str(tau[2])
    if (flurstueck in dictTauschabend1):
        pass
    else:
        dictTauschabend1[flurstueck] = bewirtschafter

for tau2 in tauschZwei:
    flurstueck = str(tau2[1])
    bewirtschafter = str(tau2[2])
    if (flurstueck in dictTauschabendN):
        pass
    else:
        dictTauschabendN[flurstueck] = bewirtschafter

AnzahlObjekteTA1 = str(len(dictTauschabend1))
AnzahlObjekteTA2 = str(len(dictTauschabendN))
print(AnzahlObjekteTA1 + " - " + AnzahlObjekteTA2)
fileOut = open("ListeTauschFlurstuecke.csv", "w+")
fileOut.write("Flurstueck_ID;BewirtschafterID Tauschabend 1;BewirtschafterID Tauschabend" + str(nrTauschabend)+ "\n")
for it1 in dictTauschabend1.items():
    bewirtschafterAusZwei = dictTauschabendN[it1[0]]
    bewirtschafterAusEins = it1[1]
    if(bewirtschafterAusZwei != bewirtschafterAusEins):
        listeGetauschteFlurstuecke.append(str(it1[0]))
        fileOut.write(getValueForID(name="flurstueck",id=str(it1[0]),con=con)+";"+ getValueForID(name="bewirtschafter",id=bewirtschafterAusEins, con=con) + ";" + getValueForID(name="bewirtschafter",id=bewirtschafterAusZwei, con=con)+ "\n")
    #print("Flurstueck: " + it1[0] + " in T1: " + bewirtschafterAusEins + " in TN: " + bewirtschafterAusZwei )
fileOut.close()
print("Getauschte Flurstücke: " + str(len(listeGetauschteFlurstuecke)))

con.close()

def getValueForID(self,name,id,con):
    cursorX = con.cursor()
    if(name == "flurstueck"):
        cursorX.execute('SELECT lage_index FROM flurstuecke WHERE id =' + str(id))
        res = cursorX.fetchone()
        for elm in res:
            result = elm[0]
    else:
        cursorX.execute('SELECT nname, vname FROM bewirtschafter WHERE id =' + str(id))
        tmp = cursorX.fetchone()
        for el in tmp:
            result = el[1]+ " " + el[0]

    return result