Skip to content

Este repositório contém o código-fonte e os recursos relacionados ao Wallet-Service, um microserviço dedicado a gerenciar carteiras digitais de usuários. O Wallet-Service oferece funcionalidades de criação de carteiras, registro de transações e consulta de saldo.

Notifications You must be signed in to change notification settings

Geovane33/wallet-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wallet-service 🎩💰

Este repositório contém o código-fonte e os recursos relacionados ao Wallet-Service, um microserviço dedicado a gerenciar carteiras digitais de usuários.

Principal recurso 🚀

✨ Gerenciamento de carteiras: O Wallet-Service permite aos usuários criar, atualizar e excluir carteiras digitais. Ele também oferece recursos de consulta para recuperar informações específicas de uma carteira, como saldo atual e histórico de transações.

Setup da aplicação (local)

Pré-requisitos

Antes de executar a aplicação, certifique-se de ter as seguintes dependências instaladas corretamente em seu ambiente de desenvolvimento:

- Java 17
- Maven 3.9.2
- MySQL 8.0.27
- RabbitMQ 3.11.5

Observação: Para fins de avaliação ou execução em um ambiente local de teste, o projeto já está configurado com o banco de dados H2 e RabbitMQ. No entanto, se você deseja usar seu próprio servidor MySQL e/ou RabbitMQ, siga as seguintes instruções:

MySQL

No arquivo de configuração application.yml, adicione as seguintes configurações para o MySQL:

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: sua_url
    username: seu_usuario
    password: sua_senha

Certifique-se de substituir sua_url, seu_usuario e sua_senha pelas informações corretas do seu servidor MySQL.

RabbitMQ

No arquivo de configuração application.yml, adicione as seguintes configurações para o RabbitMQ:

spring:
  rabbitmq:
    host: seu_host
    port: sua_porta
    username: seu_usuario
    password: sua_senha

Certifique-se de substituir seu_host, sua_porta, seu_usuario e sua_senha pelas informações corretas do seu servidor RabbitMQ.

Instalação e execução da aplicação

  1. Clone o repositório:
git clone [email protected]:Geovane33/wallet-service.git
  1. Acesse o diretório do projeto:
cd wallet-service
  1. Compile o código e baixe as dependências do projeto:
mvn clean package
  1. Inicie a aplicação:
mvn spring-boot:run
  1. O serviço payment-transfer-service fornece endpoints relacionados a transferencia e pagamentos, siga o passo a passo cliquando aqui caso deseja utilizar os endpoints.
  • Após executar esses passos, a aplicação estará disponível em http://localhost:8080.
  • O projeto está utilizando FlywayDB e nesse caso, para facilitar os testes locais, o banco de dados já terá 4 Wallets.
  • Acesse a documentação da API em http://localhost:8080/swagger-ui/index.html para obter mais detalhes sobre os endpoints disponíveis.

Setup da aplicação usando Docker

Pré-requisitos

Antes de executar a aplicação, considerando que o projeto ja vem com H2 e RabbitMQ configurados, certifique-se de ter as seguintes dependências instaladas corretamente em seu ambiente de desenvolvimento:

- Java 17
- Docker 24.0.2
- Maven 3.9.2
  1. Clone o repositório:
git clone [email protected]:Geovane33/wallet-service.git
  1. Acesse o diretório do projeto:
cd wallet-service
  1. Compile o código e baixe as dependências do projeto:
mvn clean package
  1. Construa a imagem Docker:
docker build -t wallet-service .
  1. O serviço forcene informaçoes via feignClient para payment-transfer-service então caso não tenha criado, crie uma rede para conectar os containers:
docker network create local
  1. Execute o contêiner Docker conectado à rede local:
docker run -d -p 8080:8080 --network local --name wallet-service wallet-service

Observações:

  • A opção -p 8080:8080 mapeia a porta 8080 do contêiner para a porta 8080 do host. Você pode alterar a porta do host, se desejar.
  • O parâmetro --network local conecta o contêiner à rede local que foi criada.
  • O parâmetro --name wallet-service define o nome do contêiner como "payment-transfer-service". Você pode escolher um nome diferente, se desejar.

wallet comunicações

Este repositório não armezena somente códigos desse projeto, ele armazena determinação, noites em claro, muito aprendizado e expectativas que, por vezes, foram frustradas!! Mas eu sei que cada linha representa uma jornada repleta de desafios e superações. Este repositório é mais do que uma simples coleção de arquivos, é uma história de crescimento, evolução e o reflexo do poder de nunca desistir diante das adversidades.

About

Este repositório contém o código-fonte e os recursos relacionados ao Wallet-Service, um microserviço dedicado a gerenciar carteiras digitais de usuários. O Wallet-Service oferece funcionalidades de criação de carteiras, registro de transações e consulta de saldo.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published