Cesar Machado Posted May 19, 2015 Share Posted May 19, 2015 (edited) Contribution: Change minimum order amount for minimum amount of products in the cart in 1.6 Fala pessoal, Pesquisei como alterar a opção padrão de estabelecer um valor mínimo para finalização do pedido para uma quantidade mínima de produtos no carrinho para finalizar o pedido na versão 1.6 Geralmente usado nas lojas de atacado onde o pedido só pode ser feito quando alcançar determinada quantidade de produtos. Consegui resolver fazendo a alteração abaixo em controllers/front/OrderOpcController.php para quem usa checkout em uma página. Encontrar: --- $currency = Currency::getCurrency((int)$this->context->cart->id_currency); $minimal_purchase = Tools::convertPrice((float)Configuration::get('PS_PURCHASE_MINIMUM'), $currency); if ($this->context->cart->getOrderTotal(false, Cart::ONLY_PRODUCTS) < $minimal_purchase) return '<p class="warning">'.sprintf( Tools::displayError('A minimum purchase total of %1s (tax excl.) is required in order to validate your order, current purchase total is %2s (tax excl.).'), Tools::displayPrice($minimal_purchase, $currency), Tools::displayPrice($this->context->cart->getOrderTotal(false, Cart::ONLY_PRODUCTS), $currency) ).'</p>'; $minimalPurchase = (float)Configuration::get('PS_PURCHASE_MINIMUM'); if (self::$cart->nbProducts() < $minimalPurchase) return '<p class="warning">'.Tools::displayError('A minimum purchase total of').' '.$minimalPurchase. ' '.Tools::displayError('Products is required in order to validate your order.').'</p>'; --- Substituir por: --- $minimal_purchase = (float)Configuration::get('PS_PURCHASE_MINIMUM'); $produtos = $this->context->cart->nbProducts(); $falta = $minimal_purchase - $produtos; if ($this->context->cart->nbProducts() < $minimal_purchase) return '<p class="warning">'.sprintf( Tools::displayError('O total mínimo de produtos em seu carrinho deve ser %1s produtos, neste momento você tem somente %2s produtos adicionados ao seu carrinho. Adicione mais %3s produtos(s) para finalizar seu pedido.'), ($minimal_purchase), ($produtos), ($falta) ).'</p>'; --- No admin acesse "Preferências e depois Compras" e insira a quantidade mínima no campo "total mínimo de comprar requerido..." Isto vai mostrar um aviso antes das opções de pagamento informando a quantidade mínima de produtos, quantos já existem no carrinho, e a quantidade que falta para que ele possa finalizar o pedido. Quem usa o checkout em 5 etapas pode fazer esta alteração em controllers/front/OrderController.php Espero a que ajude a quem necessite desta alteração. Para garantir as alterações depois de atualizar seria necessário criar um override. Edited May 19, 2015 by cesarmachado (see edit history) 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now