Jump to content

[Partiellement résolu] Déclinaison d'un produit en poids/prix


Recommended Posts

Bonjour,

J'utilise actuellement le couple joomlà/virtuemart pour mon site (www.eyhartzea.com).

Voulant intégrer la livraison en point relais de chronopost (pas de module pour virtuemart), j'ai commencé à regarder prestashop.

Mais il me semble qu'il n'est pas possible d'avoir pour un produit vendu au Kg des déclinaisons de poids disponibles dont le stock est géré (foie gras, jambons, fromages...).

J'ai mis en pièce jointe la présentation actuelle pour un tel produit.

Est-ce que cela est faisable sur prestashop?

 

Merci

post-664749-0-05041200-1376341123_thumb.jpg

Edited by eyhartz (see edit history)
Link to comment
Share on other sites

Bonjour,

 

 

Il est tout à fait possible d'avoir ce type de gestion nativement avec Prestashop.

Vous créez votre produit "foie gras mi-cuit" et ensuite vous créez les différentes déclinaisons de poid auxquelles vous affectez un prix et un stock.

 

N'hésitez pas à parcourir la doc utilisateur qui explique la plupart des possibilités de base:

http://doc.prestashop.com/pages/viewpage.action?pageId=11272378#Ajouterdesproduitsetdescat%C3%A9goriesdeproduits-Ajouterdesd%C3%A9clinaisonsduproduit

Link to comment
Share on other sites

Merci de ta réponse, Julien.

 

OK pour les différentes déclinaisons de poids et les quantités associées. Mais le prix ne peut pas être changé, uniquement une majoration ou une minoration du prix de base qui en l’occurrence est le prix au kg.

 

La documentation le précise bien :

 

"Vous devriez voir les attributs comme les propriétés du produit qui sont susceptibles de changer entre chaque déclinaison, tout en conservant le même nom de produit : couleur, capacité, taille, poids, etc. Vous pouvez utiliser n'importe quel détail qui change entre les versions d'un même produit, sauf le prix."

 

J'ai quand même essayé de jouer avec la majoration ou la minoration.

Ex : prix au kg 99 E ; pour un poids de 200 g, je mets une minoration du prix de 79.20 E TTC, ce qui donne bien un prix de 19.80 E.

Mais en front end, quand on choisit ce poids, le prix au kg passe aussi à 19.80 E.

 

J'ai peut être loupé quelque chose, mais là, je ne vois pas.

 

Encore merci de votre aide.

Link to comment
Share on other sites

Pour reprendre votre exemple de foie gras mi-cuit, je pense que vous devriez créer votre 1er produit de 200g puis faire vos 6 déclinaisons en majorant les prix. Ensuite vous n'avez qu'à indiquez le prix au Kg dans le descriptif du produit, dans les caratéristiques ou alors ajouter un champs directement sur la fiche produit (un peu de dev sera necessaire pour cette solution).

Link to comment
Share on other sites

Bonjour,

 

J'ai fait comme l'a indiqué Julien64, avec un produit de base à 200 g.

Tout est OK, sauf le prix au kg qui garde la même proportion quand on change de déclinaison : l'augmentation du prix de la pièce, multiplié par 5.

 

Pourtant, pour chaque déclinaison, le champ "Impact sur le prix à l'unité :" est bien à "Aucun" et le champ suivant "de" : 0.00 € / kg

 

On peut bien forcer le prix au kg à ne pas bouger en mettant un impact de réduction sur ce champ "prix au kg" de 5 fois par rapport à l'impact d'augmentation sur la pièce.

Mais c'est assez pénible à faire.

 

Est-ce que quelqu'un aurait une idée du fichier qu'il faut modifier pour que le prix au kg respecte le paramétrage enregistré?

 

Merci

Edited by eyhartz (see edit history)
Link to comment
Share on other sites

Bonjour,

 

moi, lorsque je lit vos configuration je ne comprends rien du tout.

 

Le prix pour un kilo est 10,00 euro

après vous faites les différences de prix ou en partant de 200g vous faite la multiplication vous même et hop vous générez les déclinaison et cela doit fonctionner.

Link to comment
Share on other sites

Bonjour,

 

ah punaise faut le faire pour le comprendre.

 

Donc lorsque vous mettez la bonne config pour vos poids et ainsi de suite si vous avez défini un poids au kg il sera multiplié, ou tout du moins modifié par le changement de déclinaison alors que vous avez demandé à n'avoir aucun n'impacte dessus et le pire c'est que si vous faites tout en TTC, ben ce champs lui reste bêtement en HT.

 

en gros cela marche sur la tête et je m’excuse de ne pas avoir compris plus tôt.

Link to comment
Share on other sites

Bonsoir,

 

Excusez moi, c'est vrai qu'a relire mon post, il est assez obscur.

J'aurais du mettre des captures d'écran pour le clarifier.

 

Pour préciser, si le prix est de 99 / kg et que l'on paramètre le produit de base à 200 g (19.80 €) : pour un produit qui fait 400 g, les paramètres de la déclinaison sont :

 

"Impact sur le prix" : Augmentation de : 18.77 HT soit : 19.80 TTC. Prix final : 39.60

 

Si on laisse les paramètres "Impact sur le prix à l'unité :" à : Aucun de 0.00 / kg

 

alors le prix au kg affiché en choisissant cette déclinaison est de : 198.00 / kg

 

