新增查看站点概况

This commit is contained in:
2026-01-08 14:41:10 +08:00
parent c17511d2e8
commit baf59b9903
6 changed files with 417 additions and 25 deletions

View File

@@ -1,16 +1,107 @@
import uuid
from datetime import datetime
from enum import StrEnum
from sqlmodel import Field
from .base import SQLModelBase
class ResponseBase(SQLModelBase):
"""通用响应模型"""
instance_id: uuid.UUID = Field(default_factory=uuid.uuid4)
"""实例ID用于标识请求的唯一性"""
# ==================== Admin Summary DTO ====================
class MetricsSummary(SQLModelBase):
"""站点统计摘要"""
dates: list[datetime]
"""日期列表"""
files: list[int]
"""每日新增文件数"""
users: list[int]
"""每日新增用户数"""
shares: list[int]
"""每日新增分享数"""
file_total: int
"""文件总数"""
user_total: int
"""用户总数"""
share_total: int
"""分享总数"""
entities_total: int
"""实体总数"""
generated_at: datetime
"""生成时间"""
class LicenseInfo(SQLModelBase):
"""许可证信息"""
expired_at: datetime
"""过期时间"""
signed_at: datetime
"""签发时间"""
root_domains: list[str]
"""根域名列表"""
domains: list[str]
"""域名列表"""
vol_domains: list[str]
"""卷域名列表"""
class VersionInfo(SQLModelBase):
"""版本信息"""
version: str
"""版本号"""
pro: bool
"""是否为专业版"""
commit: str
"""提交哈希"""
class AdminSummaryData(SQLModelBase):
"""管理员概况数据"""
metrics_summary: MetricsSummary
"""统计摘要"""
site_urls: list[str]
"""站点URL列表"""
license: LicenseInfo
"""许可证信息"""
version: VersionInfo
"""版本信息"""
class AdminSummaryResponse(ResponseBase):
"""管理员概况响应"""
data: AdminSummaryData | None = None
"""响应数据"""
class MCPMethod(StrEnum):
"""MCP 方法枚举"""