from pydantic import BaseModel from typing import Optional from datetime import datetime class ItemBase(BaseModel): name: str description: Optional[str] = None sku: Optional[str] = None barcode: Optional[str] = None quantity: int = 0 unit_price: Optional[float] = None reorder_level: Optional[int] = None location: Optional[str] = None category_id: Optional[int] = None supplier_id: Optional[int] = None class ItemCreate(ItemBase): pass class ItemUpdate(BaseModel): name: Optional[str] = None description: Optional[str] = None sku: Optional[str] = None barcode: Optional[str] = None quantity: Optional[int] = None unit_price: Optional[float] = None reorder_level: Optional[int] = None location: Optional[str] = None category_id: Optional[int] = None supplier_id: Optional[int] = None class ItemInDBBase(ItemBase): id: int owner_id: int created_at: datetime updated_at: datetime class Config: from_attributes = True class Item(ItemInDBBase): pass