首个可运行的版本
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
"""管理后台 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
|
||||
Reference in New Issue
Block a user