Zweite Anhaengen-Pipeline (Gemarkungen-Button) auf Dedup umgestellt (#28)

handle_flurst_aus_gemarkungen in working_tab.py hatte eine eigene,
von flurstueck_alkis() unabhaengige Anhaengen-Logik, die
lade_flurstuecke_per_gemarkung direkt aufrief und ungefiltert
anhaengte. Nutzt jetzt dieselbe flurstueckskennzeichen-Pruefung wie
der Fix im vorigen Commit; dafuer vorhandene_kennzeichen() in
flurstueck_alkis.py oeffentlich gemacht.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-15 09:17:30 +02:00
co-authored by Claude Sonnet 5
parent 821bb0640e
commit 003ad1957b
4 changed files with 155 additions and 5 deletions
+15 -2
View File
@@ -18,8 +18,10 @@ from sn_verfahrensgebiet.functions.verfahrensgebiet_alkis import LoadStatus
from sn_verfahrensgebiet.functions.flurstueck_alkis import (
flurstueck_alkis,
lade_flurstuecke_per_gemarkung,
vorhandene_kennzeichen,
ALKIS_SF_URL,
FLST_LAYER_NAME,
FELD_FLURSTUECKSKENNZEICHEN,
)
from sn_verfahrensgebiet.functions.verfahrensgebiet_alkis_komplett import (
verfahrensgebiet_alkis_komplett,
@@ -517,11 +519,22 @@ class WorkingTab(QWidget):
duration=0,
)
return
existing_flst[0].dataProvider().addFeatures(list(temp_layer.getFeatures()))
neue_feats = list(temp_layer.getFeatures())
if temp_layer.fields().indexFromName(FELD_FLURSTUECKSKENNZEICHEN) >= 0:
vorhandene = vorhandene_kennzeichen(existing_flst[0])
neue_feats = [
f for f in neue_feats
if str(f[FELD_FLURSTUECKSKENNZEICHEN] or "").strip() not in vorhandene
]
existing_flst[0].dataProvider().addFeatures(neue_feats)
existing_flst[0].updateExtents()
iface.mapCanvas().refresh()
self.setze_haken(self.haken_flurst, True)
success("Flurstücke", "Features wurden an den vorhandenen Layer angehängt.", duration=5)
success(
"Flurstücke",
f"{len(neue_feats)} neue Features wurden an den vorhandenen Layer angehängt.",
duration=5,
)
return
# else: Überschreiben → fall-through zum flurstueck_alkis(ohne_dialog=True)-Aufruf