Sistema de Mensagem App é uma aplicação Rails para gerenciar usuários com funcionalidades de autenticação, suspensão e envio de emails de boas-vindas.
- Ruby 3.2.0
- Rails 7.0.8.4
- PostgreSQL
- Redis
- Clone o repositório:
git clone https://github.com/usuario/sistema-mensagem-app.git
cd sistema-mensagem-app
## Setup
```bash
# Instalar gems
$ bundle install
# Cria o banco de dados
$ rails db:create
# Rodar as migrações no banco de dados
$ rails db:migrate
# Subir o servidor local em localhost:3000
$ rails s
Para executar todos os casos de teste, utilize o seguinte comando
$ bundle exec rspec
Instruções de Requisições
Criar um Novo Usuário
Endpoint: POST /auth URL: http://localhost:3000/auth
Request Body:
{
"email": "novo.usuario@example.com",
"password": "123456",
"password_confirmation": "123456",
"name": "Novo Usuário"
}
Tornar Usuário Inativo (Suspender)
Método: GET
URL: http://localhost:3000/api/v1/admin/users/6/suspend
Headers:
access-token: seu_access_token
client: seu_client
uid: seu_uid
Listar Usuários
Endpoint: GET /api/v1/users
Busca e Ordenação de Usuários
Endpoint: POST /api/v1/users/search
{
"keyword": "search_term",
"sort": ["name"],
"direction": "asc"
}
Atualizar Usuário
Endpoint: PUT /api/v1/users/:id
Deletar Usuário
Endpoint: DELETE /api/v1/admin/users/:id
# Cache
O sistema utiliza Redis para cache. Configuração básica pode ser encontrada no arquivo de configuração
do ambiente (config/environments/development.rb).