浏览代码

sale fix response

latapp 9 月之前
父节点
当前提交
b2476911b2
共有 1 个文件被更改,包括 15 次插入6 次删除
  1. 15 6
      routes/sales.py

+ 15 - 6
routes/sales.py

@@ -1,23 +1,32 @@
 from logging import getLogger
 from venv import logger
 from fastapi.responses import JSONResponse
-from config.messages import ErrorResponse
-from services.data_service import SalesDataService
+from config.messages import ErrorResponse, UserResponse
+from services.data_service import DataServiceFactory
 from fastapi import APIRouter, Depends
 from models.sales import Sale
-sale_data_service = SalesDataService()
+
+
+sale_data_service = DataServiceFactory.get_sales_service()
+user_data_service = DataServiceFactory.get_user_service()
 
 logger = getLogger(__name__)
 sales_router = APIRouter()
 
 @sales_router.get("/user/{user_id}", response_model=list[Sale])
 def get_user_sales(user_id: int):
-    sales = sale_data_service.get_by_user(user_id)
-    if not sales:
+    user = user_data_service.get_by_id(user_id)
+    if not user:
         return JSONResponse(
             status_code=404,
-            content={"message": ErrorResponse.SALE_NOT_FOUND}
+            content={"message": UserResponse.USER_NOT_FOUND}
         )
+    sales = sale_data_service.get_by_user(user_id)
+    if not sales:
+        return JSONResponse(status_code=200, content={
+            "sales": [],
+            "message": "No se encontraron ventas para el usuario."
+        })
     logger.info(f"Sales found for user {user_id}: {len(sales)} sales")
     return JSONResponse(
         status_code=200,