|
3 | 3 | from fastapi import APIRouter, Depends, Request
|
4 | 4 | from fastapi.security import OAuth2PasswordRequestForm
|
5 | 5 |
|
6 |
| -from backend.app.admin.schemas.token import Token |
7 |
| -from backend.app.admin.schemas.user import Auth, Auth2 |
8 |
| -from backend.app.admin.services.user_service import UserService |
9 |
| -from backend.common.jwt import DependsJwtUser |
10 |
| -from backend.common.response.response_schema import response_base |
| 6 | +from backend.app.admin.schema.token import GetLoginToken, GetSwaggerToken |
| 7 | +from backend.app.admin.schema.user import Auth2 |
| 8 | +from backend.app.admin.service.auth_service import auth_service |
| 9 | +from backend.common.response.response_schema import ResponseModel, ResponseSchemaModel, response_base |
| 10 | +from backend.common.security.jwt import DependsJwtAuth |
11 | 11 |
|
12 | 12 | router = APIRouter()
|
13 | 13 |
|
14 | 14 |
|
15 |
| -@router.post('/swagger_login', summary='swagger 表单登录', description='form 格式登录,仅用于 swagger 文档调试接口') |
16 |
| -async def login1(form_data: OAuth2PasswordRequestForm = Depends()) -> Token: |
17 |
| - token, user = await UserService.login_swagger(form_data) |
18 |
| - return Token(access_token=token, user=user) |
| 15 | +@router.post('/login/swagger', summary='swagger 调试专用', description='用于快捷进行 swagger 认证') |
| 16 | +async def swagger_login(form_data: OAuth2PasswordRequestForm = Depends()) -> GetSwaggerToken: |
| 17 | + token, user = await auth_service.swagger_login(form_data=form_data) |
| 18 | + return GetSwaggerToken(access_token=token, user=user) # type: ignore |
19 | 19 |
|
20 | 20 |
|
21 |
| -@router.post('/login', summary='json登录') |
22 |
| -async def login2(obj: Auth) -> Token: |
23 |
| - token, user = await UserService.login_json(obj) |
24 |
| - return Token(access_token=token, user=user) |
| 21 | +@router.post('/login', summary='验证码登录') |
| 22 | +async def user_login(request: Request, obj: Auth2) -> ResponseSchemaModel[GetLoginToken]: |
| 23 | + data = await auth_service.login(request=request, obj=obj) |
| 24 | + return response_base.success(data=data) |
25 | 25 |
|
26 | 26 |
|
27 |
| -@router.post('/captcha_login', summary='验证码登录') |
28 |
| -async def login3(request: Request, obj: Auth2) -> Token: |
29 |
| - token, user = await UserService.login_captcha(obj=obj, request=request) |
30 |
| - return Token(access_token=token, user=user) |
31 |
| - |
32 |
| - |
33 |
| -@router.post('/logout', summary='登出', dependencies=[DependsJwtUser]) |
34 |
| -async def user_logout(): |
35 |
| - return await response_base.response_200() |
| 27 | +@router.post('/logout', summary='用户登出', dependencies=[DependsJwtAuth]) |
| 28 | +async def user_logout() -> ResponseModel: |
| 29 | + return response_base.success() |
0 commit comments