From 9e833db5f535d5856246d50b910519fabaf6c241 Mon Sep 17 00:00:00 2001 From: Wu Clan Date: Tue, 6 Jun 2023 19:48:03 +0800 Subject: [PATCH] Uniform schema class naming convention style. (#98) --- backend/app/api/v1/auth/auth.py | 10 +++++----- backend/app/schemas/casbin_rule.py | 6 ++---- backend/app/schemas/token.py | 16 ++++++---------- 3 files changed, 13 insertions(+), 19 deletions(-) diff --git a/backend/app/api/v1/auth/auth.py b/backend/app/api/v1/auth/auth.py index e06aec73..679238b4 100644 --- a/backend/app/api/v1/auth/auth.py +++ b/backend/app/api/v1/auth/auth.py @@ -9,7 +9,7 @@ from starlette.background import BackgroundTasks from backend.app.common.jwt import DependsJwtAuth from backend.app.common.response.response_schema import response_base -from backend.app.schemas.token import LoginToken, SwaggerToken, NewToken +from backend.app.schemas.token import GetLoginToken, GetSwaggerToken, GetNewToken from backend.app.schemas.user import Auth from backend.app.services.auth_service import AuthService @@ -17,9 +17,9 @@ router = APIRouter() @router.post('/swagger_login', summary='swagger 表单登录', description='form 格式登录,仅用于 swagger 文档调试接口') -async def swagger_user_login(form_data: OAuth2PasswordRequestForm = Depends()) -> SwaggerToken: +async def swagger_user_login(form_data: OAuth2PasswordRequestForm = Depends()) -> GetSwaggerToken: token, user = await AuthService().swagger_login(form_data) - return SwaggerToken(access_token=token, user=user) + return GetSwaggerToken(access_token=token, user=user) @router.post( @@ -32,7 +32,7 @@ async def user_login(request: Request, obj: Auth, background_tasks: BackgroundTa access_token, refresh_token, access_expire, refresh_expire, user = await AuthService().login( request=request, obj=obj, background_tasks=background_tasks ) - data = LoginToken( + data = GetLoginToken( access_token=access_token, refresh_token=refresh_token, access_token_expire_time=access_expire, @@ -45,7 +45,7 @@ async def user_login(request: Request, obj: Auth, background_tasks: BackgroundTa @router.post('/new_token', summary='创建新 token', dependencies=[DependsJwtAuth]) async def create_new_token(refresh_token: Annotated[str, Query(...)]): access_token, access_expire = await AuthService.new_token(refresh_token) - data = NewToken(access_token=access_token, access_token_expire_time=access_expire) + data = GetNewToken(access_token=access_token, access_token_expire_time=access_expire) return response_base.success(data=data) diff --git a/backend/app/schemas/casbin_rule.py b/backend/app/schemas/casbin_rule.py index 74e9b381..17052eab 100644 --- a/backend/app/schemas/casbin_rule.py +++ b/backend/app/schemas/casbin_rule.py @@ -1,7 +1,5 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -from curses.ascii import isupper - from pydantic import BaseModel, Field, validator from backend.app.common.enums import MethodType @@ -17,7 +15,7 @@ class CreatePolicy(RBACBase): @validator('method') def check_method(cls, v): - if not isupper(v): + if not v.isupper(): raise ValueError('请求方式必须大写') allow_method = MethodType.get_member_values() if v not in allow_method: @@ -33,7 +31,7 @@ class DeletePolicy(CreatePolicy): pass -class UserRole(BaseModel): +class CreateUserRole(BaseModel): uuid: str = Field(..., description='用户uuid') role: str = Field(..., description='角色') diff --git a/backend/app/schemas/token.py b/backend/app/schemas/token.py index 19ea4be7..75db8ea1 100644 --- a/backend/app/schemas/token.py +++ b/backend/app/schemas/token.py @@ -1,36 +1,32 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- from datetime import datetime +from typing import Annotated +from fastapi import Query from pydantic import BaseModel from backend.app.schemas.user import GetUserInfoNoRelation -class SwaggerToken(BaseModel): +class GetSwaggerToken(BaseModel): access_token: str token_type: str = 'Bearer' user: GetUserInfoNoRelation -class AccessToken(BaseModel): +class AccessTokenBase(BaseModel): access_token: str access_token_type: str = 'Bearer' access_token_expire_time: datetime -class LoginToken(AccessToken): +class GetLoginToken(AccessTokenBase): refresh_token: str refresh_token_type: str = 'Bearer' refresh_token_expire_time: datetime user: GetUserInfoNoRelation -class RefreshToken(BaseModel): - refresh_token: str - refresh_token_type: str = 'Bearer' - refresh_token_expire_time: datetime - - -class NewToken(AccessToken): +class GetNewToken(AccessTokenBase): pass