From 3036107dacd6eb83ffd7fa6c25d25b91f2a312ad Mon Sep 17 00:00:00 2001 From: jxxghp Date: Tue, 10 Jun 2025 23:42:57 +0800 Subject: [PATCH] fix user api --- app/api/endpoints/login.py | 3 ++- app/schemas/token.py | 4 +++- app/schemas/user.py | 2 ++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/api/endpoints/login.py b/app/api/endpoints/login.py index abc44eab..7123f20d 100644 --- a/app/api/endpoints/login.py +++ b/app/api/endpoints/login.py @@ -43,7 +43,8 @@ def login_access_token( user_id=user_or_message.id, user_name=user_or_message.name, avatar=user_or_message.avatar, - level=level + level=level, + permissions= user_or_message.permissions or {}, ) diff --git a/app/schemas/token.py b/app/schemas/token.py index c827766e..5b0528d4 100644 --- a/app/schemas/token.py +++ b/app/schemas/token.py @@ -1,6 +1,6 @@ from typing import Optional -from pydantic import BaseModel +from pydantic import BaseModel, Field class Token(BaseModel): @@ -18,6 +18,8 @@ class Token(BaseModel): avatar: Optional[str] = None # 权限级别 level: int = 1 + # 详细权限 + permissions: Optional[dict] = Field(default_factory=dict) class TokenPayload(BaseModel): diff --git a/app/schemas/user.py b/app/schemas/user.py index 6d5dff0b..a42777c6 100644 --- a/app/schemas/user.py +++ b/app/schemas/user.py @@ -32,6 +32,7 @@ class UserCreate(UserBase): email: Optional[str] = None password: Optional[str] = None settings: Optional[dict] = Field(default_factory=dict) + permissions: Optional[dict] = Field(default_factory=dict) # Properties to receive via API on update @@ -41,6 +42,7 @@ class UserUpdate(UserBase): email: Optional[str] = None password: Optional[str] = None settings: Optional[dict] = Field(default_factory=dict) + permissions: Optional[dict] = Field(default_factory=dict) class UserInDBBase(UserBase):