22from fastapi import Depends , status
33from fastapi .responses import JSONResponse
44
5- from app .core .auth import AdminAuthDeps , GitHubOAuthDeps , PasswordOAuthDeps
5+ from app .core .auth import (
6+ AdminAuthDeps ,
7+ GitHubOAuthDeps ,
8+ GoogleOAuthDeps ,
9+ PasswordOAuthDeps ,
10+ )
611from app .core .container import Container
712from app .core .router import CoreAPIRouter
8- from app .schemas .users import UserPatchRequest , UserRequest , UserResponse
13+ from app .schemas .users import UserOut , UserPasswordAdminRequest , UserRequest
14+ from app .services .auth import AuthService
915from app .services .users import UserService
1016
1117router = CoreAPIRouter (
1218 prefix = "/user" ,
1319 tags = ["admin" ],
14- dependencies = [AdminAuthDeps , PasswordOAuthDeps , GitHubOAuthDeps ],
20+ dependencies = [AdminAuthDeps , PasswordOAuthDeps , GoogleOAuthDeps , GitHubOAuthDeps ],
1521)
1622
1723
1824@router .get (
1925 "/" ,
20- response_model = list [UserResponse ],
26+ response_model = list [UserOut ],
2127 response_class = JSONResponse ,
2228 status_code = status .HTTP_200_OK ,
2329 summary = "" ,
@@ -32,7 +38,7 @@ async def get_users(
3238
3339@router .get (
3440 "/{id}" ,
35- response_model = UserResponse ,
41+ response_model = UserOut ,
3642 response_class = JSONResponse ,
3743 status_code = status .HTTP_200_OK ,
3844 summary = "" ,
@@ -43,12 +49,12 @@ async def get_user(
4349 id : int ,
4450 service : UserService = Depends (Provide [Container .user_service ]),
4551):
46- return await service .get_by_id (id )
52+ return await service .get_by_id (id = id )
4753
4854
4955@router .put (
5056 "/{id}" ,
51- response_model = UserResponse ,
57+ response_model = UserOut ,
5258 response_class = JSONResponse ,
5359 status_code = status .HTTP_200_OK ,
5460 summary = "" ,
@@ -57,15 +63,15 @@ async def get_user(
5763@inject
5864async def put_user (
5965 id : int ,
60- user : UserRequest ,
66+ schema : UserRequest ,
6167 service : UserService = Depends (Provide [Container .user_service ]),
6268):
63- return await service .put_by_id (id = id , schema = user )
69+ return await service .put_by_id (id = id , schema = schema )
6470
6571
6672@router .patch (
6773 "/{id}" ,
68- response_model = UserResponse ,
74+ response_model = UserOut ,
6975 response_class = JSONResponse ,
7076 status_code = status .HTTP_200_OK ,
7177 summary = "" ,
@@ -74,15 +80,15 @@ async def put_user(
7480@inject
7581async def patch_user (
7682 id : int ,
77- user : UserPatchRequest ,
78- service : UserService = Depends (Provide [Container .user_service ]),
83+ schema : UserPasswordAdminRequest ,
84+ service : AuthService = Depends (Provide [Container .auth_service ]),
7985):
80- return await service .patch_by_id ( id = id , schema = user )
86+ return await service .patch_password_by_id ( user_id = id , schema = schema )
8187
8288
8389@router .delete (
8490 "/{id}" ,
85- response_model = UserResponse ,
91+ response_model = UserOut ,
8692 response_class = JSONResponse ,
8793 status_code = status .HTTP_200_OK ,
8894 summary = "" ,
@@ -93,4 +99,4 @@ async def delete_user(
9399 id : int ,
94100 service : UserService = Depends (Provide [Container .user_service ]),
95101):
96- return await service .delete_by_id (id )
102+ return await service .delete_by_id (id = id )
0 commit comments