En visitant ce site, vous acceptez l'utilisation de cookies afin de vous proposer les meilleurs services possibles.

Solution : Plug-in istraxx-quantity : problème discount sur somme totale après TVA et TVA multiples

Plus d'informations
il y a 11 ans 11 mois - il y a 11 ans 11 mois #1 par VirtueMaster
Le quantity plug-in développé par la team de développement VirtueMart permet de faire différents types de réductions, sur les produits, mais aussi sur la facture globale.
Ces réductions peuvent être différentes, par exemple plus importantes en fonction de la tranche dans laquelle se situe le montant du panier
ex :
de 100 à 299.99 € : réduction 5 %
de 300 à 799.99 € : réduction 7%
à partir de 800€ : réduction 10 %

donc, c'est super et très flexible !

La seule chose, comme il était précisé dans ce sujet, virtuemart.fr/accueil-forum/commandes-et...-certaine-somme#1140, est qu'il faut indiquer les montants HT dans les champs des tranches d'application.

Cela n'a en soi, rien de réellement génant, sauf dans le cas d'une boutique devant appliquer plusieurs TVA ; bien évidemment, le montant HT est différent selon la TVA appliquée.

Pour corriger le souci, c'est très simple !
editer le fichier dossier_de_votre_site/plugins/vmcalculation/istraxx_quantity/istraxx_quantity.php
localisez cette condition (ligne 174 ?)
if(!empty($rule['calc_categories'])){
						$amount = 0.0;
						foreach($calculationHelper->_cart->products as $product){
							$set = array_intersect($rule['calc_categories'],$product->categories);
							if(count($set)>0){
								$amount += $product->prices['priceWithoutTax'] * $product->amount;
								vmdebug('Cart rule, CATEGORY set amount '.$product->prices['priceWithoutTax'].' * '.$product->amount. ' = '.$amount);
							}
						}

					} else {
						$amount = $cartPrices['priceWithoutTax'];
						vmdebug('Cart rule, no category, set amount = '.$amount);
					}
:
remplacez par
if(!empty($rule['calc_categories'])){
						$amount = 0.0;
						foreach($calculationHelper->_cart->products as $product){
							$set = array_intersect($rule['calc_categories'],$product->categories);
							if(count($set)>0){
								$amount += $product->prices['basePriceWithTax'] * $product->amount;
								vmdebug('Cart rule, CATEGORY set amount '.$product->prices['basePriceWithTax'].' * '.$product->amount. ' = '.$amount);
							}
						}

					} else {
						$amount = $cartPrices['basePriceWithTax'];
						vmdebug('Cart rule, no category, set amount = '.$amount);
					}
Sauvegardez
renvoyez par ftp

Vous pouvez désormais indiquer les prix TTC dans les champs destinés à cet effet.

NB : Corrections transmises à la Team VirtueMart ; une prochaine release du plug-in est à venir
Dernière édition: il y a 11 ans 11 mois par VirtueMaster.

Connexion ou Créer un compte pour participer à la conversation.