feat: initialize aivideo project

This commit is contained in:
2026-04-17 18:33:05 +08:00
commit 14b18d67fe
162 changed files with 26251 additions and 0 deletions

View 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,
}
)