mirror of
https://github.com/Cccc-owo/CheckInApp.git
synced 2026-06-17 14:06:28 +00:00
refactor: v2
backend & frontend
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
from typing import Optional
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class QRCodeRequest(BaseModel):
|
||||
"""请求二维码 Schema"""
|
||||
alias: str = Field(..., description="用户别名")
|
||||
|
||||
|
||||
class QRCodeResponse(BaseModel):
|
||||
"""二维码响应 Schema"""
|
||||
session_id: str = Field(..., description="会话 ID")
|
||||
qrcode_image: str = Field(..., description="二维码 Base64 图片")
|
||||
|
||||
|
||||
class QRCodeStatusResponse(BaseModel):
|
||||
"""二维码状态响应 Schema"""
|
||||
status: str = Field(..., description="状态: pending/waiting_scan/success/error")
|
||||
message: Optional[str] = Field(None, description="状态消息")
|
||||
user_id: Optional[int] = Field(None, description="用户 ID (扫码成功时返回)")
|
||||
authorization: Optional[str] = Field(None, description="Token (扫码成功时返回)")
|
||||
qrcode_image: Optional[str] = Field(None, description="二维码 Base64 图片(等待扫描时返回)")
|
||||
|
||||
|
||||
class TokenVerifyRequest(BaseModel):
|
||||
"""Token 验证请求 Schema"""
|
||||
authorization: str = Field(..., description="Token")
|
||||
|
||||
|
||||
class TokenVerifyResponse(BaseModel):
|
||||
"""Token 验证响应 Schema"""
|
||||
is_valid: bool = Field(..., description="Token 是否有效")
|
||||
message: str = Field(..., description="验证消息")
|
||||
user_id: Optional[int] = Field(None, description="用户 ID")
|
||||
|
||||
|
||||
class AliasLoginRequest(BaseModel):
|
||||
"""别名+密码登录请求 Schema"""
|
||||
alias: str = Field(..., min_length=2, max_length=50, description="用户别名")
|
||||
password: str = Field(..., min_length=6, description="密码")
|
||||
|
||||
|
||||
class AliasLoginResponse(BaseModel):
|
||||
"""别名+密码登录响应 Schema"""
|
||||
success: bool = Field(..., description="登录是否成功")
|
||||
message: str = Field(..., description="登录消息")
|
||||
user_id: Optional[int] = Field(None, description="用户 ID")
|
||||
authorization: Optional[str] = Field(None, description="Token")
|
||||
alias: Optional[str] = Field(None, description="用户别名")
|
||||
Reference in New Issue
Block a user