Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/danilomeneghel/fluxo-caixa
Desafio Fluxo de Caixa
https://github.com/danilomeneghel/fluxo-caixa
docker docker-compose h2-database java-17 junit5 lombok maven mockito model-mapper mysql-database spring-boot spring-data-jpa spring-rest-api swagger-ui
Last synced: about 22 hours ago
JSON representation
Desafio Fluxo de Caixa
- Host: GitHub
- URL: https://github.com/danilomeneghel/fluxo-caixa
- Owner: danilomeneghel
- License: mit
- Created: 2023-05-23T15:03:11.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-05-25T17:44:18.000Z (over 1 year ago)
- Last Synced: 2024-12-14T14:34:38.424Z (about 2 months ago)
- Topics: docker, docker-compose, h2-database, java-17, junit5, lombok, maven, mockito, model-mapper, mysql-database, spring-boot, spring-data-jpa, spring-rest-api, swagger-ui
- Language: Java
- Homepage:
- Size: 166 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Desafio Fluxo de Caixa
Desenvolvimento de uma simples API REST para controle de Fluxo de Caixa.
## Recursos
- Cadastro, alteração e exclusão de Produto
- Listagem de Produtos
- Cadastro, alteração e exclusão de Lançamento
- Listagem de Lançamentos
- Visualização de Saldo## Características
- CRUD
- API REST
- Validation
- Exception
- Enum## Requisitos
- Java JDK 17
- Apache Maven >= 3.8.6
- MySql 8
- Docker (Opcional)## Tecnologias
- Java
- JPA
- Maven
- Spring
- Lombok
- Model Mapper
- H2
- Swagger
- JUnit
- Mockito
- Docker## Instalação
### Docker
Para rodar o projeto via Docker-Compose, basta executar o comando:
```
$ docker-compose up
```Aguarde baixar as dependências e carregar todo o projeto, esse processo é demorado.
Caso conclua e não rode pela primeira vez, tente novamente executando o mesmo comando.Aguarde carregar todo o serviço web.
Após concluído, digite o endereço abaixo em seu navegador.http://localhost:8000
Para encerrar tudo digite:
```
$ docker-compose down
```OBS: É necessário ter o Docker e docker-compose instalado.
Caso não tenha instalado o Docker ou dê alguma falha na instalação, tente com os comandos abaixo.### MySql
Crie um banco de dados com o nome "fluxocaixa" no seu Mysql.
Abra o arquivo .env e efetue a configuração correta para conexão do seu banco de dados.```
$ mysql -u -pmysql> create database `fluxocaixa`;
```### Maven
Para rodar o projeto com Maven, é necessário ter a versão 3.8.6 instalada.
Além disso, é preciso ter o Java 17 e o MySql 8 instalado.Tendo tudo instalado e rodando localmente, basta executar o seguinte comando:
```
$ git clone https://github.com/danilomeneghel/fluxo-caixa.git
$ cd fluxo-caixa
$ mvn clean spring-boot:run -Dspring-boot.run.profiles=dev
```## Swagger
Documentação da API REST:
http://localhost:8000/swagger-ui.html
## Testes
Para realizar os testes unitários, execute o seguinte comando no terminal:
```
$ cd fluxo-caixa
$ mvn test
```## Diagrama ER
![Screenshots](diagrama_er.png)
## Licença
Projeto licenciado sob The MIT License (MIT).
Desenvolvido por
Danilo Meneghel
[email protected]
http://danilomeneghel.github.io/