0.4.8 • Published 2 years ago

frete v0.4.8

Weekly downloads
13
License
MIT
Repository
github
Last release
2 years ago

Frete

frete-sheriff npm npm

NPM


Modulo para consumo da API dos correios de calculo remoto de precos e prazos:

Implementação de todos os metodos disponiveis na API, com acessores simples e fáceis. :)

Para ganharmos um pouco de performance, usamos o wsdl salvo no folder ./correios-data/CalcPrecoPrazo.xml, ao invés de fazermos o request inicial para isso.

Também mantemos uma lista de todos os serviços disponíveis pelos correio em ./correios-data/listaServicos.json, você pode atualizar essa lista juntamente com as definiçōes de TypeScript rodando o arquivo ./scripts/dump-services.js

Todas as opções do wsdl estao disponíveis via os mesmos comandos, e os metodos estão disponíveis nos mesmos nomes mas em camelCase e sem o prefixo Calc, (e.g. .precoPrazo()).

Para maiores detalhes de usage, você pode checar os nossos tests em frete.spec.js

Exemplos

Calculo simples de prazo usando promises:

const frete = require('frete');

(async function() {
    const results = await frete()
        .cepOrigem('13467460')
        .servico(frete.servicos.sedex)
        .prazo('13466321');

        console.log(results);
})();

Calculo simples de prazo:

const frete = require('frete');

frete()
    .cepOrigem('13467460')
    .servico(frete.servicos.sedex)
    .prazo('13466321', function (err, results) {
        console.log(err);
        console.log(results);
    })

Calculo simples de preco:

const frete = require('frete');

frete()
    .cepOrigem('13467460')
    .peso(1)
    .formato(frete.formatos.caixaPacote)
    .comprimento(16)
    .altura(2)
    .largura(11)
    .diametro(1)
    .maoPropria(frete.maoPropria.nao)
    .valorDeclarado(50)
    .avisoRecebimento(frete.avisoRecebimento.sim)
    .servico(frete.servicos.sedex)
    .preco('13466321', function (err, results) {
        console.log(err);
        console.log(results);
    });

Calculo simples de preco e prazo:

const frete = require('frete');

frete()
    .cepOrigem('13467460')
    .peso(1)
    .formato(frete.formatos.caixaPacote)
    .comprimento(16)
    .altura(2)
    .largura(11)
    .diametro(1)
    .maoPropria(frete.maoPropria.nao)
    .valorDeclarado(50)
    .avisoRecebimento(frete.avisoRecebimento.sim)
    .servico(frete.servicos.sedex)
    .precoPrazo('13466321', function (err, results) {
        console.log(err);
        console.log(results);
    });

Default options:

const frete = require('frete');
frete.cepOrigem('13467460').servico([ frete.servicos.sedex, frete.servicos.pac ]);

frete().prazo('13466321', function (err, results) {
    console.log(err);
    console.log(results);

    frete().prazo('13466321', function (err, results) {
        console.log(err);
        console.log(results);
    });
});

Objeto as config / More usages

const frete = require('frete');
frete.cepOrigem('13467460').servico([ frete.servicos.sedex, frete.servicos.pac ]);

frete({
    cepDestino: '13466321',
    peso: 1,
    formato: frete.formatos.caixaPacote,
    comprimento: 16,
    altura: 2,
    largura: 11,
    diametro: 1,
    maoPropria: frete.maoPropria.nao,
    valorDeclarado: 50,
    avisoRecebimento: frete.avisoRecebimento.sim
}).prazo(function(err, result) {
    console.log(err);
    console.log(result);
});

Utilities

const frete = require('frete');

console.log(frete.servicos.list);
console.log(frete.servicos.search('sedex'));
console.log(frete.servicos.byCode[81876]);

Dependency

0.4.8

2 years ago

0.4.7

2 years ago

0.4.5

3 years ago

0.4.4

3 years ago

0.4.6

3 years ago

0.4.1

3 years ago

0.4.0

3 years ago

0.4.3

3 years ago

0.4.2

3 years ago

0.3.2

4 years ago

0.3.0

5 years ago

0.3.1

5 years ago

0.2.4

10 years ago

0.2.3

10 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.0

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago