Skip to content

thiago-firmino-vindi/auction-app

Repository files navigation

Leilão de Estoque

Tópicos

🔹 Descrição do projeto

🔹 Funcionalidades

🔹 Pré-requisitos

🔹 Como rodar a aplicação

Descrição do projeto

O projeto é uma aplicação web com Ruby on Rails que serve para conectar o público com itens que são abandonados, permitindo que esses itens sejam comercializados novamente. O formato escolhido foi o de leilão de itens. Este projeto faz parte da primeira etapa de treinamento do TreinaDev.

Ao executar o comando de seed, serão criados os seguintes registros no banco de dados:

  • 2 usuários administradores.
  • 2 usuários comuns.
  • 15 produtos.
  • 2 lotes de leilão ativos que ainda não iniciaram.
  • 2 lotes ativos que já iniciaram.
  • 2 lotes ativos que estão prestes a ser encerrados e tiveram lance.
  • 2 lotes que podem ser cancelados por não terem nenhum lance.
  • 2 lotes aguardando aprovação.
  • 3 produtos que não foram associados a nenhum lote.

Esses registros fornecem uma base inicial para o funcionamento do sistema, permitindo testar diferentes funcionalidades, como a criação de leilões, lances, cancelamento de lotes e associação de produtos.

É importante observar que essas informações são fictícias e foram criadas exclusivamente para fins de desenvolvimento e teste do projeto.

Funcionalidades

✔️ Cadastro de produtos disponíveis para venda

✔️ Configuração de lotes, datas e lances mínimos para leilões

✔️ Acompanhamento de lances recebidos nos lotes

✔️ Criação de conta para usuários regulares/visitantes

✔️ Busca por produtos em lotes existentes

✔️ Detalhes de produtos

✔️ Fazer uma oferta (se ainda possível)

✔️ Marcar Lote como favorito

✔️ Bloquear um CPF

Layout 💨

Layout

Pré-requisitos

⚠️ Ruby: versão 3.1.1

⚠️ Ruby on Rails: versão 7.0.4.3

⚠️ Node

⚠️ Bundler

⚠️ SQLite

Como rodar a aplicação ▶️

No terminal, clone o projeto:

git clone https://github.com/ThiagoDFi/auction-app.git

Entre na pasta do projeto:

cd auction-app

Execute o comando bundle, para instalar todas as dependências do projeto.

bundle install

Execute o comando migrate, para realizar as migrações do banco de dados.

rails db:migrate

Execute o comando seed, para popular a aplicação com dados de exemplo.

rails db:seed

Por fim, execute o comando server, para iniciar o servidor de desenvolvimento.

rails server

Acesse a aplicação em seu navegador através do endereço http://localhost:3000.

Como rodar os testes

Para executar os testes automatizados da aplicação entre no diretorio da aplicação e execute os comandos abaixo:

Testes de Sistema:

$ rails spec:system

Testes de Request:

$ rails spec:requests

Testes de Models:

$ rails spec:models

Testes de Helpers:

$ rails spec:helpers

Para rodar todos os testes juntos:

$ rspec

Casos de Uso

A aplicação contém dois tipos de usuários, o administrador e o cliente. Cada perfil possui visualizações e ações diferentes. O administrador é responsável por gerenciar o site, sendo assim, apenas usuários administradores são capazes de cadastrar produtos, lotes, adicionar item, aprovar e finalizar um lote. Por ser um perfil de gerenciamento ele não pode realizar lances em lotes disponíveis, todo usuário que se cadastrar na plataforma com o domínio @leilaodogalpao.com.br são automaticamente adicionados ao perfil de administrador.

O cliente por sua vez possui suas ações limitadas a realizar lances em lotes disponiveis, realizar buscas por produtos ou IDs de lotes e consulta se ganhou um lote que tenha participado.

Tarefas em aberto

📝 Dúvidas sobre um lote

Autor

Este projeto foi desenvolvido por Thiago Firmino.

GitHub: ThiagoDFI

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages