-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #6 from Rodrigodsgit/develop
Review Documentacao
- Loading branch information
Showing
11 changed files
with
220 additions
and
33 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
# Requisitos & Funcionalidades | ||
|
||
## Requisitos | ||
Como dito, foi proposto construir um MVP (Minimo Produto Viavel) de uma aplicação de Vending Machine que possa ser disponibilizada para o time de DApps a implementação deste Smart Contract. Para isso, além desta documentação feita com instruções de instalação e operações, metodologias utilizadas, teste e deploy, também iremos detalhar as funcionalidades implementadas baseadas nos requisitos esperados, sendo eles: | ||
|
||
1. Criou o próprio Contrato Inteligente de Token. | ||
2. Criou o próprio Contrato Ingeligente de Maquina de Venda do Token. | ||
3. O Comprador deve ser possivel comprar tokens com ethers. | ||
4. O Vendedor deve ser possivel vender tokens por ethers. | ||
5. O administrador deve ser capaz de reabastecer a maquina com tokens e ethers. | ||
6. O adminsitrador deve ser capaz de sacar o saldo em ethers | ||
7. O administrador deve ser capaz de redefinir o valor dos tokens para compra. | ||
8. O administrador deve ser capaz de redefinir o valor dos tokens para venda. | ||
9. Não deve ser possivel comprar tokens com valor zero. | ||
10. Não deve ser possivel vender tokens com valor zero. | ||
11. Não deve ser possivel reabastecer a maquina com tokens com valor zero. | ||
12. Não deve ser possivel reabastecer a maquina com ethers com valor zero. | ||
|
||
|
||
# Funcionalidades | ||
|
||
Abaixo falaremos, de forma resumida, sobre as principais funções desenvolvidas e seu comportamento. | ||
|
||
- Função responsável por retornar quantas E-Miles há disponivel na Vending . | ||
```JavaScript | ||
function getMiles(){ | ||
} | ||
``` | ||
|
||
- Função responsável por retornar quanto de Ether há disponivel na Vending Machine. | ||
```JavaScript | ||
function getBalance(){ | ||
} | ||
``` | ||
|
||
- Função responsável por retornar quanto de Ether há disponivel na carteira do cliente. | ||
```JavaScript | ||
function getEtherBalanceClient(){ | ||
} | ||
``` | ||
|
||
- Função responsável por retornar quanto de E-Miles há disponivel na conta do cliente. | ||
```JavaScript | ||
function getBalanceMilesClient(){ | ||
} | ||
``` | ||
|
||
- Função responsável por retornar qual o valor de compra das E-Miles. | ||
```JavaScript | ||
function getPricePurchase(){ | ||
} | ||
``` | ||
|
||
- Função responsável por retornar qual o valor de compra das E-Miles. | ||
```JavaScript | ||
function getPricePurchase(){ | ||
} | ||
``` | ||
|
||
- Função responsável por reabastecer a quantidade de E-Miles da Vending Machine. Somente o Owner pode utiliza-lá e não são permitido valores 0. | ||
|
||
```JavaScript | ||
function restokMiles(){ | ||
} | ||
``` | ||
|
||
- Função responsável por reabastecer a quantidade de Ether da Vending Machine. Somente o Owner pode utiliza-lá e não são permitido valores 0. | ||
|
||
```JavaScript | ||
function restokEther(){ | ||
} | ||
``` | ||
|
||
- Função responsável por converter as possivéis frações da criptomoeda Etherum, sendo permitido valores como Wei, Gwei e o próprio Ether. Moedas diferentes desses valores não são aceitas. | ||
|
||
```JavaScript | ||
function convert(){ | ||
} | ||
``` | ||
- Função responsável por sacar o saldo remanescente na Vending Machine. Somente o Owner pode utiliza-lá e não são permitido valores 0. | ||
|
||
```JavaScript | ||
function withdraw(){ | ||
} | ||
``` | ||
- Função responsável por definir o preço de compra das E-Miles na Vending Machine. Somente o Owner pode utiliza-lá e não são permitido valores 0. | ||
|
||
```JavaScript | ||
function priceMilesPurchase(){ | ||
} | ||
``` | ||
|
||
- Função responsável por definir o preço de venda das E-Miles na Vending Machine. Somente o Owner pode utiliza-lá e não são permitido valores 0. | ||
|
||
```JavaScript | ||
function priceMilesSell(){ | ||
} | ||
``` | ||
|
||
- Função responsável por permitir a compra de E-Miles na Vending Machine. Não são permitido valores zeradas, há validação se a quantidade desejada de E-Miles tem no sistema e se o cliente tem saldo suficiente para compra. | ||
|
||
```JavaScript | ||
function purchaseMilesl(){ | ||
} | ||
``` | ||
|
||
- Função responsável por permitir a venda de E-Miles na Vending Machine. Não são permitido valores zeradas, há validação se a quantidade de Ether na Vending Machine para efetuar a venda, e se o cliente tem E-Miles suficiente para venda. | ||
|
||
```JavaScript | ||
function sellMilesl(){ | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,13 @@ | ||
[Voltar](../Readme.md) | ||
|
||
Para o controle do fluxo de desenvolvimento deste código foi utilizado o modelo Kanban feito na ferramenta Trello. Sua estrutura foi feita da seguinte forma: | ||
|
||
## Visao geral do Kambam | ||
![vista Geral](../assets/trello-geral.png) | ||
|
||
|
||
## Andamanto do Projeto | ||
![andamento](../assets/trello-andamento.png) | ||
![andamento](../assets/trello-andamento.png) | ||
|
||
## Final do MVP | ||
![final](../assets/trello-final.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,44 +1,68 @@ | ||
# ![E-miles](./assets/logo.png) | ||
# 🛫E-Miles | ||
A associação Brasileira das Empresas do Mercado de Fidelização (ABEMF)registrou um faturamento bruto de R$ 1,89 bilhões de suas associadas, empresas que administram milhas áreas e pontos, 11,7% a mais do que no 4° trimestre de 2020. Os indicadores mostram o quanto esse mercado é lucrativo. | ||
|
||
O mercado de compra e venda de milhas ou pontos de programas de fidelidade ligados a companhias aéreas decolou no Brasil e já movimenta mais de R$ 500 milhões por ano, segundo estimativas de empresas do segmento. | ||
Juntamente com o crescimento exponencial do mundo de criptos ativos, a empresa E-Miles solicitou que fosse possível efetuar compra e venda das sua milhas através da moeda Ethereum. | ||
|
||
## Gestao do Projeto | ||
Deste modo foi desenvolvido um Smart Contract no qual é possível comprar milhas através do Ethereum, além do usuário também poder efetuar a venda das sua milhas por Ethereum. Abaixo você poderá acompanhar uma descrição de como foi desenvolvido esse MVP de teste. | ||
|
||
Mostra com fizemos o gerenciamento do projeto , atraves do Trello | ||
`Acompanhe também nossa apresentação:` [E-Miles](https://docs.google.com/presentation/d/1mCrRGZuq9NxM0B_IxnJlctPmZVVW6rgBbGJXSZp7xzY/edit?usp=sharing) | ||
|
||
[Trello](./.readme/gestao.md) | ||
<div id="image01" style="display: inline_block" align="center"> | ||
<img src=".\assets\logo.png" align="center"/> | ||
</div> | ||
|
||
## Tecnologias Aplicadas | ||
----- | ||
|
||
|
||
## 📑Gestão do Projeto | ||
|
||
Acompanhe aqui como utilizamos a metodologia Kanban através da ferramenta Trello para fracionar e estrturar como seriam realizadas as tarefas por integrantes do grupo. | ||
|
||
## [Trello](./.readme/gestao.md) | ||
|
||
---- | ||
|
||
## 📱Tecnologias Aplicadas | ||
|
||
- ![Solidity](https://img.shields.io/badge/Solidity-%23363636.svg?style=for-the-badge&logo=solidity&logoColor=white) ![Ethereum](https://img.shields.io/badge/Ethereum-3C3C3D?style=for-the-badge&logo=Ethereum&logoColor=white) ![JavaScript]( https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black) ![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white) | ||
- ![NodeJS](https://img.shields.io/badge/Node.js-43853D?style=for-the-badge&logo=node.js&logoColor=white) ![NPM](https://img.shields.io/badge/NPM-%23000000.svg?style=for-the-badge&logo=npm&logoColor=white) ![Visual Studio Code](https://img.shields.io/badge/Visual%20Studio%20Code-0078d7.svg?style=for-the-badge&logo=visual-studio-code&logoColor=white) | ||
- ![Trello](https://img.shields.io/badge/Trello-%23026AA7.svg?style=for-the-badge&logo=Trello&logoColor=white) ![Slack](https://img.shields.io/badge/Slack-4A154B?style=for-the-badge&logo=slack&logoColor=white) ![Git](https://img.shields.io/badge/git-%23F05033.svg?style=for-the-badge&logo=git&logoColor=white) | ||
|
||
|
||
--- | ||
## ⚙Configuração ambiente & Instalação local | ||
|
||
## Configuracao ambiente / Instalacao local / Testes da aplicacao | ||
Veja o passo a passo de como configurar localmente essa aplicação para que consiga utiliza-lá no seu computador. Deixamos alguns dos principais comandos e soluções para possíves erros que podem aparecer :). | ||
|
||
[Configuracao](./.readme/config.md) | ||
## [Configuracao](./.readme/config.md) | ||
|
||
--- | ||
|
||
[Testes](./.readme/testes.md) | ||
# 📋Requisitos & Funcionalidades | ||
Elucidação dos requisitos solicidatos e as funcionalidades dispostas na implemnetação do Smart Contract da Vending Machine. | ||
|
||
## Colaboradores | ||
## [Funcionalidades](./.readme/funcionalidades.md) | ||
|
||
![Amanda Karla](https://img.shields.io/badge/Dev-Amanda%20Karla-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Amanda-Almeida-costa) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/amanda-almeida-312942232) | ||
# 🛠Testes da aplicação | ||
Demonstração dos testes feitos via Mocha e alguns possíveis casos de uso do Smart Contract feito manualmente pelo Remix. | ||
|
||
![Naiara Araujo de Lima](https://img.shields.io/badge/Dev-Naiara%20Araujo%20de%20Lima-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Araujopuyanawa) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/naiara-araujo-de-lima-149697239) | ||
## [Testes](./.readme/testes.md) | ||
|
||
![Henrique Constant](https://img.shields.io/badge/Dev-Henrique%20Constant-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/hennrique777) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/henrique-constant-6955a3236) | ||
--- | ||
## 💻Deploy | ||
Deploy da aplicação desenvolvida, sendo feita tanto localmente utilizando do Truffle e o Ganache, quanto seu deploy na rede da Rinkeby. | ||
## [Deploy](./.readme/deploy.md) | ||
|
||
![Rodrigo Damasceno](https://img.shields.io/badge/Dev-Rodrigo%20Damasceno-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Rodrigodsgit) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/rodrigo-damasceno-41036b192) | ||
--- | ||
## 👨💻Colaboradores | ||
|
||
![Lucas Andrade](https://img.shields.io/badge/Dev-Lucas%20Andrade-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Lucas-andrade-nascimento) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/lucas-as-nascimento) | ||
|
||
![Luis Carlos](https://img.shields.io/badge/Dev-Luis%20Carlos%20Silva-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://www.github.com/luisroxis) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/luiscroxis) | ||
![Amanda Karla](https://img.shields.io/badge/Dev-Amanda%20Almeida-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Amanda-Almeida-costa) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/amanda-almeida-312942232) | ||
|
||
![Naiara Araujo de Lima](https://img.shields.io/badge/Dev-Naiara%20Araujo%20de%20Lima-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Araujopuyanawa) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/naiara-araujo-de-lima-149697239) | ||
|
||
## Deploy | ||
![Rodrigo Damasceno](https://img.shields.io/badge/Dev-Rodrigo%20Damasceno-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Rodrigodsgit) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/rodrigo-damasceno-41036b192) | ||
|
||
[Deploy](./.readme/deploy.md) | ||
![Lucas Andrade](https://img.shields.io/badge/Dev-Lucas%20Andrade-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://github.com/Lucas-andrade-nascimento) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/lucas-as-nascimento) | ||
|
||
## Aplicacao (react) opcional | ||
![Luis Carlos](https://img.shields.io/badge/Dev-Luis%20Carlos%20Silva-lightgrey?style=for-the-badge&logo=devdotto) [![Github](https://img.shields.io/badge/GitHub-100000?style=for-the-badge&logo=github&logoColor=white)](https://www.github.com/luisroxis) [![Linkedin](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/luiscroxis) |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters