From 294d8a0f7801f13b57a8f80eb929a042996ac9ea Mon Sep 17 00:00:00 2001 From: jxxghp Date: Sat, 17 Oct 2026 07:35:44 +0800 Subject: [PATCH] fix(types): type user config responses --- app/api/endpoints/user.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/api/endpoints/user.py b/app/api/endpoints/user.py index b7434e58d..2ce346f2d 100644 --- a/app/api/endpoints/user.py +++ b/app/api/endpoints/user.py @@ -28,6 +28,7 @@ from app.application.security.userconfig import ( get_configured_user_configuration, ) from app.schemas.common import FileNameData as _SchemaFileNameData +from app.schemas.common import JsonData from app.schemas.common import ValueData as _SchemaValueData from app.schemas.response import Response as _SchemaResponse from app.schemas.user import CurrentUserUpdate as _SchemaCurrentUserUpdate @@ -175,7 +176,7 @@ async def upload_avatar( service: UserService = Depends(get_user_service), file: UploadFile = File(...), current_user: Any = Depends(get_current_active_user_async), -) -> _SchemaResponse: +) -> _SchemaResponse[_SchemaFileNameData]: """ 上传用户头像 """ @@ -183,7 +184,7 @@ async def upload_avatar( raise HTTPException(status_code=403, detail="用户权限不足") # 将文件转换为Base64 - file_base64 = base64.b64encode(file.file.read()) + file_base64 = base64.b64encode(file.file.read()).decode("ascii") # 更新到用户表 user = await service.get_by_id(user_id) if not user: @@ -200,7 +201,7 @@ async def upload_avatar( async def get_config( key: str, current_user: Any = Depends(get_current_active_user_async), -): +) -> _SchemaResponse[_SchemaValueData]: """ 查询用户配置 """ @@ -211,9 +212,9 @@ async def get_config( @router.post("/config/{key}", summary="更新用户配置", response_model=_SchemaResponse[None]) async def set_config( key: str, - value: Annotated[Union[list, dict, bool, int, str] | None, Body()] = None, + value: Annotated[JsonData, Body()] = None, current_user: Any = Depends(get_current_active_user_async), -): +) -> _SchemaResponse[None]: """ 更新用户配置;助手形象私有数据(AgentPetState.*)超出大小上限时拒绝写入 """