
- Implemented complete authentication system with JWT tokens - Created user management with registration and profile endpoints - Built client management with full CRUD operations - Developed invoice system with line items and automatic calculations - Set up SQLite database with proper migrations using Alembic - Added health monitoring and API documentation - Configured CORS for cross-origin requests - Included comprehensive README with usage examples
29 lines
675 B
Python
29 lines
675 B
Python
from pydantic import BaseModel, EmailStr
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
|
|
class ClientBase(BaseModel):
|
|
name: str
|
|
email: EmailStr
|
|
phone: Optional[str] = None
|
|
address: Optional[str] = None
|
|
tax_number: Optional[str] = None
|
|
|
|
class ClientCreate(ClientBase):
|
|
pass
|
|
|
|
class ClientUpdate(BaseModel):
|
|
name: Optional[str] = None
|
|
email: Optional[EmailStr] = None
|
|
phone: Optional[str] = None
|
|
address: Optional[str] = None
|
|
tax_number: Optional[str] = None
|
|
|
|
class ClientResponse(ClientBase):
|
|
id: int
|
|
owner_id: int
|
|
created_at: datetime
|
|
updated_at: datetime
|
|
|
|
class Config:
|
|
from_attributes = True |