Implementierung der Angabe von Lieferdatum oder Leistungszeitraum auf Rechnungen
Beschreibung
Es soll eine neue Funktion implementiert werden, um Lieferdatum oder Leistungszeitraum explizit auf Rechnungen anzugeben. Die Funktion soll erkennen, ob es sich um ein einzelnes Lieferdatum oder einen Zeitraum handelt, basierend auf der Eingabe.
Falls keine Eingabe erfolgt, soll standardmäßig folgender Text auf der Rechnung erscheinen: „Liefer-/Leistungszeitraum entspricht Rechnungsdatum.“
Anforderungen
Benutzeroberfläche (GUI)
-
Ein einziges Eingabefeld für Lieferdatum/Leistungszeitraum
- Das Feld akzeptiert folgende Eingaben:
- Einzelnes Datum: Interpretiert als Lieferdatum.
- Zeitraum: Zwei Datumsangaben, die den Leistungszeitraum definieren (z. B. „01.01.2024 - 31.01.2024“).
- Eingabehilfen:
- Kalender-Picker für Datumseingaben.
- Platzhaltertext: „Bitte Lieferdatum oder Leistungszeitraum eingeben“.
- Das Feld akzeptiert folgende Eingaben:
-
Standardwert bei keiner Eingabe
- Wenn keine Eingabe getätigt wird, soll standardmäßig der Text auf der Rechnung stehen: „Liefer-/Leistungszeitraum entspricht Rechnungsdatum.“
-
Validierung
- Bei Eingabe eines Leistungszeitraums: Sicherstellen, dass das Enddatum nicht vor dem Startdatum liegt.
- Bei Eingabe eines einzelnen Datums: Prüfen, ob es sich um ein gültiges Datum handelt.
Backend-Funktionalitäten
-
Speicherung der Angabe
- Ein neues Attribut in den Rechnungen
- Datentyp: json, der entweder ein einzelnes Datum oder einen von bis Datensatz enthält (z. B. „01.01.2024“ oder „01.01.2024 - 31.01.2024“).
- Ein neues Attribut in den Rechnungen
-
Anpassung der Rechnungsgenerierung
- Die Eingabe wird als Klartext auf der Rechnung angezeigt:
- Beispiel für ein einzelnes Datum: „Lieferdatum: 01.01.2024“.
- Beispiel für einen Zeitraum: „Leistungszeitraum: 01.01.2024 - 31.01.2024“.
- Wenn keine Eingabe: Standardtext „Liefer-/Leistungszeitraum entspricht Rechnungsdatum“.
- Die Eingabe wird als Klartext auf der Rechnung angezeigt:
-
Kompatibilität sicherstellen
- Bestehende Rechnungen ohne diese Angabe müssen weiterhin korrekt verarbeitet werden.
- Wenn keine Eingabe dann Standardtext „Liefer-/Leistungszeitraum entspricht Rechnungsdatum“.
Akzeptanzkriterien
- Benutzer können ein Lieferdatum oder einen Leistungszeitraum eingeben.
- Eingaben werden korrekt interpretiert und dargestellt:
- Einzelnes Datum: „Lieferdatum“.
- Zeitraum: „Leistungszeitraum“.
- Keine Eingabe: Standardtext „Liefer-/Leistungszeitraum entspricht Rechnungsdatum“.
- Validierungen verhindern fehlerhafte Eingaben.
- Kompatibilität mit bestehenden Rechnungen bleibt erhalten.