refactor: 重整 schemas 作用域并统一用户上下文模型

This commit is contained in:
zl-q
2026-03-13 01:01:54 +08:00
parent f201babb48
commit fb3c649db7
42 changed files with 4205 additions and 2013 deletions
+3 -3
View File
@@ -5,10 +5,10 @@ from uuid import UUID
from fastapi import APIRouter, Depends
from schemas.user.context import UserContext
from v1.users.dependencies import get_user_service
from v1.users.schemas import UserResponse, UserSearchRequest, UserUpdateRequest
from v1.users.service import UserService
from v1.friendships.schemas import UserBasicInfo
router = APIRouter(prefix="/users", tags=["users"])
@@ -37,9 +37,9 @@ async def search_users(
return await service.search_users(payload)
@router.get("/{user_id}", response_model=UserBasicInfo)
@router.get("/{user_id}", response_model=UserContext)
async def get_user(
user_id: UUID,
service: Annotated[UserService, Depends(get_user_service)],
) -> UserBasicInfo:
) -> UserContext:
return await service.get_user_by_id(user_id)
+4 -4
View File
@@ -19,8 +19,8 @@ from v1.users.schemas import UserResponse, UserSearchRequest, UserUpdateRequest
if TYPE_CHECKING:
from sqlalchemy.ext.asyncio import AsyncSession
from schemas.user.context import UserContext
from v1.auth.schemas import UserByEmailResponse
from v1.friendships.schemas import UserBasicInfo
logger = get_logger("v1.users.service")
@@ -100,8 +100,8 @@ class UserService(BaseService):
bio=user.bio,
)
async def get_user_by_id(self, user_id: UUID) -> "UserBasicInfo":
from v1.friendships.schemas import UserBasicInfo
async def get_user_by_id(self, user_id: UUID) -> "UserContext":
from schemas.user.context import UserContext
try:
profile = await self._repository.get_by_user_id(user_id)
@@ -110,7 +110,7 @@ class UserService(BaseService):
if profile is None:
raise HTTPException(status_code=404, detail="User not found")
return UserBasicInfo(
return UserContext(
id=str(profile.id),
username=profile.username,
avatar_url=profile.avatar_url,