Bem vindo ao brockdev.com, não seja tímido compartilhe suas duvidas e conhecimento. :D

Cálculo de Frete

Abraao Marques Moderador Global
editado July 2014 em Módulos de Fretes/Correios
Pessoal, bom dia!

Alguém sabe me dizer se é possível limitar o cálculo de produtos diretamente no carrinho de compras? O webservice dos Correios tem o problema que calcula produtos que não excedam 30Kg no total. Eu gostaria saber se é possível, quando o(s) produto(s) chegar(em) ao carrinho de compras, se caso houver excedido o peso de 30Kg emita uma informação de que não é possível dar prosseguimento na compra, orientando o usuário a entrar em contato com a central de atendimento.

Existe alguma configuração no Magento que atenda isso?


Obrigado.

Comentários

  • brunowdbrunowd Usuário
    Já tentou usar a extensão Checkout Rules ?

    Dá uma olhada nesse tópico

    http://forum.escolamagento.com/index.php?/topic/12136-ocultar-metodo-de-entrega-por-quantidade-do-produto/

    , talvez te ajude !

    Ou ainda esse código

    <?php $totalcarrinho = Mage::helper('checkout/cart')->getQuote()->getItemsQty(); ?>

    <?php if ($totalcarrinho <= 29): ?>

    <?php echo $this->__('<a href=\"#1\">Minimo 30 peças para finalizar o pedido</a>') ?>

    <?php elseif ($totalcarrinho >= 30): ?>


    Claro que é por quantidade, mas talvez tu consiga colocar por peso .

    Boa sorte!
  • Abraao Marques Moderador Global
    brunowd, valeu pela dica.

    Na verdade, eu já resolvi esse problema. Eu estou usando o módulo de frete dos Correios do Rosantoz.

    Em:

    app --> code --> community --> Rosantoz --> Correios --> Model --> Carrier --> Correios.php


    Na altura da linha 55 estava assim:



    $frete = $correios
    ->setContrato($contractNumber)
    ->setSenha($contractPass)
    ->setCepOrigem($origin)
    ->setCepDestino($request->getDestPostcode())
    ->setPeso($request->getPackageWeight())
    ->setAltura($request->getPackageHeight())
    ->setLargura($request->getPackageWidth())
    ->setComprimento($request->getPackageDepth())
    ->setFormatoDaEncomenda($packageFormat)
    ->setServico($rMethod);




    Alterei para isso:



    $peso_mais = $request->getPackageWeight();
    if($peso_mais <= 5):

    $peso_mais += 0.3;

    else:

    $peso_mais += 0.5;

    endif;

    $frete = $correios
    ->setContrato($contractNumber)
    ->setSenha($contractPass)
    ->setCepOrigem($origin)
    ->setCepDestino($request->getDestPostcode())
    ->setPeso($peso_mais)
    ->setAltura($request->getPackageHeight())
    ->setLargura($request->getPackageWidth())
    ->setComprimento($request->getPackageDepth())
    ->setFormatoDaEncomenda($packageFormat)
    ->setServico($rMethod);



    Assim, atendendo o pedido da empresa, eu faço um acréscimo de peso no cálculo do frete o que acaba sendo o valor da embalagem do produto no envio, o que também é pago.


    Um abraço!
  • brunowdbrunowd Usuário
    Boa valeu pelo retorno !
Entre ou Registre-se para fazer um comentário.