Si on revient sur ces paramètres " "Impact sur le prix à l'unité :" à : Réduction de 99.00 / kg, on remet le prix au kg affiché à 99

 

Mais tant qu'a faire, il vaut mieux corriger ce bug.

 

Merci de votre aide

Link to comment
Share on other sites

Bon, après avoir cherché un peu, j'ai trouvé le fichier qui modifie le prix unitaire :

 

/themes/default/js/product.js.

 

 

Comme je n'y connait rien en javascript, j'ai fait une modif à la sauvage : j'ai commenté la ligne 405 :

 

newUnitPrice = (productPriceDisplay / parseFloat(productUnitPriceRatio)) + selectedCombination['unit_price'];

 

Cela empêche que le prix unitaire soit modifié quel que soit le paramètrage.

 

 

Moi cela me va bien, car je n'ai pas besoin que le prix unitaire change, mais ce serait bien que quelqu'un qui connait le fonctionnement de la bête fasse une correction propre.

Link to comment
Share on other sites

Bonjour,

 

Finalement, la modif à la hussarde décrite plus haut fait planter la "thicbox" et l'affichage des catégories.

 

Il va falloir se pencher sur une correction plus orthodoxe...

 

Pour illustrer le problème : sur cet essai en ligne, le produit "foie gras semi-conserve" a un prix unitaire au kg affiché.

Si on choisit des déclinaisons autres que celle de base, le prix unitaire au kg est modifié, alors que le paramétrage de la déclinaison indique bien qu'il n'y a aucune modification de ce prix unitaire.

Edited by eyhartz (see edit history)
Link to comment
Share on other sites

Bonjour,

 

 

Effectivement je pense que ça plante surement parce que le script à besoin de newUnitPrice ensuite donc si vous commentez la ligne il ne la trouve pas.

Peut être qu'en remplaçant la ligne par

newUnitPrice = productPriceDisplay / parseFloat(productUnitPriceRatio);

ça fonctionnera. La variable sera présente mais aucun calcul ne sera effectué en fonction de la déclinaison choisie... à tester.

 

Sinon l'ajout d'un champs en admin pour rentrer le prix au Kg serait une autre solution.

Link to comment
Share on other sites

Bonjour Julien,

 

Merci de votre disponibilité.

 

J'ai essayé d'appliquer votre proposition, mais cela n'a eu aucune incidence.

Je pensais qu'il y avait un problème de cache persistant, mais à force de modifier cette ligne, je me rend compte que la variable "selectedCombination['unit_price']" a systématiquement pour valeur 0.

Si on la remplace par un chiffre en dur, le prix unitaire est bien modifié.

 

Votre seconde proposition semble donc être la voie à suivre, mais je n'ai pas trouvé dans l'admin l'endroit où l'on peut créer des champs personnalisés pour la fiche produit.

Il y a bien les caractéristiques, mais elles sont affichées dans l'onglet "Fiche technique" qu'il faut ouvrir pour les consulter

 

Merci

Edited by eyhartz (see edit history)
Link to comment
Share on other sites

Effectivement ma solution nécessite un peu de développement pour créer ce champs. En gros il faut dupliquer par exemple le champs référence et surcharger les contrôleurs admin et front relatifs au product. Il faut aussi ajouter un champs en base de donnée dans la table product et enfin récupérer la valeur sur le TPL.

 

Sinon il y a plus simple si vous n'utilisez pas les caractéristiques produits. Vous créez une caractéristique "prix au kg" et vous modifier votre TPL pour avoir l'affichage souhaité.

Link to comment
Share on other sites

Merci Julien,

 

J'avais édité mon dernier message pour justement évoquer le possibilité d'utiliser les caractéristiques : mais comme vous le dites, il faudrait toucher au TPL pour l'afficher directement dans la fiche plutôt que dans l'onglet "fiche technique"

Link to comment
Share on other sites

Ah oui effectivement je n'avais pas vu que vous en parliez déjà.

Ça me semble être le meilleur compromis si vous n'utilisez pas les caractéristiques ailleurs pour d'autres produits. Modifier l'affichage pour faire apparaitre les caractéristiques directement sur la fiche produit n'est vraiment pas compliqué, faites signe si vous avez besoin d'aide ;)

Link to comment
Share on other sites

  • 9 months later...

<bonjour,

votre sujet m'intéresse fortement car je voudrais créer une boutique de légumes en ligne et j'ai ce problème de prix au kg

pourriez-vous m'indiquer la démarche à effectuer pour régler ce problème (j'ai regardé dans product.tpl, mais je ne vois pas où rajouter ce code)

merci d'avance.

Link to comment
Share on other sites

  • 1 month later...

Effectivement ma solution nécessite un peu de développement pour créer ce champs. En gros il faut dupliquer par exemple le champs référence et surcharger les contrôleurs admin et front relatifs au product. Il faut aussi ajouter un champs en base de donnée dans la table product et enfin récupérer la valeur sur le TPL.

 

Sinon il y a plus simple si vous n'utilisez pas les caractéristiques produits. Vous créez une caractéristique "prix au kg" et vous modifier votre TPL pour avoir l'affichage souhaité.

 

Euh... Sauf erreur, il me semble que si, dans Prestashop, au niveau des déclinaisons, on rajoutait les impacts "Multiplication et Division" en plus des actuels "Augmentation et Diminution", la valeur donnée d'impact sur le prix deviendrait alors un facteur par lequel multiplier ou diviser le prix HT ou TTC de référence.

 

Me trompe-je ?

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