/School-Node-MJV-Projeto-Final

Projeto Final do curso de Node.js da MJV School.

Primary LanguageTypeScriptMIT LicenseMIT

NPM

MJV School Node.js

Projeto Final


Detalhes Da Aplicação:

  • A aplicação consiste no Gerenciamento de Funcionários e Produtos, com autenticação para todas as rotas.
  • O projeto pode ser aplicado para qualquer tipo de empresa, podendo se adequar para cada tipo e tamanho de negócio.

Diretrizes Do Projeto:

  • Utilizar boas práticas de criação de pastas/estruturação do projeto;
  • Utilizar typescript para escrever o código;
  • Utilizar express para roteamento da aplicação;
  • Criar no mínimo dois CRUD's(Create, Read, Update e Delete) completos de alguma funcionalidade, conectando com banco de dados MongoDB;
  • Criar um endpoint para autenticação dos usuários da sua aplicação e devolver um token com expiração para 1 Hora;
  • Criar no mínimo 4 endpoints que só poderão ser acessados por usuários autenticados.

Iniciando O Projeto:

  • npm init

Instalando Dependências:

  • npm install typescript --save
  • npm install ts-node ts-node-dev --save
  • npm install cors express --save
  • npm install @types/express @types/cors --save-dev
  • npm install @types/node --save-dev
  • npm install mongoose dotenv --save
  • npm install bcrypt --save
  • npm install @types/bcrypt --save-dev
  • npm install jsonwebtoken --save
  • npm install @types/jsonwebtoken --save-dev

Criação Do tsconfig.json:

  • tsc --init

💻 Regras Implementadas:

  • Validação no cadastro de Produtos e Funcionários procurando no banco de dados se o Código ou Matrícula já existem;
  • Validação na atualização de Produtos e Funcionários se o Código ou Matrícula informado no Request existe no banco de dados;
  • Validação no delete de Produtos e Funcionários se o Código ou Matrícula informado no Request existe no banco de dados;

🛑 Utilizando O Postman:


1️⃣ AUTHORIZATION

1️⃣ POST - MATRÍCULA INEXISTENTE

1️⃣ POST - SENHA INCORRETA

1️⃣ POST - GERAÇÃO DE TOKEN

1️⃣ GET PRODUCTS - ACESSO NEGADO

1️⃣ GET EMPLOYEES - ACESSO NEGADO


2️⃣ PRODUCTS

2️⃣ POST

2️⃣ POST- VALIDAÇÃO

2️⃣ GET ALL

2️⃣ GET CÓDIGO

2️⃣ GET CÓDIGO - VALIDAÇÃO

2️⃣ PUT

2️⃣ PUT - VALIDAÇÃO

2️⃣ DELETE

2️⃣ DELETE - VALIDAÇÃO


3️⃣ EMPLOYEES

3️⃣ POST

3️⃣ POST- VALIDAÇÃO

3️⃣ GET ALL

3️⃣ GET MATRÍCULA

3️⃣ GET MATRÍCULA - VALIDAÇÃO

3️⃣ PUT

3️⃣ PUT - VALIDAÇÃO

3️⃣ DELETE

3️⃣ DELETE - VALIDAÇÃO


✅ Repositórios:

SEMANA 2 👉 Clique aqui 🖱

SEMANA 3 👉 Clique aqui 🖱

SEMANA 4 👉 Clique aqui 🖱

SEMANA 5 👉 Clique aqui 🖱

SEMANA 6 👉 Clique aqui 🖱


🚀 Agradecimentos ❤

✔ MJV Technology & Innovation

✔ Nathan Carlos Santos Lima

✔ Ieda Regina de Paula

✔ Todos os participantes


Aluno

Lucas Araujo

lucarauj | LinkdeIN