2025-06-05 23:45:53 +00:00

42 lines
909 B
Python

from typing import Optional
from datetime import datetime
from pydantic import BaseModel, Field
# Shared properties
class InventoryItemBase(BaseModel):
product_id: Optional[int] = None
quantity: Optional[int] = 0
location: Optional[str] = None
min_stock_level: Optional[int] = 0
max_stock_level: Optional[int] = 0
# Properties to receive via API on creation
class InventoryItemCreate(InventoryItemBase):
product_id: int
quantity: int = Field(..., ge=0)
# Properties to receive via API on update
class InventoryItemUpdate(InventoryItemBase):
pass
class InventoryItemInDBBase(InventoryItemBase):
id: int
last_updated: datetime
class Config:
orm_mode = True
# Additional properties to return via API
class InventoryItem(InventoryItemInDBBase):
pass
# Additional properties stored in DB
class InventoryItemInDB(InventoryItemInDBBase):
pass