' tenho como Objetivo me desafiar e expor minhas habilidades e evolução.'
Readme do Desafio original
Inicie adicionando todas as dependencias e startando a ORM Prisma juntamente com Docker.
# dependencias
npm install
# Iniciar prisma
npx prisma migrate dev
./src
:.
🔗.
http/
:
Principal app src/http
, onde se encontra as Rotas e o Servidor.
Rotas /routs
, contendo CRUD
e a rota calcule.ts
responsavel pelo resultado final.
creat-frete.ts
e ger-frete.ts
, caso queira add novo frete e ter retorno deles.
, caso queira add novo frete.
Servido ou controlador /server.ts
.
🔗.
lib/
:
prisma.ts
, liberando a funcionalidade de conectar ao db
| @prisma/client
.
🔗.
utils/
:
formuleCalcFrete.ts
, responsavel pela funcao de calcular e formatar o valor do frete,
./prisma
:.
schema.prisma
, responsavel para criar o schema
, criando as tabelas ou seus model
para seu db
🔗.
seed/
:
O Script seed.ts
popula o db
🎯
Objetivo
- Criar uma
API REST
- Validar as Dimencoes com as
opcoes de frete
- Retornar uma ou mais transportadoras, se nao retornar vasio
[]
caso nem uma seja valida
- Retornar uma ou mais transportadoras, se nao retornar vasio
- calcular o frete cruzando a
Info.
doproduto
e as opcoes de frete(Peso x constante_frete) / 10
- Validar as Dimencoes com as
- App ser
API REST
- Validação de
altura
máxima e mínima para cada opção de frete - Validação de
largura
máxima e mínima para cada opção de frete// caso a validacao nao aprove todos. []
- Validação se o
peso
doproduto
é maior que0
(zero). - Rota
POST
- Receber parametros em Formato
JSON
com asInfo.
:dimensao
:altura
elargura
,peso
{ "dimensao": { "altura":152, "largura":50 }, "peso":850 }
- Formatar e retornar com as
Info.
:nome
,valor
eprazo
[ { "nome":"Entrega Ninja", "valor_frete": 12.00, "prazo_dias": 6 }, ]