dingdanquanliucheng/backend/app/schemas/auth.py
taiyi 24bcf68d8e feat: 融合司机端和管理层端为统一小程序 mini-app
将 mini-driver 和 mini-manager 两个独立小程序合并为 frontend/mini-app,
通过自定义 tabBar 根据登录角色动态切换界面:
- 后端登录接口 role_type 改为可选,支持自动识别角色
- 统一登录页根据 role_code 自动跳转对应首页
- 统一"我的"页通过 wx:if 切换司机/管理层内容
- 自定义 tabBar 组件按角色渲染不同 tab 项
- 提取公共 utils(auth/request/status)消除重复代码
- 原有两个项目保留不动,待验证后清理

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-31 19:04:06 +08:00

55 lines
1.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""
认证模块请求/响应模型
定义登录认证相关的请求体和响应体数据模型,供 auth 路由使用。
"""
from pydantic import BaseModel
class LoginRequest(BaseModel):
"""登录请求体,用于用户登录认证。被 POST /api/auth/login 路由使用。"""
username: str
"""用户名"""
password: str
"""密码"""
role_type: str | None = None
"""角色类型,区分不同登录角色(如 admin / sales为空时由后端自动识别"""
class UserProfile(BaseModel):
"""用户信息响应体,包含用户基本信息、角色权限和菜单数据。用于登录成功后返回用户画像。"""
user_id: int
"""用户 ID"""
username: str
"""用户名"""
real_name: str
"""真实姓名"""
mobile: str
"""手机号"""
role_id: int
"""角色 ID"""
role_name: str
"""角色名称"""
role_code: str
"""角色编码"""
token: str | None = None
"""JWT 令牌,仅登录时返回"""
menus: list[dict] = []
"""该角色关联的菜单列表"""
permissions: list[str] = []
"""该角色的权限编码列表"""