feat(auth): 添加用户权限获取接口并完善JWT令牌角色信息

- 在JWT令牌中添加用户角色信息
- 新增get_my_permissions接口用于获取当前用户权限码列表
- 重构认证回调逻辑,增加错误日志记录
- 更新用户信息获取接口使用Authorization头验证
```
This commit is contained in:
2026-04-06 00:40:08 +08:00
parent dfa8fa62a8
commit f1f8518985
71 changed files with 9402 additions and 191 deletions
+30
View File
@@ -0,0 +1,30 @@
"""用户相关 Schema"""
from pydantic import BaseModel
from typing import Optional
from datetime import datetime
class UserListItem(BaseModel):
id: int
username: str
email: Optional[str] = None
role: str
assigned_area: Optional[str] = None
assigned_school: Optional[str] = None
is_active: bool
last_login: Optional[datetime] = None
created_at: Optional[datetime] = None
class Config:
from_attributes = True
class UserListResponse(BaseModel):
total: int
items: list[UserListItem]
class UserRoleUpdate(BaseModel):
role: str # admin / area_admin / school_admin / user
assigned_area: Optional[str] = None
assigned_school: Optional[str] = None