Import Nivellement
This commit is contained in:
43
Datenbank.py
43
Datenbank.py
@@ -21,9 +21,11 @@ class Datenbank_anlegen:
|
||||
naeherungx_lh NUMERIC(9,3),
|
||||
naeherungy_lh NUMERIC(7,3),
|
||||
naeherungz_lh NUMERIC(8,3),
|
||||
naeherungz_lh_niv NUMERIC(8,3),
|
||||
naeherungx_us NUMERIC(9,3),
|
||||
naeherungy_us NUMERIC(7,3),
|
||||
naeherungz_us NUMERIC(8,3),
|
||||
normalhoehe_hfp NUMERIC(5,3),
|
||||
datumskoordinate_x INTEGER DEFAULT 0,
|
||||
datumskoordinate_y INTEGER DEFAULT 0,
|
||||
datumskoordinate_z INTEGER DEFAULT 0,
|
||||
@@ -55,6 +57,9 @@ class Datenbank_anlegen:
|
||||
gnss_q31 NUMERIC(1, 8),
|
||||
gnss_q32 NUMERIC(1, 8),
|
||||
gnss_q33 NUMERIC(1, 8),
|
||||
niv_dh NUMERIC(8, 6),
|
||||
niv_strecke NUMERIC(8, 6),
|
||||
niv_anz_standpkte INTEGER,
|
||||
dateiname TEXT(200),
|
||||
CONSTRAINT pk_Beobachtungen PRIMARY KEY (beobachtungenID),
|
||||
CONSTRAINT fk_Beobachtungen_Netzpunktesp FOREIGN KEY (punktnummer_sp) REFERENCES Netzpunkte(punktnummer),
|
||||
@@ -317,6 +322,44 @@ class Datenbankzugriff:
|
||||
cursor.close()
|
||||
con.close()
|
||||
|
||||
def set_normalhoehe_hfp(self, liste_normalhoehe_hfp):
|
||||
liste_hfp_in_db = self.get_normalhoehe_hfp()
|
||||
if liste_normalhoehe_hfp != []:
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_punktnummern_in_db = [str(r[0]) for r in cursor.execute(
|
||||
"SELECT punktnummer FROM Netzpunkte"
|
||||
).fetchall()]
|
||||
ausgaben = []
|
||||
for hfp in liste_normalhoehe_hfp:
|
||||
if str(hfp[0]) in liste_punktnummern_in_db:
|
||||
cursor.execute("UPDATE Netzpunkte SET normalhoehe_hfp = ? WHERE punktnummer = ?",
|
||||
(hfp[1], hfp[0])
|
||||
)
|
||||
ausgaben.append(f"Der HFP {hfp[0]} wurde aktualisiert.")
|
||||
else:
|
||||
cursor.execute(
|
||||
"INSERT INTO Netzpunkte (punktnummer, normalhoehe_hfp) VALUES (?, ?)",
|
||||
(hfp[0], hfp[1])
|
||||
)
|
||||
ausgaben.append(f"Der HFP {hfp[0]} wurde neu hinzugefügt.")
|
||||
|
||||
con.commit()
|
||||
cursor.close()
|
||||
con.close()
|
||||
return "\n".join(ausgaben)
|
||||
else:
|
||||
return f"Es wurden keine neuen Normalhöhen übergeben. Folgende Normalhöhen sind in der Datenbank enthalten: {liste_hfp_in_db}"
|
||||
|
||||
def get_normalhoehe_hfp(self):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
liste_hfp = cursor.execute("SELECT punktnummer, normalhoehe_hfp FROM Netzpunkte WHERE normalhoehe_hfp IS NOT NULL").fetchall()
|
||||
cursor.close()
|
||||
con.close()
|
||||
return liste_hfp
|
||||
|
||||
|
||||
def get_instrument_liste(self, typ):
|
||||
con = sqlite3.connect(self.pfad_datenbank)
|
||||
cursor = con.cursor()
|
||||
|
||||
Reference in New Issue
Block a user