""" Modele comune pentru toate aplicațiile ROA2WEB """ from pydantic import BaseModel, Field from typing import List, Optional, Dict from datetime import datetime class Company(BaseModel): """Model pentru firma/schema Oracle""" code: str = Field(description="Codul firmei (schema Oracle)") name: str = Field(description="Numele firmei") fiscal_code: Optional[str] = Field(description="Codul fiscal") is_active: bool = Field(default=True, description="Firma activă") class User(BaseModel): """Model pentru utilizator""" username: str = Field(description="Numele utilizatorului") email: Optional[str] = Field(description="Email utilizator") companies: List[str] = Field(description="Lista codurilor firmelor la care are acces") is_active: bool = Field(default=True, description="Utilizator activ") last_login: Optional[datetime] = Field(description="Ultima autentificare") class DatabaseConfig(BaseModel): """Configurare conexiune bază de date""" user: str password: str dsn: str min_connections: int = 2 max_connections: int = 10 increment: int = 1