28 lines
No EOL
1 KiB
Python
28 lines
No EOL
1 KiB
Python
from fastapi import HTTPException, status
|
|
|
|
# NOTE: O esquema de entrada para a ação de exibição de um único log
|
|
# precisaria de um esquema (Schema) que carregue o 'log_id'.
|
|
# Vamos assumir a necessidade de um LogIdSchema.
|
|
from packages.v1.administrativo.schemas.log_schema import LogIdSchema
|
|
from packages.v1.administrativo.actions.log.log_show_action import ShowAction
|
|
|
|
class ShowService:
|
|
|
|
# O método execute deve receber o esquema que contém a ID do log a ser buscado
|
|
def execute(self, log_id_schema: LogIdSchema):
|
|
|
|
# Instanciamento de ação com prefixo 'log'
|
|
log_show_action = ShowAction()
|
|
|
|
# Executa a ação em questão (buscando pelo log_id)
|
|
data = log_show_action.execute(log_id_schema)
|
|
|
|
if not data:
|
|
# Retorna uma exceção
|
|
raise HTTPException(
|
|
status_code=status.HTTP_404_NOT_FOUND,
|
|
detail='Não foi possível localizar o registro de log'
|
|
)
|
|
|
|
# Retorno da informação (log_id, client_id, date_post, file)
|
|
return data |