doekia Posted January 14, 2014 Share Posted January 14, 2014 Dans la mesure où la forge n'accepte plus de bug report pour la 1.4, je poste ici. CAUSE ====== La fonction Order::setProductPrice() retourne des prix faux, ceci impacte les récaps de commande et les factures. public function setProductPrices(&$row) { $row['product_price'] = Tools::ps_round($row['product_price'], 2); $row['product_price_wt'] = Tools::ps_round($row['product_price'] * (1 + $row['tax_rate'] / 100), 2); La première ligne arroundi le prix HT qui va être utilisé plus tard. Les résulats sont donc faux. Example: prix_HT 2.375, TVA 20% => prix_TTC 2.85 Ici round(2.375) = 2.38 et 2.238 * 1.2 = 2.856 => 2.86 CORRECTIF ========== public function setProductPrices(&$row) { if ($this->_taxCalculationMethod == PS_TAX_EXC) $row['product_price'] = Tools::ps_round($row['product_price'], 2); else $row['product_price_wt'] = Tools::ps_round($row['product_price'] * (1 + $row['tax_rate'] / 100), 2); Pour information ce code est celui de la 1.4.9, la modification et est en rapport avec: http://forge.prestashop.com/browse/PSCFI-7249 et https://github.com/PrestaShop/PrestaShop-1.4/commit/a47d96ef494d4f783b946bbb76b3d84829c23ee7#commitcomment-5061911 IMPACT ====== Il s'agit d'un bug majeur, surtout depuis le changement de TVA. Si vos prix TTC sont ronds plus de 15% des prix de vos boutiques vont générer ce type d'erreur. Facture fausse et autres joyeusetés. 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