Temporärer Weiter?-Stopp nach 'Verfahrensgebiet aus ZIP laden' + Ablauf-Doku
- verfahrensgebiet_shape_komplett.py: TEMPORÄRER STOPP (wieder entfernen) zur Zwischenkontrolle nach dem ZIP-Import. Layer wird dafür schon an dieser Stelle sichtbar ins Projekt eingefügt statt erst nach Schritt 2; bei "Nein" bleibt der Layer zur Inspektion erhalten (abgeschlossen=True), der spätere reguläre addMapLayer-Aufruf prüft auf Duplikat. - docs/ablauf_verfahrensgebiet_laden.md: Mermaid-Diagramm der Lade-Abläufe (ALKIS/Shape) bis zu den jeweiligen frühen Stopps. Lokaler Debug-Branch, bewusst nicht für unstable vorgesehen.
This commit is contained in:
@@ -0,0 +1,27 @@
|
|||||||
|
# Ablauf: Verfahrensgebiet laden – frühzeitige Stopps
|
||||||
|
|
||||||
|
Zwei Stellen, an denen der jeweilige Ablauf vorzeitig endet:
|
||||||
|
|
||||||
|
- **Aus ALKIS laden**, Option "Nur Objekte laden": bricht direkt nach dem
|
||||||
|
Laden des BROR-Objekts ab, kein weiterer Workflow.
|
||||||
|
- **Aus Shape laden**, "Nein" beim (aktuell temporären) Weiter?-Dialog nach
|
||||||
|
dem ZIP-Import: bricht ab, bevor das BROR-Objekt überhaupt geladen wird.
|
||||||
|
|
||||||
|
Quellen: `functions/verfahrensgebiet_alkis_komplett.py`,
|
||||||
|
`functions/verfahrensgebiet_shape_komplett.py`.
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
flowchart TD
|
||||||
|
Start(["Verfahrensgebiet"])
|
||||||
|
|
||||||
|
subgraph ALKIS[" "]
|
||||||
|
A1["Aus ALKIS laden"] --> AE[("Layer: BauRaumOderBodenordnungsrecht (ALKIS)")]
|
||||||
|
end
|
||||||
|
|
||||||
|
subgraph SHAPE[" "]
|
||||||
|
S1["Aus Shape laden"] --> SE[("Layer: Verfahrensgebiet (aus ZIP)")]
|
||||||
|
end
|
||||||
|
|
||||||
|
Start --> A1
|
||||||
|
Start --> S1
|
||||||
|
```
|
||||||
@@ -53,6 +53,7 @@ from sn_basis.functions.dialog_wrapper import (
|
|||||||
create_progress_dialog,
|
create_progress_dialog,
|
||||||
show_info_dialog,
|
show_info_dialog,
|
||||||
ask_detailpruefung_oder_abbrechen,
|
ask_detailpruefung_oder_abbrechen,
|
||||||
|
ask_yes_no,
|
||||||
)
|
)
|
||||||
|
|
||||||
from sn_verfahrensgebiet.functions.verfahrensgebiet_alkis import LoadStatus, verfahrensgebiet_alkis
|
from sn_verfahrensgebiet.functions.verfahrensgebiet_alkis import LoadStatus, verfahrensgebiet_alkis
|
||||||
@@ -443,6 +444,22 @@ def verfahrensgebiet_shape_komplett(
|
|||||||
if not shape_vg_layer:
|
if not shape_vg_layer:
|
||||||
return None, None, None, LoadStatus.NONE
|
return None, None, None, LoadStatus.NONE
|
||||||
|
|
||||||
|
# TEMPORÄRER STOPP (wieder entfernen): Pause nach "Verfahrensgebiet
|
||||||
|
# aus ZIP laden" zur Zwischenkontrolle – Layer dafür schon jetzt
|
||||||
|
# sichtbar ins Projekt einfügen (normalerweise erst nach Schritt 2).
|
||||||
|
project.addMapLayer(shape_vg_layer)
|
||||||
|
shape_was_added_by_us = True
|
||||||
|
if not ask_yes_no(
|
||||||
|
"Verfahrensgebiet aus ZIP laden",
|
||||||
|
"Verfahrensgebiet aus ZIP wurde geladen. Weiter?",
|
||||||
|
default=True,
|
||||||
|
parent=tab_widget,
|
||||||
|
):
|
||||||
|
# abgeschlossen=True, damit der finally-Block den zur Kontrolle
|
||||||
|
# eingefügten Layer NICHT wieder entfernt (kein Fehlerfall).
|
||||||
|
abgeschlossen = True
|
||||||
|
return None, None, None, LoadStatus.NONE
|
||||||
|
|
||||||
vg_status = LoadStatus.FIRST
|
vg_status = LoadStatus.FIRST
|
||||||
progress.set_value(1)
|
progress.set_value(1)
|
||||||
|
|
||||||
@@ -468,9 +485,11 @@ def verfahrensgebiet_shape_komplett(
|
|||||||
|
|
||||||
progress.set_value(2)
|
progress.set_value(2)
|
||||||
|
|
||||||
# Shape-VG erst jetzt ins Projekt einfügen (nach BROR-Ladung)
|
# Shape-VG erst jetzt ins Projekt einfügen (nach BROR-Ladung) – außer
|
||||||
project.addMapLayer(shape_vg_layer)
|
# der TEMPORÄRE STOPP oben hat ihn schon eingefügt.
|
||||||
shape_was_added_by_us = True
|
if not project.mapLayer(shape_vg_layer.id()):
|
||||||
|
project.addMapLayer(shape_vg_layer)
|
||||||
|
shape_was_added_by_us = True
|
||||||
|
|
||||||
# ------------------------------------------------------------------
|
# ------------------------------------------------------------------
|
||||||
# Schritt 3: Gemarkungsschlüssel per Geometrie-Spatial-Join ermitteln
|
# Schritt 3: Gemarkungsschlüssel per Geometrie-Spatial-Join ermitteln
|
||||||
|
|||||||
Reference in New Issue
Block a user