french50 Posted May 10, 2022 Share Posted May 10, 2022 Bonjour, Problème sans doute idiot mais... Dans ma table ps_product, j'ai deux champs customisés : wholesale_price_percent_reduction & wholesale_price_with_reduction Concrètement le champs standard wholesale_price contient le prix d'achat standard du produit, wholesale_price_percent_reduction le pourcentage négocié auprès du fournisseur et wholesale_price_with_reduction le vrai prix d'achat. Je voudrais que, dans la table ps_order_detail, les champs purchase_supplier_price & original_wholesale_price contiennent du coup la valeur incluant la réduction. J'ai donc ainsi par exemple l'override suivant : class OrderDetail extends OrderDetailCore { protected function setDetailProductPrice(Order $order, Cart $cart, $product) { parent::setDetailProductPrice($order, $cart, $product); if (isset($product->wholesale_price_with_reduction)) { $this->purchase_supplier_price = (float)$product->wholesale_price_with_reduction; } } } Mon problème, c'est qu'en DB l'enregistrement est systématiquement tronqué : les chiffres après la virgule sautent (ex : 26.123456 devient 26.000000). Mon champ wholesale_price_with_reduction & le champ purchase_supplier_price sont tous deux déclarés comme decimal 20,6 Sans override et sur base du champ wholesale_price standard donc, les chiffres après la virgule sont là. Je n'arrive pas à reproduire ce problème en local où cela fonctionne correctement, mais je suis en php 7.1 là où le serveur est en 7.0. Une idée lumineuse sur le sujet ? Bonne journée, François 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