from fastapi import APIRouter, Depends, HTTPException from datetime import datetime from sqlalchemy.orm import Session from sqlalchemy import and_, func from app.db.database import get_db from app.services.service_manager import ServiceManager from app.schemas.inventory_label import InventoryLabelCreate, InventoryLabelGet, InventoryLabelUpdate, InventoryLabelDelete, InventoryLabelResponse router = APIRouter(prefix="/inventory-labels") service_manager = ServiceManager() # create @router.post("/") async def create_inventory_label( inventory_label: InventoryLabelCreate, db: Session = Depends(get_db) ): inventory_label_service = service_manager.get_service('inventory_label') return await inventory_label_service.create_inventory_label(db, inventory_label) # get @router.get("/") async def get_inventory_label( inventory_label_get: InventoryLabelGet, db: Session = Depends(get_db) ): inventory_label_service = service_manager.get_service('inventory_label') return await inventory_label_service.get_inventory_label(db, inventory_label_get) # update @router.post("/{inventory_label_id}") async def update_inventory_label( inventory_label_id: int, inventory_label: InventoryLabelUpdate, db: Session = Depends(get_db) ): pass # delete @router.delete("/{inventory_label_id}") async def delete_inventory_label( inventory_label_id: int, db: Session = Depends(get_db) ): pass