finance-watcher / database / database_classes.py
database_classes.py
Raw
from dataclasses import dataclass
from datetime import datetime
from typing import Optional

@dataclass
class BusinessType:
    id: int
    name: str

@dataclass
class Business:
    id: int
    name: str
    business_type_id: Optional[int] = None

@dataclass
class Transaction:
    id: int
    dashboard_user_id: int
    amount: int
    business_id: int
    is_expense: bool
    created_date: datetime

@dataclass
class AccountType:
    id: int
    name: str
    is_income: bool
    is_expense: bool

@dataclass
class Account:
    id: int
    dashboard_user_id: int
    name: str
    account_type_id: int
    created_date: datetime
    updated_date: Optional[datetime] = None

@dataclass
class User:
    id: int
    name: str
    created_date: datetime
    updated_date: Optional[datetime] = None
    last_login: Optional[datetime] = None

@dataclass
class Budget:
    id: int
    name: str
    amount: int
    dashboard_user_id: int
    business_type_id: int
    created_date: datetime
    updated_date: Optional[datetime] = None