| 123456789101112131415161718192021 |
- from math import prod
- from fastapi.responses import JSONResponse
- from auth.security import get_current_user
- from services.data_service import ProductDataService
- from logging import getLogger
- from fastapi import APIRouter, Depends
- from config.messages import SuccessResponse
- logger = getLogger(__name__)
- product_data_service = ProductDataService()
- product_router = APIRouter()
- @product_router.get("/")
- async def get_products(current_user = Depends(get_current_user)):
- """Get products"""
- logger.debug(f"Current user: {current_user.email if current_user else 'Anonymous'}")
- logger.info("Fetching all products")
- all_products = list(map(lambda p: p.model_dump(), product_data_service.get_all()))
- return JSONResponse({"products": all_products, "message": SuccessResponse.PRODUCTS_FETCH_SUCCESS})
|