baidu-reporter/app/web/results.py

25 lines
604 B
Python
Raw Normal View History

2025-04-03 22:11:20 +08:00
from dataclasses import dataclass
from typing import Any, Generic
from typing_extensions import TypeVar
from app.constants.api_result import ApiCode
T = TypeVar("T")
@dataclass
class ApiResult(Generic[T]):
code: int
message: str
success: bool
data: T | None = None
@staticmethod
def ok(data: T | None = None) -> 'ApiResult[T]':
return ApiResult(code=ApiCode.OK.value, message="ok", success=True, data=data)
@staticmethod
def error(code: int, message: str) -> 'ApiResult[None]':
return ApiResult(code=code, message=message, success=False, data=None)