Code Monkey home page Code Monkey logo

rent-cars's Introduction

Version README English

📝 O Projeto

Outras bibliotecas utilizadas

  • jest tsyringe uuid typeorm swagger-ui-express multer csv-parse bcryptjs jsonwebtoken
  • Para acessar a documentação com todas as rotas disponíveis e intruções de uso acesse /api-docs, após iniciar a aplicação

Desenvolvimento

RF => Requisitos Funcionais RNF => Requisitos não Funcionais RN => Regras de Negócio

Cadastro de usuário

RF Deve ser possível cadastrar um novo usuário. Deve ser possível cadastrar uma imagem do avatar ao usuário, após o cadastro

RNF O usuário deve ser cadastrado com todos os dados necessários utilizando o typeorm para as devidas validações. O cadastro do avatar deve ser realizado utilizando o multer para o upload dos arquivos. A criptografia da senha deve ser realizada utilizando bcryptjs. Cada usuário deve possuir um id único gerado pelo uuid.

RN Não deve ser possível cadastrar um usuário com mesmo e-mail ou username. Ao usuário substituir a imagem do avatar, deve ser excluído a informação sobre a imagem anterior do banco de dados.

Cadastro de carro

RF Deve ser possível cadastrar um novo carro. Deve ser possível cadastrar novos carros através de um arquivo .csv.

RNF Utilizar o multer para o upload dos arquivos. Os arquivos devem estar no formato de acordo com o testUpload.csv disponibilizado na raiz do projeto

RN Não deve ser possível cadastrar um novo carro com placa já existente. O carro deve ser cadastrado com disponibilidade, por padrão. Apenas um usuário administrador tem permissão para realizar cadastro.

Listagem de carros

RF Deve ser possível listar todos os carros disponíveis. Deve ser possível listar todos os carros disponíveis pelo nome da categoria. Deve ser possível listar todos os carros disponíveis pelo nome da marca. Deve ser possível listar todos os carros disponíveis pelo nome do carro.

RNF O carro deve ser cadastrado com todos os dados necessários utilizando o typeorm para as devidas validações. Cada carro deve possuir um id único gerado pelo uuid.

RN O usuário não precisa estar logado no sistema para realizar a listagem.

Cadastro de Especificações no Carro

RF Deve ser possível cadastrar uma especificação para um carro.

RN Não deve ser possível cadastrar uma especificação para um carro não existente. Não deve ser possível cadastrar uma especificação já existente para um carro. Apenas um usuário administrador tem permissão para realizar cadastro.

Cadastro de Imagens do Carro

RF Deve ser possível cadastrar a imagem do carro.

RNF Utilizar o multer para o upload dos arquivos.

RN O usuário deve poder cadastrar mais de uma imagem para o mesmo carro. Apenas um usuário administrador tem permissão para realizar cadastro.

Aluguel

RF Deve ser possível cadastrar um aluguel.

RN O aluguel deve ter duração mínima de 24 horas. Não deve ser possível cadastrar um aluguel caso já exista um aberto para o mesmo usuário. Não deve ser possível cadastrar um aluguel caso já exista um aberto para o mesmo carro. O usuário deve estar logado na aplicação.

Available Scripts you can run

yarn install yarn start yarn build yarn test

rent-cars's People

Contributors

gusrot avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.