Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selecionar Serviços por Produto #39

Closed
jarjar123 opened this issue Dec 12, 2014 · 1 comment · Fixed by #47
Closed

Selecionar Serviços por Produto #39

jarjar123 opened this issue Dec 12, 2014 · 1 comment · Fixed by #47
Assignees
Milestone

Comments

@jarjar123
Copy link
Contributor

Olá, gostaria de sugerir a seleção dos serviços por produto. Apesar da mudança no código ser pequena, as vantagens são enormes. Já efetuei essa mudança em produção há alguns meses, e gostaria de colaborar com o projeto, adicionando esse recurso.

Segue uma breve introdução sobre o assunto.

Nem todos os produtos são válidos para todos os serviços disponíveis. Embora PAC e SEDEX sejam iguais, a maioria dos serviços possui limites de peso e dimensões específicos. Objetos com mais de 15kg são normalmente inválidos para e-SEDEX. Diversas outras restrições se aplicam para os demais serviços como SEDEX 10, Carta, PAC Grandes Formatos, etc.

A validação de limites nesta extensão ainda é generalizada, mas mesmo se fosse configurável por serviço, ainda não atenderia os limites de tipos de mercadorias impostos pelos Correios. Por exemplo, somente livros, cd's e alguns outros itens podem ser enviados por Carta Registrada. Líquidos, plantas, e diversas outras mercadorias requerem uma atenção exclusiva. Você pode querer restringir o envio de mercadorias mais sensíveis como eletrônicos, vidros de perfumes, etc. Enfim estes e inúmeros outros casos fazem com que a identificação dessas diferenças durante a cotação seja muito complexa.

Uma possibilidade de gerenciamento mais simples é atribuindo a cada produto os possíveis serviços que podem transportá-lo.

Exemplo de Atributo:

Código:    postmethods
Tipo:       multiselect
Valor 1:    41068
Valor 2:    81019
...
Valor 99:   40096

Exemplo de Carrinho de Compras:

1 Livro     (PAC, SEDEX, SEDEX Hoje, Carta Registrada)
1 Celular   (PAC, SEDEX, SEDEX Hoje)
1 Pizza     (SEDEX Hoje)
1 Remédio  (SEDEX 10, SEDEX Hoje)
Resultado da Cotação:
    SEDEX Hoje
        Valor: R$50,00
        Prazo: 2 horas

Obs.: Exemplo meramente elucidativo.

@pedro-teixeira
Copy link
Owner

@jarjar123, me parece uma mudança interessante, mas ao contrário do que você disse, ela não é pequena e vai ter impacto de performance já que teremos múltiplas calls para a API dos Correios, isso também aumenta a chance de erro no cálculo.

Se você já tiver feito a mudança está mais do que convidado para enviar sua pull request, se for uma mudança clara e livre de problemas será aceito com certeza.

jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 12, 2014
@pedro-teixeira pedro-teixeira added this to the v4.4.0 milestone Dec 14, 2014
@pedro-teixeira pedro-teixeira self-assigned this Dec 14, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 15, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 15, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 15, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 15, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 15, 2014
…serviços de postagem por produto."

This reverts commit 0b6384c.
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 15, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 18, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 19, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 19, 2014
jarjar123 pushed a commit to jarjar123/correios that referenced this issue Dec 22, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment