feat: initialize aivideo project
This commit is contained in:
30
backend/app/common/responses/api_response.py
Normal file
30
backend/app/common/responses/api_response.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from math import ceil
|
||||
from typing import Any
|
||||
|
||||
from fastapi.responses import JSONResponse
|
||||
|
||||
|
||||
def success_response(data: Any = None, message: str = "ok", status_code: int = 200) -> JSONResponse:
|
||||
return JSONResponse(
|
||||
status_code=status_code,
|
||||
content={"code": 0, "message": message, "data": data},
|
||||
)
|
||||
|
||||
|
||||
def paginated_response(
|
||||
items: list[Any],
|
||||
*,
|
||||
total: int,
|
||||
page: int,
|
||||
page_size: int,
|
||||
) -> JSONResponse:
|
||||
return success_response(
|
||||
{
|
||||
"items": items,
|
||||
"page": page,
|
||||
"pageSize": page_size,
|
||||
"total": total,
|
||||
"totalPages": ceil(total / page_size) if page_size else 1,
|
||||
}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user