PI Digital House | Estúdio Aires


O Projeto Integrador tem como proposta construir uma aplicação web para uma empresa de fotografia, especializada na prestação de serviços imobiliários.

A ideia principal, é oferecer uma plataforma em que os clientes possam agendar suas demandas por imagens (fotografias, vídeos, imagens aéreas etc). Para que este serviço seja possível, existem dois lados que precisam ser organizados para que a jornada do usuário funcione de forma fluida.


Lado do cliente


No sistema, este usuário é o cliente e é mencionado como usuário.

  • Cadastro do usuário
  • Acesso à dashboard para que faça o orçamento do serviço desejado;
  • Seleciona data / horário para prestação do serviço;
  • Cobrança e pagamento são feitos online.

Lado fornecedor (fotógrafo)


No sistema, este usuário é tratado como membro.

  • Cadastro do usuário
  • Acesso à dashboard para gestão de agenda;

Para os dois tipos de usuário, é possível visualizar em suas dashboards o status de cada serviço e seus detalhamentos.


Mapa do Site


Home
├── Serviços
├── Quem Somos
└── Contato
    ├── Login Usuário
    │   ├── Meu Perfil
    │   ├── Solicitações
    │   ├── Novo Orçamento
    │   └── Alterar seus dados
    └── Login Membro
        ├── Meu Perfil
        ├── Jobs Finalizados
        └── Minha Agenda

Há também um acesso Admin, para que seja possível administrar os usuários membro.

Dashboard Admin
├── Cadastrar Membro
├── Ver Membros Cadastrados
└── Ver Solicitações

Seeds


Durante o desenvolvimento do projeto, criamos três seeds que são utilizadas para popular as informações no banco de dados e tornam o sistema funcional.

Seed de Usuários

Seed de Membros

Seed de Admin

  • Login: admin2021
  • Senha: 1234

Este login pode ser acessado através da rota localhost:3000/admin.


Para rodar o projeto


  • Rodar o script do banco de dados (DBStudioAires.sql);
  • Rodar o npm i para instalar as dependências do projeto;
  • Instalar o .env. O modelo está na pasta como .env-example;
  • No terminal, rodar o comando npm start;
  • No navegador, acessar a rota localhost:3000.

Tecnologias Utilizadas



Restrições do projeto


Este foi um projeto realizado no decorrer do curso de formação de Desenvolvimento Web Full Stack da Digital House, com a finalidade de colocar em prática os conceitos aprendidos no decorrer do curso.

Restrições:

  • Otimização do código, eliminando códigos repetidos;
  • Componentização de código, para melhor organização do projeto;
  • Revisão do código para correção de bugs e implementação completa de responsividade;

Sobre o Banco de Dados


O banco de dados do projeto, tem um bug não foi resolvido, sobre o auto_increment de algumas tabelas. Ao rodar o script retirado do MySql, o auto_increment adiciona números aleatórios. Para corrigir este comportamento, a cada vez que rodamos o script, corrigimos o incremento de cada tabela.

O arquivo incluido neste repositório, já tem esta correção implementada.


Autores