jd440 Posted February 18, 2014 Share Posted February 18, 2014 (edited) Bonjour à tous. Est il possible de calculer les frais de port après réduction? Ainsi que les bons de réduction soit appliqué sur les total produits et non sur le total après transport. Concretement: J'offre les frais port à partir de 60€ (+précisment les transports sont configuré 0=>60 FPD=5€; >60e=>fdp gatuit) J'offre un bon de réduction de 30€ les frais de port standard sont de 5€ Si un client prend un produit à 61€ il paye 31€ Je souhaiterais qu'il paye 36€ 61€ - 30€ = 31€ ==> Aplication de 5€ de frais de port Total = > 36€ En réalité: 61€ ==> frais de port offert 61€ - 30€ = 31€ Total = > 31€ Merci à vous. Edited February 18, 2014 by jd440 (see edit history) Link to comment Share on other sites More sharing options...
jd440 Posted February 18, 2014 Author Share Posted February 18, 2014 .4Mince on trouve sur les forum Fr et En nombre de solution pour les PS1.1, 1.3, 1.4... Mais malheureusement pas pour la version 1.5. Link to comment Share on other sites More sharing options...
jd440 Posted February 19, 2014 Author Share Posted February 19, 2014 Je crois avoir trouvé la solution. Dans classe/cart.php L2710 en remplacant $shipping_cost += $carrier->getDeliveryPriceByPrice($order_total, $id_zone, (int)$this->id_currency); part $shipping_cost += $carrier->getDeliveryPriceByPrice(($orderTotalwithDiscounts?$orderTotalwithDiscounts:$order_total), $id_zone, (int)$this->id_currency); Il me reste encore des vérifs à faire. mais dans ce cas il calcul le shipping à partir du total avec la réduction 4 Link to comment Share on other sites More sharing options...
akhawat Posted February 19, 2014 Share Posted February 19, 2014 Bonjour que donne les test est ce que cela fonctionne ? cdlt Link to comment Share on other sites More sharing options...
jd440 Posted February 19, 2014 Author Share Posted February 19, 2014 J'ai encore des tests à réaliser, mais cela semble fonctionne. Le total est bon qu'il y ai ou non un bon. Les factures sont correct. Celà pourrais être interessant qu'un pro de presta, nous donne son avis.+ *Il y a une modif de theme à prévoire pour modifier l'ordre total produit, bon de réduction. livraison, total, Link to comment Share on other sites More sharing options...
jd440 Posted February 20, 2014 Author Share Posted February 20, 2014 Cela fonctione, avec les transporteur standard. malheureusement j'utilise le module de envoimoinscher, et malheureusement mon correctif ne fonctionne pas avec les transporteur configuré par ce module. Link to comment Share on other sites More sharing options...
jd440 Posted February 24, 2014 Author Share Posted February 24, 2014 Module modifié et c'est bon. Tout es OK Link to comment Share on other sites More sharing options...
Marc44 Posted February 17, 2015 Share Posted February 17, 2015 Bonjour, Désolé de déterrer un sujet d'il y a 1 an ! Je voulais savoir si cette technique fonctionne sous la 1.6 ? Après avoir fait la modif du fichier cart.php (ligne 2750) et fait le nécessaire pour l'override, rien ne se produit. Je n'ai pas changer l'ordre d'apparition sur le panier en front ? (c'est pas mon code et je suis loin d'être un développeur...) Est ce que cela pourrait venir de ça ? Merci pour la réponse. Marc. Link to comment Share on other sites More sharing options...
akhawat Posted March 14, 2015 Share Posted March 14, 2015 Module modifié et c'est bon. Tout es OK Bonjour pouvez vous me dire ce que vous avez modifier sur le module envoimoins cher pour que cela fonctionne, je rencontre le même problème cdlt Link to comment Share on other sites More sharing options...
thomasharko Posted November 15, 2016 Share Posted November 15, 2016 Fonctionne toujours 2 ans après, les lignes ont changés mais ce n'est pas très loin merci jd440 Link to comment Share on other sites More sharing options...
François38 Posted November 25, 2016 Share Posted November 25, 2016 Oui pour moi la modification a fonctionné sur une 1.6.1.4 Il serait effectivement intéressant de développer la modif nécessaire sur le module envoimoinscher.com pour ceux qui l'utilisent ou pour pouvoir l'appliquer sur d'éventuels autres modules. Link to comment Share on other sites More sharing options...
olybop Posted March 10, 2017 Share Posted March 10, 2017 Bonjour, J'avais une question légale. Quid de la loi sur ce genre de pratique ? Le mode de calcul des frais de port offerts sont-ils sur le prix d'origine ou le prix après réduction ? Mais du cout, si on repasse sous le seuil de Frais de port offert grace à la réduction, ils redeviennent payants. Réduction déguisée ? Vente additionnelle forcée (pour avoir de nouveau les FdP offerts) Merci de vos lumières. Link to comment Share on other sites More sharing options...
Jofrey Posted December 6, 2017 Share Posted December 6, 2017 Bonjour à tous ! Je Upload cette conversation pour vous REMERCIER !!!! et que ce forum remontent aux oreilles d'autres !! J'ai trouvé grâce à vous LA SOLUTION !!!! que je cherchais désespérément une solution dans tout les codes php au fil ou mes clients avait trouvés la combine des frais de ports cumulable après réduction même en dessous de 49€ de Frais de port offerts ! J'ai pu enlever le code Transports en Français et en Anglais du site internet (qui lui aussi ce cumuler avec les offres ) et remettre les Tranches des transporteur et tout fonctionne ENFIN grâce à ces 3 foutues lignes de codes qui gênés MERRCIIIIIIl faut préciser pour les personnes qui comme moi ont créer suite aux erreurs de frais de port offerts des Codes ''Transports gratuit'', qu'il faut enlever ces codes dédié au transports gratuit et remettre les transporteurs avec des tranches entre X€ et XX€... N'hésitez pas non plus à vider le cache de votre site au cas ou y'a une erreur et que le site ne fonctionne plus (Paramètres avancés => Performance => en haut à droite y'a une gomme avec marqué Vider Le Cache) et rafraîchir votre page ! ENCORE MERCIIIII ! Link to comment Share on other sites More sharing options...
MattAmibis Posted October 18, 2018 Share Posted October 18, 2018 MERCI En Version 1.6 j'ai essayé et ça fonctionne ( ligne différente mais avec Ctrl + F on trouve vite) et pour l'instant les premiers tests sont ok. Link to comment Share on other sites More sharing options...
Talas Posted May 15, 2019 Share Posted May 15, 2019 Bonjour, je rencontre le même problème avec ma boutique Prestashop 1.7.5. J'ai modifié sans succès le fichier classe/cart.php. Existe-t-il une solution pour résoudre ce problème dans la dernière version de Prestashop ? Link to comment Share on other sites More sharing options...
Talas Posted May 20, 2019 Share Posted May 20, 2019 Bonjour, j'utilise Prestashop 1.7.5. J'ai essayé de modifier cart.php comme indiqué plus haut, mais cela ne m'a pas aidé. Quelqu'un a-t-il une solution ? Link to comment Share on other sites More sharing options...
MattAmibis Posted May 24, 2019 Share Posted May 24, 2019 On 2/19/2014 at 8:14 AM, jd440 said: Je crois avoir trouvé la solution. Dans classe/cart.php L2710 en remplacant $shipping_cost += $carrier->getDeliveryPriceByPrice($order_total, $id_zone, (int)$this->id_currency); part $shipping_cost += $carrier->getDeliveryPriceByPrice(($orderTotalwithDiscounts?$orderTotalwithDiscounts:$order_total), $id_zone, (int)$this->id_currency); Il me reste encore des vérifs à faire. mais dans ce cas il calcul le shipping à partir du total avec la réduction Merci. Pour moi c'est oK. Le total avant remise depassait le seuil du franco donc le port etait gratuit alors que le total apres remise etait sous le franco. Je perdais le port a chaque fois. La modification ( sous 1.6.1.4 c'est vers la ligne 2900) est nikel. Merci d'avoir partagé. Link to comment Share on other sites More sharing options...
Asu34 Posted June 8, 2019 Share Posted June 8, 2019 Bonjour avez-vous trouver une solution pour PS 1.7(.5) ? Merci Link to comment Share on other sites More sharing options...
Talas Posted June 8, 2019 Share Posted June 8, 2019 24 minutes ago, Ric34 said: Bonjour avez-vous trouver une solution pour PS 1.7(.5) ? Merci Nous avons trouvé une solution à notre problème. Nous avons acheté un module qui permet de résoudre le problème. Link to comment Share on other sites More sharing options...
Asu34 Posted June 8, 2019 Share Posted June 8, 2019 (edited) Ah ok. Je souhaitais ne pas passer par un module mais je veux bien le lien du votre si jamais je ne trouvais pas de solution. Merci Edited June 8, 2019 by Ric34 (see edit history) Link to comment Share on other sites More sharing options...
Talas Posted June 9, 2019 Share Posted June 9, 2019 On 6/8/2019 at 3:08 PM, Ric34 said: Ah ok. Je souhaitais ne pas passer par un module mais je veux bien le lien du votre si jamais je ne trouvais pas de solution. Merci Bonjour, voici le lien vers le module que nous installé sur notre Prestashop 1.7.5.0 : https://addons.prestashop.com/fr/frais-de-port/26428-frais-d-expedition-sans-regles-de-panier-d-achat-rabais.html Link to comment Share on other sites More sharing options...
adri87 Posted August 29, 2019 Share Posted August 29, 2019 Bonjour, Il y a un cas particulier qui n'est pas géré par la solution proposée par jd440. La solution fonctionne parfaitement en 1.6 (très exactement 1.6.1.15) sauf dans un seul cas : si le client utilise un avoir (via un code de réduction) qui ramène sa commande à 0 € ET si le montant initial du panier (avant l'application du code) était supérieur au montant à partir duquel les frais de ports sont offerts, dans ce cas les frais de ports seront offerts à tort malgré le correctif de jd440. Pour pallier à ce problème, je propose de modifier ça par la ligne suivante : $shipping_cost += $carrier->getDeliveryPriceByPrice(($orderTotalwithDiscounts?$orderTotalwithDiscounts:($orderTotalwithDiscounts == 0?1:$order_total)), $id_zone, (int)$this->id_currency); Concrètement, j'indique juste que si le montant du panier est à 0, il faut que le transporteur utilise en guise de frais de port le montant de la tranche correspondant au montant de 1 €. A+ Link to comment Share on other sites More sharing options...
Farris27 Posted December 16, 2019 Share Posted December 16, 2019 On 6/8/2019 at 3:08 PM, Ric34 said: Ah ok. Je souhaitais ne pas passer par un module mais je veux bien le lien du votre si jamais je ne trouvais pas de solution. Merci Bonjour, avez -vous réussi sans achat de module ? Link to comment Share on other sites More sharing options...
Asu34 Posted December 16, 2019 Share Posted December 16, 2019 Bonjour, non désolé je suis passé par l'achat du module qui fait le job correctement. 1 Link to comment Share on other sites More sharing options...
Farris27 Posted December 16, 2019 Share Posted December 16, 2019 Merci Link to comment Share on other sites More sharing options...
sillusion Posted December 18, 2019 Share Posted December 18, 2019 (edited) Hello les devs ! J'ai essayé d'utiliser votre modif de code dans un override de la classe Cart.php, dans un PS 1.6.1.7 Ma logique est assez similaire, à la différence que le calcul des frais de port se fait sur des tranches de poids, et qu'ils sont offerts au dessus de 250€ d'achat. Je voudrais faire en sorte que les frais de port offerts ne le soient que pour les commandes où le total remisé est supérieur à 250€. Mon "frais de port offert" est une règle panier, pour pouvoir offrir vers la France uniquement. J'ai essayé de glisser ce bout de code à peu à tous les endroits où j'avais une ligne avec $shipping_cost += mais à aucun moment elle ne s'applique. if($orderTotalwithDiscounts < 250){ // alors applique ce qui était prévu comme $shipping_cost += $shipping_cost += $carrier->getDeliveryPriceByWeight($this->getTotalWeight($product_list), $id_zone); } else { $shipping_cost += 0; } Evidemment pour l'action dans le if, j'ai repris les lignes en $shipping_cost += J'ai supprimé le fichier class_index.php à chaque mise à jour. Sauriez-vous m'aider à aller plus loin ? Merci ! Edited December 19, 2019 by sillusion (see edit history) Link to comment Share on other sites More sharing options...
La vie en Rose Posted November 25, 2022 Share Posted November 25, 2022 Le 29/08/2019 à 11:19 AM, adri87 a dit : Bonjour, Il y a un cas particulier qui n'est pas géré par la solution proposée par jd440. La solution fonctionne parfaitement en 1.6 (très exactement 1.6.1.15) sauf dans un seul cas : si le client utilise un avoir (via un code de réduction) qui ramène sa commande à 0 € ET si le montant initial du panier (avant l'application du code) était supérieur au montant à partir duquel les frais de ports sont offerts, dans ce cas les frais de ports seront offerts à tort malgré le correctif de jd440. Pour pallier à ce problème, je propose de modifier ça par la ligne suivante : $shipping_cost += $carrier->getDeliveryPriceByPrice(($orderTotalwithDiscounts?$orderTotalwithDiscounts:($orderTotalwithDiscounts == 0?1:$order_total)), $id_zone, (int)$this->id_currency); Concrètement, j'indique juste que si le montant du panier est à 0, il faut que le transporteur utilise en guise de frais de port le montant de la tranche correspondant au montant de 1 €. A+ Merci beaucoup!!! C'est exactement ce qu'il me fallait et ça devenait vraiment problématique. Les clients ont tendance à cumuler les points fidélité et se faire de gros plaisir. Au moins ils paieront les frais de port maintenant. C'est dingue que ce soit pas le fonctionnement natif, et surtout qu'ils aient pas fait de correctif depuis le temps! En tout cas, sur Presta 1.6.1.24, la solution est validée. 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