Récemment
-
Des modules et des hacks - liste non exhaustive des modules présentant un risque
Discussion générale17 -
Thème enfant
PhenixSuite16 -
SumUp Payments Constant Update Request
Modules2 -
PaypalAPI erreur
PhenixSuite53 -
Problèmes de prix avec plusieurs devises et PayPal
PhenixSuite6 -
Solutions de paiement...
Discussion générale5 -
Petit code pour les descriptions de produits
Discussion générale3 -
Feuilles de styles non chargées si smart cache activé [RÉSOLU]
PhenixSuite5 -
PayPal Module Error
Bugs & Améliorations2 -
Transient Bug after 1.6.2.31 Upgrade
Bugs & Améliorations2 -
blockcategory et left_column
BUG connus1 -
[REGLÉ] override - je n'y arrive pas.
Modules10 -
les routes sur mesures
Discussion générale6 -
Nouvelle attaque ?
Discussion générale11 -
Problème calcul HT
Bugs & Améliorations42 -
Erreur sur facture générée depuis le FO
PhenixSuite3 -
Factures ne se génèrent plus depuis 06/12 [RÉSOLU]
Bugs & Améliorations20 -
Edition en masse des déclinaisons
Nouvelles fonctionnalités4 -
Mise à niveau de Prestashop 1.6.24 vers PhenixSuite 1.6.30
Discussion générale2 -
Thème possible
Questions relatives à l'installation/upgrade2
Calcul des règles paniers HT/TTC [RÉSOLU]
-
@Olivier75009 a dit dans Calcul des règles paniers HT/TTC :
Peut-on avoir la correction pour le calcul du groupe pro ?
Si on m'en laisse le temps et que je puisse finaliser tous les tests, la version 1.6.2.21 sera libérée ce soir.
-
Merci encore.
-
@eolia Si j'affiche $new_sold et $total_paid dans Tools::displayError : "You cannot add a new payment because this order has already been paid in full 117.66 sur 117.660000".
En ajoutant $new.'0000' > (...) l'ajout passe.
-
Correctif:
elseif(!Validate::isNegativePrice($amount)) { $this->errors[] = Tools::displayError('The amount is invalid.'); } elseif(!Validate::isGenericName(Tools::getValue('payment_method'))) { $this->errors[] = Tools::displayError('The selected payment method is invalid.'); } elseif(!Validate::isString(Tools::getValue('payment_transaction_id'))) { $this->errors[] = Tools::displayError('The transaction ID is invalid.'); } elseif(!Validate::isLoadedObject($currency)) { $this->errors[] = Tools::displayError('The selected currency is invalid.'); } elseif($order_has_invoice && !Validate::isLoadedObject($order_invoice)) { $this->errors[] = Tools::displayError('The invoice is invalid.'); } elseif(!Validate::isDate(Tools::getValue('payment_date'))) { $this->errors[] = Tools::displayError('The date is invalid'); } else { $amount = Tools::ps_round($amount, _PS_PRICE_COMPUTE_PRECISION_); $new_sold = $order->total_paid_real + $amount; if($new_sold > $order->total_paid) { $this->errors[] = Tools::displayError('You cannot add a new payment because this order has already been paid in full'); }
1ère ligne modifiée (1837) et ajout avant la ligne 1956 ($amount = Tools::ps_round($amount, PS_PRICE_COMPUTE_PRECISION);)
-
Pourquoi ne pas retirer tous les nuls (0) après les décimales ?
-
Parce que la comparaison de floats n'est pas si simple et dans votre cas précis vous êtes à 2 décimales mais certains pays sont à 3 (dinar ou ryal) ou plus et je ne sais pas ce que va rentrer le commerçant (Presta accepte jusqu'à 6 décimales)
-
Je viens de voir que sur vos tests (règles paniers avec pourcentage de réduction -> Test HT Eolia) ça s'applique à la commande. Est-ce que ça fonctionne aussi sur les produits sélectionnés lorsqu'on choisit de faire une réduction sur une ou plusieurs catégories de produits ?
Édith : nous avons créé des prix spécifiques pour le WE du black friday, certains correspondent à une catégorie réduite dans les règles paniers, et lors d'une commande, au vu de la quantité de produit, la règle n'est calculée que sur les produits n'ayants pas eu de prix spécifiques.
(Exemple : -5% sur le prix si 5 produits de la même catégorie sont dans le panier.)
-
Oui ça fonctionne pareil, ce n'est pas le type de calcul qui avait un souci, mais la façon dont le prix était calculé en TTC lors de la conversion pour le paiement.
-
Et pour l'application de la règle panier même si l'article a un prix spécifique ? (la règle s'applique bien car il y a au moins le bon nombre d'articles, mais elle n'est calculée que sur les articles de cette règle n'ayant pas de prix spécifique)
-
Tout dépend ce que vous avez configuré ici:
-
Et si il n'y a pas de code ? Nous avons décidé pour certaines règles de les appliquer systématiquement (donc pas de code).
-
Si vous avez autorisé le cumul on ne s'occupe pas du code.
Si vous avez mis NON, seuls les codes commençant par le préfixe de votre choix seront cumulables.
-
Merci ! Ça fait le job !