feat(dokumente): DOC-004 Original-vs-Kopie-Kennzeichnung
Neues Feld ist_original (Boolean, Migration 0029) - explizit beim Upload und beim Ersetzen (DOC-003) setzbar, kein Default in eine Richtung erraten. Wird beim Ersetzen bewusst NICHT vom Vorgänger übernommen (neue Version könnte ein nachgereichtes Original sein, das eine bisherige Kopie ersetzt, oder umgekehrt). Frontend: Checkbox "Original (nicht nur Kopie/Scan)" im Upload-Formular, "Original"-Badge in der Dokumentenliste. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
"""DOC-004: Original-vs-Kopie-Kennzeichnung bei Dokumenten.
|
||||
|
||||
Revision ID: 0029_dokument_original
|
||||
Revises: 0028_fk_indizes
|
||||
Create Date: 2026-09-08
|
||||
"""
|
||||
from typing import Sequence, Union
|
||||
|
||||
from alembic import op
|
||||
|
||||
revision: str = "0029_dokument_original"
|
||||
down_revision: Union[str, None] = "0028_fk_indizes"
|
||||
branch_labels: Union[str, Sequence[str], None] = None
|
||||
depends_on: Union[str, Sequence[str], None] = None
|
||||
|
||||
|
||||
def upgrade() -> None:
|
||||
op.execute(
|
||||
"ALTER TABLE dokument ADD COLUMN ist_original BOOLEAN NOT NULL DEFAULT false"
|
||||
)
|
||||
# Default nur für den Backfill nötig - künftige Inserts geben es immer
|
||||
# explizit an (Anwendungsebene).
|
||||
op.execute("ALTER TABLE dokument ALTER COLUMN ist_original DROP DEFAULT")
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
op.execute("ALTER TABLE dokument DROP COLUMN ist_original")
|
||||
Reference in New Issue
Block a user