Jump to content

Calcul de prix erroné ?


Recommended Posts

Bonjour,

J'ouvre ce sujet sur un problème assez spécifique.

Le contexte est le suivant :

 - Sur un produit disposant de déclinaisons, une de ces déclinaisons dispose d'un prix plus élevé que le reste des déclinaisons (de l'ordre d'un euro par exemple mais cela n'est pas très important)

 - Ce même produit dispose d'un prix spécifique (réduction) uniquement pour la déclinaison plus chère citée ci dessus.

 

Le calcul du prix via la méthode : Product::priceCalculation ne renvoit pas le bon prix selon moi.

 

En effet, le prix spécifique est bien déduit, mais le petit supplément (un euro dans mon exemple) n'est pas compté.

 

J'ai réussi à régler cela en modifiant une partie du code de cette fonction mais j'aimerai avoir confirmation que ce que je fais n'est pas une erreur.

 

Voici la modification apportée qui règle le problème pour moi dans Product::priceCalculation :

//EDIT IS HERE $specific_price['id_product_attribute'] -> !$specific_price['id_product_attribute']
    	// Attribute price
    	if (is_array($result) && (!$specific_price || $specific_price['id_product_attribute'] || $specific_price['price'] < 0)) {
    		$attribute_price = Tools::convertPrice($result['attribute_price'] !== null ? (float)$result['attribute_price'] : 0, $id_currency);
    
    		// If you want the default combination, please use NULL value instead
    		if ($id_product_attribute !== false) {
    			$price += $attribute_price;
    		}
    	}

Merci pour votre aide.

Edited by insaneness (see edit history)
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...