Patronarte Posted October 8, 2015 Share Posted October 8, 2015 Hola a tod@s!! Llevo un tiempo ya dándole vueltas a este tema y no encuentro una solución. El tema es que tengo varios productos con precios específicos o con reglas de catalogo aplicados muy agresivos. Aparte quiero ofrecer un vale de descuento, pero no quiero que este vale de descuento pueda aplicarse a productos con precio específico o reglas de precios de catálogo aplicados. Al crear un vale si que encuentro la opción de que no sea compatible con otros vales pero no con precios específicos o reglas de catálogo. He buscado módulos y tampoco he encontrado nada que solucione este tema. ¿Conocéis algún modulo o alguna forma de solucionar este tema? Utilizo la versión 1.6.1 Gracias Link to comment Share on other sites More sharing options...
Tárraga Posted October 8, 2015 Share Posted October 8, 2015 (edited) Hola Patronarte, yo estuve buscando exactamente la misma solución que aquí detallas, y conseguí hacerlo. En un momento te busco el archivo que tuve que modificar y edito el mensaje con la solución. Un saludo. ---------------------------- En el archivo classes/CartRule.php debes añadir esto cerca de la línea 850. foreach ($package_products as $product) if (Product::isDiscounted((int)$product['id_product'])) $order_total -= $use_tax ? $product['total_wt'] : $product['total']; Te pongo un trozo de código antes y después para que lo veas más claro. Es lo que está entre las líneas de comentado donde pone "FIX PARA ARREGLAR etc etc". Si tienes alguna pregunta o cualquier cosa, no dudes en decirlo. Ya me cuentas que tal te ha ido. // Discount (%) on the whole order if ($this->reduction_percent && $this->reduction_product == 0) { // Do not give a reduction on free products! $order_total = $context->cart->getOrderTotal($use_tax, Cart::ONLY_PRODUCTS, $package_products); foreach ($context->cart->getCartRules(CartRule::FILTER_ACTION_GIFT) as $cart_rule) $order_total -= Tools::ps_round($cart_rule['obj']->getContextualValue($use_tax, $context, CartRule::FILTER_ACTION_GIFT, $package), _PS_PRICE_COMPUTE_PRECISION_); /* FIX PARA ARREGLAR DESCUENTOS SALES * De este modo, nunca aplicará el descuento de cliente * a un producto que esté rebajado mediante una regla de catálogo */ foreach ($package_products as $product) if (Product::isDiscounted((int)$product['id_product'])) $order_total -= $use_tax ? $product['total_wt'] : $product['total']; /* -----------------------------------*/ $reduction_value += $order_total * $this->reduction_percent / 100; } // Discount (%) on a specific product if ($this->reduction_percent && $this->reduction_product > 0) { foreach ($package_products as $product) if ($product['id_product'] == $this->reduction_product) $reduction_value += ($use_tax ? $product['total_wt'] : $product['total']) * $this->reduction_percent / 100; } Edited October 8, 2015 by Tárraga (see edit history) 2 Link to comment Share on other sites More sharing options...
Patronarte Posted October 8, 2015 Author Share Posted October 8, 2015 Muchísimas gracias Tárraga!!! en cuanto tenga un rato lo pruebo, me traía loca este tema. Un saludo, Link to comment Share on other sites More sharing options...
Patronarte Posted December 1, 2015 Author Share Posted December 1, 2015 Funciona perfectamente, muchas gracias!!!! Link to comment Share on other sites More sharing options...
oxygene Posted December 23, 2015 Share Posted December 23, 2015 Pero eso funciona para todos los vales como sería para uno específico?Es decir yo tengo vales que se aplican a productos con descuento y otros que no como lo hago? Link to comment Share on other sites More sharing options...
calzadilla Posted February 29, 2016 Share Posted February 29, 2016 Muchas gracias!!! me ha valido de mucho!!! Link to comment Share on other sites More sharing options...
calzadilla Posted February 29, 2016 Share Posted February 29, 2016 Y para hacerlo al contrario?? que teniendo una regla de catálogo, por ejemplo, un 10 en una categoría determinada... no puedan meter cupones de descuento activados??? Se que en la opción de compatibilizar reglas de compra en vales de descuento te da la opción de no acumular vales de descuento... pero no aparecen las reglas de catálogo.. quiero decir, que un cliente no pueda utilizar un vale descuento si el producto tiene ya aplicada una regla de catálogo... Perdón, es que me estoy volviendo loco buscando y no encuentro solución alguna 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