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:
+15
-2
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user