-- 0031_delivery_review.sql -- -- Vier-Augen-Prüfung für geänderte Lieferscheine. -- -- Sobald an einer Lieferung etwas vom ursprünglichen ERP-Beleg abweicht -- (Artikel entfernt/teil-gutgeschrieben ODER Geld-Gutschrift gesetzt), soll -- ein Mitarbeiter in der Fakturierung das gegenprüfen. -- -- Bewusst KEINE eigene Status-Spalte: der Status wird ABGELEITET aus dem -- vorhandenen Stand (`delivery_items.credited_quantity`, neueste -- `delivery_credit_audit`-Zeile) versus dem hier gespeicherten Bestätigungs- -- Zeitpunkt. Das erfüllt automatisch „Originalzustand wieder erreicht ⇒ Flag -- weg" (keine Abweichung mehr) UND „nach Bestätigung erneut geändert ⇒ wieder -- offen" (resolved_at < letzte Änderung), ohne Logik in die Scan-/Gutschrift- -- Transaktionen zu hängen. -- -- Abgeleiteter Status (im Read berechnet): -- keine Abweichung -> none -- Abweichung, resolved_at NULL oder < letzte Änderung -> pending -- Abweichung, resolved_at >= letzte Änderung -> resolved ALTER TABLE deliveries ADD COLUMN review_resolved_at TIMESTAMPTZ, ADD COLUMN review_resolved_by TEXT, ADD COLUMN review_note TEXT;