saas_api/packages/v1/administrativo/endpoints/g_usuario.py

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