mirror of
https://github.com/complexcaresolutions/dak.c2s.git
synced 2026-03-17 18:23:42 +00:00
40 lines
840 B
Python
40 lines
840 B
Python
"""Pydantic schemas for CSV import preview/confirm flow."""
|
|
|
|
from datetime import date
|
|
from typing import Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class ImportRow(BaseModel):
|
|
"""Single row in import preview."""
|
|
|
|
row_number: int
|
|
nachname: str
|
|
vorname: Optional[str] = None
|
|
geburtsdatum: Optional[date] = None
|
|
kvnr: Optional[str] = None
|
|
fallgruppe: str
|
|
datum: date
|
|
is_duplicate: bool = False
|
|
fall_id: Optional[str] = None
|
|
|
|
|
|
class ImportPreview(BaseModel):
|
|
"""Preview of CSV import before confirmation."""
|
|
|
|
filename: str
|
|
total_rows: int
|
|
new_cases: int
|
|
duplicates: int
|
|
errors: list[str] = []
|
|
rows: list[ImportRow] = []
|
|
|
|
|
|
class ImportResult(BaseModel):
|
|
"""Result after confirming import."""
|
|
|
|
imported: int
|
|
skipped: int
|
|
updated: int
|
|
errors: list[str] = []
|