docs(backlog): ASSET-013 Übergabeliste bei Verleih/Aussonderung geplant
CI / backend-tests (push) Successful in 3m18s
CI / frontend-build (push) Successful in 22s

Nutzer-Anforderung: signierbare Materialliste, sobald ein Objekt dauerhaft
den Standort verlässt (Verleih oder Aussonderung). Nur Planung, keine
Umsetzung - Entscheidungen getroffen: neuer ObjektStatus.ausgesondert,
weasyprint für PDF-Erzeugung, Verleih+Aussonderung zusammen in einer Kachel.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VDMvneg6wKfXdXvTYNd3dN
This commit is contained in:
patrickandClaude Sonnet 5 committed 2026-09-12 22:43:40 +02:00
1 parent 9312d6a17c
commit 5ce9430816
2 files changed
+88

No files matched your search

+28
View File
@@ -15069,3 +15069,31 @@ Keine Commits in dieser Session.
- frontend/src/pages/MangelListePage.tsx | 6 +-
---
## 2026-09-12 22:32 – 22:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** frontend
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/DEVLOG.md | 14 ++++++++++++++
- frontend/src/api/client.ts | 18 ++++++++++++++++++
- frontend/src/auth/AuthContext.tsx | 16 +++++++++++++++-
---
## 2026-09-12 22:39 – 22:43 (4m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/DEVLOG.md | 14 ++++++++++++++
- frontend/src/api/client.ts | 18 ++++++++++++++++++
- frontend/src/auth/AuthContext.tsx | 16 +++++++++++++++-
---
+60
View File
@@ -486,6 +486,66 @@ Details zu ASSET-001 … ASSET-010. ASSET-010 ergänzt am 2026-09-09 aus Open-So
anzeigen" in `ObjekttypSection.tsx`, `AkteRead.ressourcenbuchung_aktiv`
steuert die bedingte Anzeige des Panels in `AktePage.tsx`.
## ASSET-013 — Signierbare Material-Übergabeliste bei Verleih/Aussonderung (P2, neu, Nutzer-Anforderung 2026-09-12)
- **Ziel:** Solange ein Objekt an seinem Standort im Einsatz ist, bleibt es
ganz normal Teil des Bestands dort. Verlässt es den Standort dauerhaft
(Verleih an externe Stelle ODER Aussonderung), soll eine ausdruckbare
Materialliste mit dem tatsächlichen Ist-Bestand erzeugt werden, die vor
Ort unterschrieben werden kann — Nachweis, was zum Übergabezeitpunkt
mitgegeben wurde.
- **Bewusste Abgrenzung:** kein neuer Datenbestand, sondern ein
Druck-/Export-Feature auf Basis vorhandener Daten (Objektpositionen +
letzte Kontrolle). Kein digitaler Signatur-Workflow (keine
Rechtsverbindlichkeit/eSignatur) — reines PDF zum handschriftlichen
Unterschreiben, wie bei Fahrzeug-Übergaben in der Praxis üblich.
- **Beschreibung:** Zwei Auslöser für dieselbe Liste:
1. **ASSET-011 Verleih** (`POST /verleih`): optionaler Button/Link
„Übergabeliste drucken" auf dem neu erstellten Verleih-Datensatz.
2. **Aussonderung** (NEU): neuer `ObjektStatus`-Wert `ausgesondert` —
**entschieden 2026-09-12**, bewusst getrennt von `ausser_dienst`
(das bleibt temporär/Werkstatt-Bedeutung), `ausgesondert` heißt
dauerhaft aus dem Bestand entfernt.
Liste enthält: Objekt (Name/Code/Standort), Zeitpunkt, alle
Objektpositionen mit Soll- und letzter erfasster Istmenge (aus der
jüngsten abgeschlossenen Kontrolle), Unterschriftsfelder (Übergeber/
Übernehmer).
- **Benutzerwert:** Kein Streit im Nachhinein, was beim Verleih/bei der
Aussonderung tatsächlich im Rucksack/Fahrzeug war — schriftlicher Beleg
statt "meiner Erinnerung nach war da noch...".
- **Abhängigkeiten:** ASSET-011 (Verleih, umgesetzt), DOC-001 (Dokument-
Upload — unterschriebene Liste danach als Scan ans Objekt/den Verleih-
Datensatz hängen), Klärung Aussonderungs-Zustand (siehe oben)
- **Datenmodell:** keine neue Tabelle für die Liste selbst (reine
Ableitung); ggf. neuer `ObjektStatus`-Wert `ausgesondert` (Migration) und
optional `verleih.uebergabeliste_dokument_id` bzw. generische
Dokument-Verknüpfung über bestehendes `entitaet_typ="verleih"`-Muster
(DOC-001 unterstützt das bereits ohne Schemaänderung).
- **Backend:** `GET /verleih/{id}/uebergabeliste` (PDF) bzw.
`GET /objekte/{id}/uebergabeliste` (für Aussonderung) - liefert
serverseitig mit `weasyprint` (HTML/CSS zu PDF, entschieden 2026-09-12)
gerendertes PDF aus Objektpositionen + letzter Kontrolle.
- **Frontend:** Button „Übergabeliste drucken" im Verleih-Tab und (nach
Klärung Aussonderungs-Workflow) im Objekt-Status-Wechsel-Dialog; danach
optional direkt Upload-Dialog für den unterschriebenen Scan (DOC-001).
- **Mobile:** keins (Verwaltungsvorgang, wie ASSET-011)
- **QR-Code/Seriennummer/Inventarnummer:** nein
- **Akte:** unterschriebene Liste (Scan) im Dokumentenbereich sichtbar
- **Rechte:** wie ASSET-011 (Materialverantwortliche/Administration)
- **Audit:** Erzeugen der Liste geloggt (wer/wann, nicht der PDF-Inhalt
selbst)
- **Akzeptanzkriterien:** PDF enthält korrekten Ist-Bestand zum
Erzeugungszeitpunkt, ist ohne weiteren Login-Kontext lesbar (Standort/
Objekt-Name statt nur IDs), Aussonderungs-Fall erst nach
DECISION-REQUIRED-Klärung akzeptanzfähig.
- **Tests:** PDF-Erzeugung liefert erwartete Positionen/Mengen, 404 bei
nicht existierendem Verleih/Objekt.
- **DoD:** offen — noch nicht begonnen. Entscheidungen 2026-09-12 getroffen:
`weasyprint`, neuer `ObjektStatus.ausgesondert`, Verleih+Aussonderung
zusammen in dieser Kachel. Prüfen ob `weasyprint` bereits Systemabhängig-
keiten braucht (Pango/Cairo) — auf dem Zielserver (Debian 13 LXC) vor
Deploy verifizieren, da das eine reine Python-Paketinstallation übersteigt.
---
**MABEA-Ist-Stand-Abgleich (aktualisiert 2026-09-10):** ASSET-001…004 entsprechen `Bereich`/`Kategorie`,