Este projeto consiste em um sistema de gerenciamento de clientes, desenvolvido com React no front-end e Node.js no back-end. Abaixo, você encontrará detalhes sobre a estrutura do projeto, suas funcionalidades, configuração e como executar localmente.
Estrutura do Projeto
-
my-node-project
bin
-
client
build
node_modules
public
-
src
-
components
api.js
ClienteDetails.css
ClienteDetails.js
ClienteForm.css
ClienteForm.js
ClienteList.css
ClienteList.js
App.css
App.js
-
.env
package-lock.json
package.json
controllers
clientesController.js
models
clientesModel.js
node_modules
public
-
routes
clientesRoutes.js
users.js
views
app.js
index.js
package-lock.json
package.json
sequelize-config.js
node_modules
package-lock.json
package.json
O sistema oferece diversas funcionalidades tanto no front-end quanto no back-end. Abaixo estão as principais:
O front-end utiliza os seguintes end-points do back-end para buscar clientes por nome, email ou telefone:
GET /clientes
: Obtém todos os clientes.GET /clientes/:id
: Obtém detalhes de um cliente específico.
Essa funcionalidade permite ao usuário pesquisar e visualizar informações detalhadas sobre os clientes cadastrados no sistema.
Ao selecionar clientes específicos, o front-end utiliza o back-end para calcular a melhor rota otimizada entre esses clientes. Essa rota pode ser útil para otimizar visitas a clientes em um determinado itinerário.
O front-end permite a alteração das coordenadas geográficas de um cliente. Ao realizar essa modificação, as novas coordenadas são enviadas ao back-end, que atualiza as informações no banco de dados.
Para deletar um cliente, o front-end utiliza o end-point correspondente no back-end:
DELETE /clientes/:id
: Deleta um cliente específico.
Essa funcionalidade é útil para remover clientes que não são mais relevantes para o negócio.
O front-end interage com o back-end para adicionar novos clientes ao sistema. Através do formulário de cadastro, o usuário pode inserir as informações do cliente, e esses dados são enviados ao back-end para serem armazenados no banco de dados.
O back-end utiliza Express.js como framework para fornecer uma API RESTful, Sequelize como ORM para interação com o banco de dados MySQL, e outras tecnologias.
1. Instalação de Dependências: - Execute npm install
nos diretórios my-node-project
e Teste_Programa
.
2. Configuração do Banco de Dados: - Certifique-se de ter um banco de dados PostgreSQL em execução. - Edite o arquivo my-node-project/sequelize-config.js
com as configurações do seu banco de dados.
3. Execução do Back-end: - No diretório my-node-project
, execute npm start
para iniciar o servidor Node.js.
4. Execução do Front-end: - No diretório Teste_Programa/my-node-project/client
, execute npm start
para iniciar a aplicação React.
Este projeto foi desenvolvido por Pablo Fidelis Dias. Para mais detalhes, consulte o link: https://github.com/pablohsk/CleanRouteManagement.
Qualquer dúvida ou sugestão, sinta-se à vontade para entrar em contato. Obrigado por utilizar o Gerenciador de Clientes!