42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
from fastapi import Request
|
|
from actions.dynamic_import.dynamic_import import DynamicImport
|
|
from packages.v1.selos.schemas.see_schema import CartorioAuthenticateSchema
|
|
|
|
|
|
class SeeController:
|
|
|
|
def __init__(self):
|
|
# Action responsável por carregar as services de acodo com o estado
|
|
self.dynamic_import = DynamicImport()
|
|
|
|
# Define o pacote que deve ser carregado
|
|
self.dynamic_import.set_package("selos")
|
|
|
|
# Define a tabela que o pacote pertence
|
|
self.dynamic_import.set_table("see")
|
|
pass
|
|
|
|
# Efetua o acesso junto ao sistema por um determinado usuário
|
|
async def authenticate(
|
|
self,
|
|
request: Request,
|
|
cartorio_authenticate_schema: CartorioAuthenticateSchema,
|
|
):
|
|
|
|
# Importação de service de Authenticate
|
|
authenticate_service = self.dynamic_import.service(
|
|
"sessions_service", "SessionsService"
|
|
)
|
|
|
|
# Instânciamento da service
|
|
self.authenticate_service = authenticate_service()
|
|
|
|
# Retorna o usuário logado
|
|
return {
|
|
"message": "Usuário localizado com sucesso",
|
|
"data": {
|
|
"token": await self.authenticate_service.execute(
|
|
request, cartorio_authenticate_schema
|
|
)
|
|
},
|
|
}
|