52 lines
No EOL
1.6 KiB
Python
52 lines
No EOL
1.6 KiB
Python
# Importação de bibliotecas
|
|
from typing import Optional
|
|
|
|
from fastapi import APIRouter, Body, Depends, status
|
|
|
|
from actions.jwt.get_current_user import get_current_user
|
|
|
|
from packages.v1.administrativo.controllers.g_usuario_controller import GUsuarioController
|
|
from packages.v1.administrativo.schemas.g_usuario_schema import (
|
|
GUsuarioSchema,
|
|
GUsuarioLoginSchema
|
|
)
|
|
|
|
# Inicializa o roteador para as rotas de usuário
|
|
router = APIRouter()
|
|
|
|
# Instãnciamento do controller desejado
|
|
g_usuario_controller = GUsuarioController()
|
|
|
|
@router.post('/login',
|
|
status_code=status.HTTP_200_OK,
|
|
summary='Cria o token de acesso do usuário',
|
|
response_description='Retorna o token de acesso do usuário')
|
|
async def index(g_usuario_login_schema : GUsuarioLoginSchema):
|
|
|
|
# Busca todos os usuários cadastrados
|
|
response = g_usuario_controller.login(g_usuario_login_schema)
|
|
|
|
# Retorna os dados localizados
|
|
return response
|
|
|
|
@router.get('/me')
|
|
async def me(current_user: dict = Depends(get_current_user)):
|
|
|
|
# Busca todos os usuários cadastrados
|
|
response = g_usuario_controller.me(current_user)
|
|
|
|
# Retorna os dados localizados
|
|
return response
|
|
|
|
|
|
@router.get('/',
|
|
status_code=status.HTTP_200_OK,
|
|
summary='Lista todos os usuário cadastrados',
|
|
response_description='Lista todos os usuário cadastrados')
|
|
async def index(current_user: dict = Depends(get_current_user)):
|
|
|
|
# Busca todos os usuários cadastrados
|
|
response = g_usuario_controller.index()
|
|
|
|
# Retorna os dados localizados
|
|
return response |