Page 1 sur 1

Livraison selon groupe de client

MessagePublié: 17 Mars 2012, 10:51
par Chris
Bonjour,

Pour expliciter mon sujet, un point sur ma situation et mon besoin :
- Je fabrique des produits que je vends par correspondance
- Je n'ai pas de magasin, mon "usine/magasin" est mon domicile
- Lors de la vente de produits, j'ajoute un frais de port.

Je voudrais supprimer ces frais de port pour certains clients (bien identifié car connu personnellement), qui pourraient venir retirer leurs achats à mon domicile (c'est pourquoi je veux limiter à certaines personnes la possibilité d'y venir puisque ce n'est pas une boutique permanente).

- Connaissez-vous un module qui fait ça ?
- Non, ce n'est pas grave, je peux coder un peu. Mais comme je ne suis pas expert, j'aurais besoin d'aide. Par exemple un module qui intègre la gestion des groupes clients afin d'y puiser de l'inspiration. Une doc ou des conseils car je suis un peu perdu.

Merci d'avance pour vos réponses.


PS : Bien sur, si je code un truc, je le mettrai à disposition.

A bientôt.
Chris.

Re: Livraison selon groupe de client

MessagePublié: 17 Mars 2012, 11:53
par Imaxine
Bonjour,

Ce sujet sur le forum US ou celui-ci, devrait t’intéresser.

Sinon, il existe ce module.

Re: Livraison selon groupe de client

MessagePublié: 17 Mars 2012, 12:44
par Chris
Merci beaucoup,

en plus, un peu écœuré de n'avoir pas trouvé sur le forum en anglais (mauvais mot-clef ou pas au bon endroit : je ne sais plus :oops: ).

Je suis ces liens et vous tiens au courant de mes progrès et résultats. Je vous dirais en français comment j'ai fait.

Comme d'habitude : Imaxine a la solution. Bravo et merci ;)

Re: Livraison selon groupe de client

MessagePublié: 17 Mars 2012, 14:35
par Chris
Après avoir consulté les liens fourni par Imaxine, voici donc la solution que j'ai adoptée (avant de mettre un paramétrage dans l'admin).

1 - Créer un groupe client particulier (par exemple : "retrait_magasin")
2 - Éditer le fichier \catalog\model\shipping\pickup.php. C'est lui qui correspond à la partie "livraison / retrait au magasin"
3 - Changer le code du module comme fait ci-dessous
Code: Tout sélectionner
       // Debut de modification
      
       // Mise en commentaire du code original pour mettre le test suivant (on peut effacer ce code)
      /*
      if (!$this->config->get('pickup_geo_zone_id')) {
         $status = true;
      } elseif ($query->num_rows) {
         $status = true;
      } else {
         $status = false;
      }
      */
      // Fin de mise en commentaire du code original
            
      /* Test pour savoir si cela s'applique au groupe de client */
      $customer_group_id = $this->customer->getCustomerGroupId();
   
        // si le client fait partie du groupe numero 9 (nouveau groupe specifiquement cree)
      if($customer_group_id == 9 ){
         if (!$this->config->get('pickup_geo_zone_id')) {
            $status = true;
         } elseif ($query->num_rows) {
            $status = true;
         } else {
            $status = false;
         }
      } else  {
         $status = false;
      }
      
      // Fin de la modification du fichier


Une petite remarque pour trouver le numéro du groupe de client.
On trouve le numéro du groupe client en allant dans la partie administration et en ouvrant le groupe client
Le navigateur indique alors une adresse du genre :
/admin/index.php?route=sale/customer_group/update&token=eeaf445ea8195acaa8a2ac1cfa8fa31c&customer_group_id=9
Le groupe client est donc 9

C'est cette valeur qu'il faut mettre dans la modification.

Amélioration
Bien sur, cette solution fonctionne mais n'est pas très "propre". Il serait préférable d'intégrer dans la partie admin / livraison / retrait au magasin, une section permettant de sélectionner les groupes de clients auxquels peut s'appliquer ce mode de livraison. Et de modifier légèrement le test dans le fichier .php.


Je vous posterais ça, quand je l'aurai fait.
Merci encore à Imaxine pour ce lien qui m'a donné la solution.

Re: Livraison selon groupe de client

MessagePublié: 17 Mars 2012, 15:31
par Imaxine
Chris a écrit:Je vous posterais ça, quand je l'aurai fait.
Etant donné que cela touche le fichier initial /catalog/model/shipping/pickup.php, cela serait judicieux de faire cette modification en fichier XML pour vQmod ?

Re: Livraison selon groupe de client

MessagePublié: 17 Mars 2012, 21:02
par Chris
Bonsoir,

Ok, j'ai compris, il ne me reste plus qu'a comprendre le fonctionnement de VQmod.
Promis, je m'y mets et vous donnerais le résultat dans le forum qui est consacré à VQmod.

A bientôt

PS : Soyez pas trop pressé, faut que j'apprenne ;)

Re: Livraison selon groupe de client

MessagePublié: 18 Mars 2012, 00:12
par Chris
Finalement, c'est plus simple que ce que je croyais. J'ai donc mis le xml pour vqmod à disposition (il suffira de changer le n° de rubrique)

J'espère l'avoir posté au bon endroit sinon Imaxine devra encore corriger mes erreurs.

Re: Livraison selon groupe de client

MessagePublié: 18 Fév 2013, 02:13
par Pamella
Chris a écrit:Finalement, c'est plus simple que ce que je croyais. J'ai donc mis le xml pour vqmod à disposition (il suffira de changer le n° de rubrique)

J'espère l'avoir posté au bon endroit sinon Imaxine devra encore corriger mes erreurs.


Merci beaucoup mais je suis fatiguée ;-) ou bien ce fichier xml n'est pas dispo? ici...

Re: Livraison selon groupe de client

MessagePublié: 18 Fév 2013, 02:26
par Imaxine
Je pense que ce n'est pas toi qui soit fatigué. Ce serais plutôt lui, qui l'était en oubliant de le publier. Il reviendras bien un jour pour le faire (Espoir, espoir....!. Car cela fait déjà 7 mois qu'il n'est pas revenu nous voir !). :roll:

Re: Livraison selon groupe de client

MessagePublié: 18 Fév 2013, 22:09
par Pamella
En tout cas dès plus instructif ce petit bout de code, question de limiter une méthode à un groupe de client donné ;-) à défaut d'avoir cette option directement dispo dans l'admin