Automatische Zuordnung in eine Kundengruppe

Thema wurde von cengelke, 19. November 2017 erstellt.

  1. cengelke
    cengelke Mitglied
    Registriert seit:
    17. Februar 2013
    Beiträge:
    8
    Danke erhalten:
    0
    Danke vergeben:
    1
    Moin,

    wir würden gerne Kunden bzw, Neukunden in Abhängigkeit von ihrem Firmennamen in eine neue Kundengruppe packen.
    Das ganze soll während der Anmeldung bzw. im Checkout passieren.

    Bsp:

    Firmenname enthält 'GmbH' oder 'AG'
    und Land ist 'DE'

    dann soll der Kunde zur Gruppe "Geschäftskunden Deutschland" gehören.
    --
    Wie geht sowas?
    Hat jemand Beispielcode und kann sagen welche Stelle im Shop relevant ist?

    Vg
     
  2. Anonymous
    Anonymous Erfahrener Benutzer
    Registriert seit:
    14. Juli 2011
    Beiträge:
    1.004
    Danke erhalten:
    74
    Danke vergeben:
    132
    Wir haben dazu die Klasse "CustomerWriteService" überladen.

    Beispiel für eine geänderte Kundenregistrierung:
    ...
    Code:
    public function createNewRegistree(CustomerEmailInterface $email,
                                           CustomerPasswordInterface $password,
                                           DateTime $dateOfBirth,
                                           CustomerVatNumberInterface $vatNumber,
                                           CustomerCallNumberInterface $telephoneNumber,
                                           CustomerCallNumberInterface $faxNumber,
                                           AddressBlockInterface $addressBlock,
                                           KeyValueCollection $addonValues){
                                             
            $newCustomer = parent::createNewRegistree($email, $password, $dateOfBirth, $vatNumber, $telephoneNumber,
                                                      $faxNumber, $addressBlock, $addonValues);
         
                             
     
    if (stripos($newCustomer->getDefaultAddress()->getCompany(), "GmbH") !== false){
            // update kundengruppe
            $newCustomer->setStatusId(7);
            $this->updateCustomer($newCustomer);
     }
    
    if (stripos($newCustomer->getDefaultAddress()->getCompany(), "AG") !== false){
            // update kundengruppe
            $newCustomer->setStatusId(7);
            $this->updateCustomer($newCustomer);
     }
          
    
    
    ...