31 lines
792 B
Python
31 lines
792 B
Python
from pydantic import BaseModel, Field
|
|
from router.common_model import BaseResponse
|
|
from router.invite.model import AuthMeData
|
|
from typing import Optional
|
|
|
|
|
|
class LoginRequest(BaseModel):
|
|
userid: str = Field(..., description="学号")
|
|
password: str = Field(..., description="密码")
|
|
easyconnect_password: str = Field(..., description="VPN密码")
|
|
|
|
|
|
# 统一响应模型
|
|
class LoginResponse(BaseResponse[AuthMeData]):
|
|
"""登录响应"""
|
|
|
|
pass
|
|
|
|
|
|
# Authme相关模型
|
|
class AuthmeStatusData(BaseModel):
|
|
"""认证状态数据"""
|
|
|
|
is_logged_in: bool = Field(..., description="是否处于登录状态")
|
|
userid: Optional[str] = Field(None, description="用户ID")
|
|
|
|
|
|
class AuthmeResponse(BaseResponse[AuthmeStatusData]):
|
|
"""AuthMe验证响应"""
|
|
|
|
pass |