feat(rechnungen): Laufzeiten bestaetigen, Rechnungen erfassen und Status setzen (#008)
Rechnungen mit Positionen: gleiche Nummer ergibt eine Sammelrechnung ueber mehrere Laufzeiten. PDF-Upload mit Inhaltspruefung und Ablage unter der Pruefsumme, Haekchen direkt in der Tabelle, Filter nach Status, Kunde und Jahr. 78 Tests. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,28 +1,37 @@
|
||||
# #008 Laufzeiten und Rechnungen
|
||||
**Status:** offen
|
||||
**Status:** erledigt
|
||||
**Meilenstein:** v0.5.0
|
||||
**Labels:** ui, backend, buchhaltung
|
||||
**Geschätzt:** 10 h **Tatsächlich:** –
|
||||
**Geschätzt:** 10 h **Tatsächlich:** 0 h 35 min
|
||||
|
||||
## Ziel
|
||||
Lizenzjahre mit Proxmox-Einkaufsrechnung und Kundenrechnung erfassen und den Status schnell pflegen.
|
||||
|
||||
## Aufgaben
|
||||
- [ ] Laufzeitvorschlag bei neuem `nextduedate` bestätigen/verwerfen
|
||||
- [ ] Laufzeit manuell anlegen/bearbeiten
|
||||
- [ ] Proxmox-Rechnung erfassen (auch Sammelrechnung über mehrere Laufzeiten), PDF-Upload
|
||||
- [ ] Kundenrechnung erfassen (auch Sammelrechnung), PDF-Upload
|
||||
- [ ] Marge pro Laufzeit, Kunde und Jahr berechnen
|
||||
- [ ] Rechnungsübersicht: alle Laufzeiten, Umschalter „Proxmox bezahlt“ / „Kundenrechnung erstellt“ direkt in der Zeile, Filter Offen/Erledigt/Alle, Kunde, Zeitraum
|
||||
- [ ] Sidebar-Badge offene Rechnungspunkte
|
||||
- [ ] Aufgaben-Card auf dem Dashboard mit echten Aktionen
|
||||
- [x] Laufzeitvorschlag bei neuem `nextduedate` bestätigen/verwerfen
|
||||
- [x] Laufzeit manuell anlegen/bearbeiten
|
||||
- [x] Proxmox-Rechnung erfassen (auch Sammelrechnung über mehrere Laufzeiten), PDF-Upload
|
||||
- [x] Kundenrechnung erfassen (auch Sammelrechnung), PDF-Upload
|
||||
- [x] Marge pro Laufzeit, Kunde und Jahr berechnen
|
||||
- [x] Rechnungsübersicht: alle Laufzeiten, Umschalter „Proxmox bezahlt“ / „Kundenrechnung erstellt“ direkt in der Zeile, Filter Offen/Erledigt/Alle, Kunde, Zeitraum
|
||||
- [x] Sidebar-Badge offene Rechnungspunkte
|
||||
- [x] Aufgaben-Card auf dem Dashboard mit echten Aktionen
|
||||
|
||||
## Akzeptanzkriterien
|
||||
- [ ] Umschalten in der Tabelle wirkt sofort und wird im Audit-Log protokolliert
|
||||
- [ ] Summen Einkauf/Verkauf/Marge stimmen mit Einzelwerten überein (Tests)
|
||||
- [ ] Nur PDF bis 10 MB wird angenommen
|
||||
- [x] Umschalten in der Tabelle wirkt sofort und wird im Audit-Log protokolliert
|
||||
- [x] Summen Einkauf/Verkauf/Marge stimmen mit Einzelwerten überein (Tests)
|
||||
- [x] Nur PDF bis 10 MB wird angenommen
|
||||
|
||||
## Abhängigkeiten
|
||||
#007
|
||||
|
||||
## Notizen / Entscheidungen
|
||||
- **Sammelrechnungen ohne Extraschritt:** Wer bei einer zweiten Laufzeit dieselbe Rechnungsnummer einträgt,
|
||||
hängt sie als weitere Position an die bestehende Rechnung. Der Rechnungsbetrag ist immer die Summe der
|
||||
Positionen, wird also automatisch nachgeführt.
|
||||
- Das Häkchen „Kundenrechnung erstellt“ legt bei fehlender Rechnung eine ohne Nummer an; Nummer und Betrag
|
||||
lassen sich später nachtragen, ohne dass eine zweite Rechnung entsteht.
|
||||
- Das Erfassen einer Proxmox-Rechnung bestätigt einen Laufzeit-Vorschlag automatisch.
|
||||
- PDFs werden unter ihrer Prüfsumme abgelegt (`UPLOAD_DIR`, Standard `./data/uploads`). Geprüft wird der
|
||||
Dateianfang, nicht der gemeldete Typ – eine umbenannte Datei wird abgelehnt. Dieselbe Datei belegt nur
|
||||
einmal Platz.
|
||||
|
||||
Reference in New Issue
Block a user