Participei do Desafio Flutter, uma oportunidade de demonstrar minhas habilidades e conhecimentos em Flutter. Durante o desafio, tive a oportunidade de desenvolver uma funcionalidade para o Clube.on App, nosso aplicativo principal. Escolhi implementar a funcionalidade de reserva de churrasqueiras, permitindo que os usuários visualizem as churrasqueiras disponíveis em tempo real e façam suas reservas de forma rápida e eficiente.
A API foi construída em Dart usando o pacote Json_Rest_Server, que transforma um arquivo JSON em uma API que atende às requisições HTTP. Siga os passos abaixo para executar a API:
- Baixe o arquivo: desafio_api.
- Ative o Json Rest Server usando o comando:
dart pub global activate json_rest_server
. - Execute o comando:
json_rest_server run
oujrs run
. - Verifique se a API está sendo executada corretamente. O servidor deve responder em:
http://localhost:8080/
http://192.168.0.123:8080/
- Baixe o arquivo: desafio_front.
- Na raiz do projeto, crie uma pasta chamada
.env
. - Dentro da pasta
.env
, crie um arquivo chamado.env
(sem extensão) e adicione a seguinte configuração:Certifique-se de substituirbackend_base_url=http://(ip_máquina):8080
(ip_máquina)
pelo seu Endereço IPv4. - Execute o projeto com o comando:
flutter run
.
Ações realizadas e pendentes:
- Login de usuário
- Registro de usuário
- Requisição à API usando Dio
- Arquivo de configuração para tema escuro do aplicativo
- Exibição de produtos (churrasqueiras)
- Exibição do status de reserva de cada churrasqueira no dia atual
- Tela de detalhes do produto com informações (foto, calendário, legenda de cores e opção de reservar churrasqueira)
- Possibilidade de cancelar reserva de churrasqueira
- Os usuários podem visualizar as churrasqueiras cadastradas, mas precisam fazer login para reservar
- Utilização do Provider
- Utilização do BloC
- Tela "Minhas reservas" não concluída
- Testes
As informações de churrasqueiras e usuários estão sendo salvas com o seguinte formato:
{
"id": 0,
"name": "Teste",
"email": "[email protected]",
"password": "usuario_teste"
}
{
"id": 0,
"title": "Churrasqueira",
"description": "Churrasqueira a gás",
"photo": "https://montcalefatores.com.br/wp-content/uploads/2022/03/foto-1-calefator-3-1.jpg",
"rents": [
{
"id": 0,
"userId": 0,
"productId": 0,
"dateRent": "2023-04-17 00:00:00.000Z"
},
{
"id": 0,
"userId": 0,
"productId": 0,
"dateRent": "2023-04-18 16:33:07.235190"
},
{
"id": 0,
"userId": 0,
"productId": 0,
"dateRent": "2023-04-27 00:00:00.000Z"
},
{
"id": 0,
"userId": 0,
"productId": 0,
"dateRent": "2023-04-30 00:00:00.000Z"
}
]
}
Não é possível cadastrar um novo usuário, então utilize as seguintes credenciais para fazer login:
Email: [email protected]
Senha: usuario_teste