from pydantic import BaseModel from typing import Optional from datetime import datetime from app.models.stock_movement import MovementType # Shared properties class StockMovementBase(BaseModel): product_id: str quantity: int unit_price: Optional[float] = None movement_type: MovementType reference: Optional[str] = None notes: Optional[str] = None # Properties to receive via API on creation class StockMovementCreate(StockMovementBase): pass class StockMovementInDBBase(StockMovementBase): id: str created_by: Optional[str] = None created_at: datetime updated_at: datetime class Config: from_attributes = True # Additional properties to return via API class StockMovement(StockMovementInDBBase): pass