Überblick
Das Plugin ermöglicht Kunden, direkt aus dem Warenkorb oder von der Produktdetailseite eine Angebotsanfrage an den Shop-Betreiber zu senden. Der Shop-Betreiber bearbeitet die Anfrage im Admin, kann den Status ändern und über eine integrierte Chat-Funktion mit dem Kunden kommunizieren.
Der gesamte Prozess wird über drei Entities in der Shopware-Datenbank abgebildet und ist vollständig nachvollziehbar. Drei Flow-Builder-Events ermöglichen automatisierte Workflows.
Systemvoraussetzungen
Installation
custom/plugins/BcOfferRequest ablegenphp bin/console cache:clearKonfiguration
Die Plugin-Konfiguration befindet sich unter Erweiterungen > Meine Erweiterungen > BC Angebotsanfragen > Konfiguration (config.xml).
Allgemeine Einstellungen:
Button-Einstellungen:
Formular-Einstellungen:
Funktionen:
E-Mail-Benachrichtigungen:
Funktionen
Angebotsanfrage erstellen
Der Kunde füllt seinen Warenkorb und klickt auf "Angebot anfordern". Die Anfrage (bc_offer_request) enthält alle Warenkorbpositionen, Mengen und optionale Bemerkungen. Ein eigener Storefront-Controller (OfferRequestController) verarbeitet die Anfrage.
Angebotsbearbeitung im Admin
Der Shop-Betreiber sieht die Anfrage im Admin unter dem Modul bc-offer-request. Er kann den Status ändern und über die Chat-Funktion antworten.
Nachrichtenverlauf
Nachrichten (bc_offer_request_message) werden chronologisch gespeichert. Kunden und Admin können direkt über das Angebotsanfrage-Detail kommunizieren.
Angebotshistorie
Kunden sehen im Account-Bereich unter "Angebotsanfragen" ihre gesamte Historie mit Status, Datum und Artikeln.
Events & Hooks
Das Plugin löst drei Flow-Builder-fähige Events aus:
Subscriber:
Flow Builder Events
Alle drei Events sind im Shopware Flow Builder verfügbar:
| Event-Name | Klasse | Beschreibung |
|---|---|---|
| bc_offer_request.created | OfferRequestCreatedEvent | Neue Angebotsanfrage erstellt |
| bc_offer_request.status_changed | OfferRequestStatusChangedEvent | Status geändert |
| bc_offer_request.message_sent | OfferRequestMessageSentEvent | Neue Nachricht gesendet |
E-Mail-Templates
Das Plugin registriert vier E-Mail-Templates über Migrationen. Die Template-Dateien liegen in src/Migration/Fixtures/mails/:
offer_request_created** -- Bestätigung bei neuer Angebotsanfrage
offer_request_status_changed** -- Benachrichtigung bei Statusänderung
offer_request_admin_notification** -- Admin-Benachrichtigung bei neuer Anfrage
offer_request_message_sent** -- Benachrichtigung bei neuer Nachricht
Textbausteine (Snippets)
Storefront-Snippets (src/Resources/snippet/de_DE/bc-offer-request.de-DE.json):
Admin-Snippets (src/Resources/app/administration/src/module/bc-offer-request/snippet/de-DE.json, en-GB.json)
Datenbank-Tabellen
Das Plugin erstellt folgende Datenbank-Tabellen über 3 Migrationen:
| Tabelle | Entity-Name | Beschreibung |
|---|---|---|
| bc_offer_request | bc_offer_request | Angebotsanfragen mit Status, Kundenbezug |
| bc_offer_request_item | bc_offer_request_item | Positionen einer Angebotsanfrage |
| bc_offer_request_message | bc_offer_request_message | Nachrichten/Chat zu einer Anfrage |
Migrationen:
Admin-Integration
Das Plugin registriert ein Admin-Modul bc-offer-request (Farbe: #ff6b35, Icon: regular-file-text):
Seiten:
Detail-Views (Tabs):
Die Admin-Module liegen unter:
src/Resources/app/administration/src/module/bc-offer-request/Storefront-Integration
Das Plugin erweitert den Storefront um:
Angebotsanfrage-Seiten (src/Resources/views/storefront/page/offer-request/):
Account-Seiten (src/Resources/views/storefront/page/account/offer-request/):