Files
fastapi/app/core/context.py
T

26 lines
779 B
Python
Raw Normal View History

from dataclasses import dataclass
@dataclass(frozen=True)
class UserContext:
2026-06-03 15:51:46 +08:00
"""用户上下文:承载 Django 用户中心认证后的用户 ID 和入口元数据。"""
user_id: str
tenant_id: str | None = None
role: str | None = None
class_id: str | None = None
2026-06-03 15:51:46 +08:00
institution_id: int | None = None
department_id: int | None = None
entry_scene: str | None = None
request_id: str | None = None
ip_address: str | None = None
user_agent: str | None = None
username: str | None = None
display_name: str | None = None
2026-06-03 15:51:46 +08:00
phone: str | None = None
major: str | None = None
training_stage: str | None = None
learning_target: str | None = None
2026-06-01 17:32:18 +08:00
auth_source: str = "django_user_center"
profile: dict | None = None