feat(backend): implemented basic controller layer

This commit is contained in:
ribardej
2025-10-13 12:07:47 +02:00
parent 6c248039ac
commit 2f20fb12e4
6 changed files with 372 additions and 25 deletions

View File

@@ -0,0 +1,21 @@
from typing import List, Optional
from pydantic import BaseModel, Field
class TransactionBase(BaseModel):
amount: float = Field(..., gt=-1e18, lt=1e18)
description: Optional[str] = None
class TransactionCreate(TransactionBase):
category_ids: Optional[List[int]] = None
class TransactionUpdate(BaseModel):
amount: Optional[float] = Field(None, gt=-1e18, lt=1e18)
description: Optional[str] = None
category_ids: Optional[List[int]] = None
class TransactionRead(TransactionBase):
id: int
category_ids: List[int] = []
class Config:
from_attributes = True