Incrémentation de quantité de commande

  • Posts: 453
  • Thank you received: 31
  • Hikamarket Multivendor Hikashop Business
2 years 3 months ago #343854

Bonjour,

je n'ai pas trouvé de champ d'incrémentation de quantité de commande, je m'explique.

Si un produit se vend par 2, je mets bien 2 dans le champ product_min_per_order, mais comment puis-je faire pour que la personne n'en commande pas 3 ou 5 ?

Je précise que mon client a ce champ dans son ancien site, je suis donc sensée le reporter (et le faire fonctionner bien sûr), ce champ comporte toutes sortes de valeurs : 2, 10, 30, ..

Merci d'avance :)
Et désolée pour toutes les situation inédites auxquelles nous confrontent ce site.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 3 months ago #343859

Bonjour,

Dans l'option "quantity input" du produit, vous pouvez sélectionner "show select". Ainsi cela utilisera un dropdown à la place d'un champ input avec un incrément égal au product_min_per_order

Please Log in or Create an account to join the conversation.

  • Posts: 453
  • Thank you received: 31
  • Hikamarket Multivendor Hikashop Business
2 years 3 months ago #343867

Bonjour,

c'est déjà une bonne nouvelle, mais mon client a parfois des incréments différents de la valeur du minimum de commande.

J'imagine donc une solution ou j'ajoute un champ supplémentaire (personnalisé ou direct en bdd) et que ce champ soit pris en compte à la place du min_per_order pour l'incrémentation du dropdown, est-ce possible ?

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 3 months ago #343873

Bonjour,

C'est possible, mais il faudrait modifier 3 / 4 fichiers de vues pour récupérer la valeur du champ et l'utiliser à la place du champ min_per_order. Donc pas si simple.

Une alternative, c'est de créer plusieurs prix pour votre produit, avec des "minimum de quantité" différents (un pour chaque choix du dropdown). Ensuite, vous pouvez utiliser le "quantity input" "show select by price".

Please Log in or Create an account to join the conversation.

  • Posts: 453
  • Thank you received: 31
  • Hikamarket Multivendor Hikashop Business
2 years 3 months ago #343973

Bonjour,

merci pour votre réponse,

je vais préférer la solution de modification de vues car le site doit correspondre à ce que notre client souhaite.

Pouvez vous juste me mettre sur la piste en m'indiquant les vues svp ?

Merci d'avance :)

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 3 months ago #343978

Bonjour,

Activez l'option "Display view files" de la configuration HikaShop et regardez les différentes pages où vous avez des dropdown de quantité (page produit, listing des produits peut être ?, passage en caisse, module panier peut être ?, page du panier dans le panneau de contrôle de l'utilisateur peut être ?, et vous aurez à chaque fois la vue indiquée autour du champ quantité.
La plus utilisée, c'est layouts / quantity.php
Dans cette vue, vous avez la ligne:

$r = range($min_quantity, $max_quantity, $min_quantity);
où $min_quantity est utilisé à la fois en premier paramètre pour la valeur minimum du dropdown et en troisième paramètre pour l'incrément entre chaque valeur. Et vous avez normalement accès aux infos du produit dans $this->row

Please Log in or Create an account to join the conversation.

  • Posts: 453
  • Thank you received: 31
  • Hikamarket Multivendor Hikashop Business
2 years 2 months ago #344206

Bonjour,

merci beaucoup pour votre réponse, je vais donc faire ca.

Très bonne journée

Please Log in or Create an account to join the conversation.

  • Posts: 453
  • Thank you received: 31
  • Hikamarket Multivendor Hikashop Business
2 years 2 months ago #344219

Bonjour,

je reviens vers vous après étude de la solution.
Cette solution semble ne concerner que les select, de mon coté j'essaye de faire une incrémentation avec un input texte comme sur l'ancien site de notre client que nous sommes entrain de reprendre (sans le design bien sur) :
www.boyaux-saucisses-epices-conserves.co...CEB19XDIVESSE10-NO30

En bas de cette page se trouve une gille de produits variants, la référence CEB19XDIVESSE10-NO30 est à 30 pour le minimum de commande et 10 en incrémentation, mais l'utilisateur a quand même un champ quantité classique avec des bouton + et -
Dans ce cas l'incrémentation se fait visiblement en js, comment peut t'on aboutir à ce résultat svp ?

J'ai déjà constaté sur plusieurs autres sujet en cherchant une solution que je ne suis pas seul avec ce souci, peut être cela pourrait faire l'objet d'une idée d'évolution ? :cheer:

Merci d'avance

Last edit: 2 years 2 months ago by Minie.

Please Log in or Create an account to join the conversation.

  • Posts: 453
  • Thank you received: 31
  • Hikamarket Multivendor Hikashop Business
2 years 2 months ago #344223

J'ai une solution, je la pose ici pour ceux qui auraient le même besoin

sur le fichier show_quantity.php dans la case show_default_div

Je modifie les lignes 264 et 267 pour mettre mes variables $this->row->incrementation qui correspondent à un champ perso
data-hk-qty-mod="<?php echo $this->row->incrementation; ?>"
et
data-hk-qty-mod="-<?php echo $this->row->incrementation; ?>"

Tout est ok, sauf si une personne atteint le stock max, je reprend l'exemple du produit à 30 min par commande et 10 d'incrémentation, si j'ai 55 de stock, et que je clique sur + je vais avoir : 30, 40, 50, 55 avec un message "pas plus de stock dispo"

Alors que je devrais avoir : 30, 40, 50 avec un message "pas plus de stock dispo"

Il faut donc que je modifie la valeur ligne 260 : data-hk-qty-max="<?php echo $max_quantity; ?>" pour qu'elle soit égale à la valeur max mais dans un intervalle d'incrémentation :

		for($i = $min_quantity; $i < $max_quantity; $i = $i + $this->row->incrementation){
			$qtys[] = $i;
		}
		$max_quantity = end($qtys);

Normalement c'est ok, corrigez moi si je me trompe, mais en tout cas avec mon exemple ca fonctionne.:cheer:

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

Time to create page: 0.068 seconds
Powered by Kunena Forum