fix: profile
This commit is contained in:
		
							
								
								
									
										1
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Makefile
									
									
									
									
									
								
							@@ -39,6 +39,7 @@ revision:
 | 
			
		||||
 | 
			
		||||
venv-api:
 | 
			
		||||
	cd api && \
 | 
			
		||||
	poetry env activate \
 | 
			
		||||
	poetry install
 | 
			
		||||
 | 
			
		||||
install:
 | 
			
		||||
 
 | 
			
		||||
@@ -26,16 +26,15 @@ api_router = APIRouter(
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@api_router.get("/{user_id}")
 | 
			
		||||
@api_router.get("")
 | 
			
		||||
async def get_profile(
 | 
			
		||||
                    user_id: int,
 | 
			
		||||
                    request: Request,
 | 
			
		||||
                    connection: AsyncConnection = Depends(get_connection_dep),
 | 
			
		||||
                    ):
 | 
			
		||||
    # Извлекаем текущего пользователя из request.state
 | 
			
		||||
    current_user = request.state.current_user
 | 
			
		||||
 | 
			
		||||
    user = await get_user_id(connection, user_id)
 | 
			
		||||
    user = await get_user_login(connection, current_user)
 | 
			
		||||
 | 
			
		||||
    if user is None:
 | 
			
		||||
        raise HTTPException(
 | 
			
		||||
@@ -45,9 +44,8 @@ async def get_profile(
 | 
			
		||||
    return user
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@api_router.put("/{user_id}")
 | 
			
		||||
@api_router.put("")
 | 
			
		||||
async def update_profile(
 | 
			
		||||
                        user_id: int,
 | 
			
		||||
                        request: Request,
 | 
			
		||||
                        user_updata: UserUpdate,
 | 
			
		||||
                        connection: AsyncConnection = Depends(get_connection_dep),
 | 
			
		||||
@@ -56,20 +54,24 @@ async def update_profile(
 | 
			
		||||
 | 
			
		||||
    current_user = request.state.current_user
 | 
			
		||||
 | 
			
		||||
    user = await get_user_id(connection, user_id)
 | 
			
		||||
    user = await get_user_login(connection, current_user)
 | 
			
		||||
    if user is None:
 | 
			
		||||
        raise HTTPException(
 | 
			
		||||
            status_code=status.HTTP_404_NOT_FOUND,
 | 
			
		||||
            detail="Account not found")
 | 
			
		||||
 | 
			
		||||
    if user_updata.role == None and user_updata.login == None:
 | 
			
		||||
            update_values = update_user_data_changes(user_updata,user)
 | 
			
		||||
 | 
			
		||||
    update_values = update_user_data_changes(user_updata,user)
 | 
			
		||||
            if update_values is None:
 | 
			
		||||
                return user
 | 
			
		||||
 | 
			
		||||
    if update_values is None:
 | 
			
		||||
        return user
 | 
			
		||||
            await update_user_id(connection, update_values, user)
 | 
			
		||||
 | 
			
		||||
    await update_user_id(connection, update_values, user)
 | 
			
		||||
            user = await get_user_id(connection, user.id)
 | 
			
		||||
 | 
			
		||||
    user = await get_user_id(connection, user_id)
 | 
			
		||||
 | 
			
		||||
    return user
 | 
			
		||||
            return user
 | 
			
		||||
    else:
 | 
			
		||||
            raise HTTPException(
 | 
			
		||||
            status_code=status.HTTP_422_UNPROCESSABLE_ENTITY ,
 | 
			
		||||
            detail="Bad body")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user