pShark Posted November 4 Share Posted November 4 Buenas, Necesito aplicar un descuento del 10% por multiplos de 50 unidades de un mismo producto, por ejemplo, si el usuario elige... - 50 unidades, se aplica un descuento de 10% - 51 unidades, se aplica un descuento del 10% a 50 unidades y 1 unidad tendra el precio normal. - 110 unidades, se aplica un descuento del 10% a 100 unidades y 10 unidades tendran el precio normal. Y así sucesivamente... ¿Alguien sabe como puedo hacer esto? ¿algun módulo que lo permita gratuito o de pago?. Gracias y un saludo. Link to comment Share on other sites More sharing options...
Knowband Plugins Posted November 4 Share Posted November 4 Crear una Regla de Carrito Personalizada o Modificar el Cálculo del Carrito Sobrescribir la clase Cart: Puedes sobrescribir la clase Cart en PrestaShop para personalizar la aplicación de descuentos según la cantidad de productos en el carrito. Identifica múltiplos de 50 en la cantidad de cada producto en el carrito. Para cada múltiplo de 50, calcula el descuento del 10%. Aplica el descuento solo a las unidades elegibles (por ejemplo, para 110 unidades, aplica un descuento del 10% a 100 unidades y deja las 10 unidades restantes a precio normal). class Cart extends CartCore { public function getOrderTotal($withTaxes = true, $type = Cart::BOTH) { $total = parent::getOrderTotal($withTaxes, $type); foreach ($this->getProducts() as $product) { $quantity = $product['cart_quantity']; $eligibleDiscountUnits = floor($quantity / 50) * 50; $normalPriceUnits = $quantity % 50; $productPrice = $product['price']; $discountedPrice = $productPrice * 0.90; // 10% de descuento // Calcula el total para este producto con la lógica de descuento personalizada $productTotal = ($eligibleDiscountUnits * $discountedPrice) + ($normalPriceUnits * $productPrice); // Ajusta el total del carrito en consecuencia $total += $productTotal - ($product['total_wt']); // Ajustar por la diferencia } return $total; } } 1 Link to comment Share on other sites More sharing options...
pShark Posted November 5 Author Share Posted November 5 (edited) Gracias @Knowband Plugins, lo voy a probar. De todas formas, lo ideal sería hacerlo con algun módulo y poder hacerlo también en otros productos y con diferentes multiplos, no solo con 50 unidades. @aixos Si, lo había mencionado primero ahí, pero luego he visto que mi problema era algo diferente y he abierto este nuevo tema. Edited November 5 by pShark (see edit history) 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