Giter VIP home page Giter VIP logo

desafio-dev's Introduction

Desafio de Programação p/ Vaga Desenvolvedor

Este é um projeto com base em processo seletivo, veja o desafio proposto clicando aqui

Sobre

O desafio deste projeto é, utilizar uma interface Web que possa, através de uma comunicação com uma API, possa receber o upload de um arquivo TXT possuindo diversas transações que devem ser devidamente tratadas e armazenadas pelo sistema.

Esta mesma interface WEB deve consultar e mostrar todos as transações registradas. Separados por loja e totalizando seus devidos saldos em conta.

Executando o Projeto

Abra este clone do projeto no terminal ou CMD, e execute o seguinte comando: docker-compose -f "docker-compose.yml" up -d --build.

Tenha em mente que é necessário ter instalado em sua máquina o ``Docker com DockerCompose habilitado.

Links:

  • API (localhost:8080)
  • MySQL Server (localhost:9903)
  • FrontEnd (localhost:81)

Antes de abrir no navegador, verifique bem se não há conflitos de porta ou se o projeto ainda esta instalando sobre os logs do Docker.

Para alterar as portas globais edite em docker-compose.yml.

Visualizando a documentação da API

Rode o projeto, para abrir a documentação pelo Swagger abra o link localhost:8080/swagger-ui.html. Também é possível consultar a api em Json pelo end-point localhost:8080/v2/api-docs.

Etapas do Projeto

  1. Modelagem e Integração com Banco de dados -> concluido

  2. Operações de Cadastro -> concluido

  3. Operações de Listagem -> concluido

  4. Testes de Unidade -> concluido

  5. Interface Web -> concluido

  6. Documentação da API -> concluido

  7. Configuração para Docker Compose -> concluido

  8. Autenticação e Autorização -> não concluido por falta de tempo.

Testes no Postman

Os arquivos de teste no Postman são Documentacao Swagger.postman_collection.json e Transacoes.postman_collection.json. Importe para seu Postman para visualizar os testes de execução da API.

Meu Setup

  • Windows 11
  • IDE's SpringToolSuite4 / VSCode / Intellij
  • MySQL 8.0.63
  • Maven 3.5.8
  • Java 17 (Oracle JVM)
  • NodeJs 16
  • Docker 4.3.2

desafio-dev's People

Contributors

marcoshssilva avatar vanildo-bycoders 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.