"""管理后台 Schema""" from datetime import datetime from pydantic import BaseModel class AdminLoginRequest(BaseModel): password: str class AdminLoginResponse(BaseModel): access_token: str token_type: str = "bearer" class DashboardStats(BaseModel): total_users: int online_users: int total_messages: int today_messages: int total_conversations: int new_users_7d: int class TrendDataPoint(BaseModel): date: str value: int class UserAdminRead(BaseModel): id: str username: str email: str avatar_url: str | None = None status: str is_banned: bool banned_reason: str | None = None last_seen_at: datetime | None = None created_at: datetime model_config = {"from_attributes": True} class UserBanRequest(BaseModel): is_banned: bool reason: str | None = None class SystemConfigRead(BaseModel): key: str value: str model_config = {"from_attributes": True} class SystemConfigUpdate(BaseModel): configs: dict[str, str] class AdminMessageFilter(BaseModel): user_id: str | None = None conversation_id: str | None = None keyword: str | None = None date_from: str | None = None date_to: str | None = None