from pydantic import BaseModel from typing import Optional from datetime import datetime from app.models.stock_movement import MovementType class StockMovementBase(BaseModel): item_id: int quantity: int movement_type: MovementType reference: Optional[str] = None notes: Optional[str] = None unit_price: Optional[float] = None class StockMovementCreate(StockMovementBase): pass class StockMovementResponse(StockMovementBase): id: int created_at: datetime class Config: from_attributes = True class StockMovementDetailResponse(StockMovementResponse): item: Optional[dict] = None