Zwei Stufen (Erinnerung an Materialverantwortliche, Eskalation an Leitungsverantwortliche/Administration) mit Tracking-Zeitstempel je Stufe gegen Mehrfachversand. Zeitschwellen in eskalation_konfiguration (DB, Singleton), admin-editierbar über GET/PUT /eskalation/konfiguration - bewusst nicht fix im Code. Prüflauf per POST /eskalation/pruefen angestoßen, Scheduling (Cron/systemd-Timer) bleibt Betriebsaufgabe. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
17 lines
656 B
Python
17 lines
656 B
Python
from sqlalchemy import Integer
|
|
from sqlalchemy.orm import Mapped, mapped_column
|
|
|
|
from app.db.base import Base
|
|
|
|
|
|
class EskalationKonfiguration(Base):
|
|
"""Karte 12: Zeitschwellen für die Fehlbestand-Eskalation müssen zur Laufzeit
|
|
änderbar sein, nicht fix im Code (Nutzer-Vorgabe) - Singleton-Zeile (id=1),
|
|
per Admin-Endpunkt lesbar/änderbar statt Settings/Env."""
|
|
|
|
__tablename__ = "eskalation_konfiguration"
|
|
|
|
id: Mapped[int] = mapped_column(Integer, primary_key=True)
|
|
erinnerung_tage: Mapped[int] = mapped_column(Integer, nullable=False, default=3)
|
|
leitung_tage: Mapped[int] = mapped_column(Integer, nullable=False, default=7)
|