aboutsummaryrefslogtreecommitdiff
path: root/inventory-service/app/api/v1/endpoints/stock_movements.py
blob: f70396f7fcc60a3a6f7154a52ce35e9ebb1c9401 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
from fastapi import APIRouter, Depends, status
from sqlalchemy.orm import Session
from typing import List

from app.api import deps
from app.schemas.inventory import StockMovementOut


router = APIRouter()


@router.get("/", response_model=List[StockMovementOut])
def list_stock_movements(
    skip: int = 0,
    limit: int = 100,
    db: Session = Depends(deps.get_db),
):
    """
    Return a paginated list of all stock movements across all products.
    Useful for auditing the full history of reservations and releases.
    """
    pass  # TODO: implement


@router.get("/product/{product_id}", response_model=List[StockMovementOut])
def list_movements_for_product(
    product_id: int,
    skip: int = 0,
    limit: int = 100,
    db: Session = Depends(deps.get_db),
):
    """
    Return all stock movements for a specific product.
    """
    pass  # TODO: implement


@router.get("/order/{order_id}", response_model=List[StockMovementOut])
def list_movements_for_order(
    order_id: int,
    db: Session = Depends(deps.get_db),
):
    """
    Return all stock movements associated with a specific order.
    Lets you see exactly what was reserved/released for a given order.
    """
    pass  # TODO: implement