Jump to content

Presta 1.6 : prix d'achats tronqués en DB


Recommended Posts

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

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...