Files
finance-app/backend/app/schemas/upload.py

28 lines
602 B
Python

from typing import Optional
from .base import CamelModel
class ColumnMapping(CamelModel):
strategy: str # A | B
date_column: str
description_column: str
amount_column: Optional[str] = None
invert_amount_sign: Optional[bool] = None
debit_column: Optional[str] = None
credit_column: Optional[str] = None
class UploadResult(CamelModel):
success: bool
detected: Optional[str]
imported_count: int
skipped_count: int
file_name: str
class MappingRequired(CamelModel):
requires_mapping: bool = True
headers: list[str]
sample_rows: list[dict]