from typing import List, Optional from pydantic import BaseModel class Product(BaseModel): """Product model matching the database schema""" id: int name: str type: Optional[str] = None description: Optional[str] = None price: float image: Optional[str] = None status: int = 1 # 0: Inactive, 1: Active quantity: Optional[int] = 1 # Optional quantity for the product class ProductEditRequest(BaseModel): """Request model for editing a product""" name: Optional[str] = None type: Optional[str] = None description: Optional[str] = None price: Optional[float] = None image: Optional[str] = None status: Optional[int] = None # 0: Inactive, 1: Active quantity: Optional[int] = None # Optional quantity for the product class ProductCreateRequest(BaseModel): """Request model for creating a new product""" id: int name: str type: str description: str price: float image: str status: Optional[int] = 1 # 0: Inactive, 1: Active quantity: Optional[int] = 1 # Optional quantity for the product