Hallo,
ich bin noch sehr frisch in Shopware und erst recht in SQL.
Meine Idee ist es eine Kundenkarte a’la Amazon Prime umzusetzen um natürlich die Kunden etwas an unseren Shop zu binden.
Der erste Teil, welcher nur den kostenlosen Versand in der Kasse anzeigt, funktioniert auch schon.
Jetzt habe ich noch das Problem mit, wie lange soll die Kundenkarte gültig sein.
Dafür können die Kunden einen Artikel „Kundenkarte“ kaufen, der in dieser Bestellung alles versandkostenfrei macht (geht ja mit dem Häkchen bei versandkostenfrei).
Ab diesem Datum soll die Kundenkarte für 1 Jahr (365 Tage) laufen und dann automatisch deaktiviert werden.
Dafür habe ich 2 Freitextfelder bei Kunde (s_user_attributes) angelegt und lasse es natürlich im Backend anzeigen.
Kundenkarte: customer_card (als checkbox - muss vorerst von Hand aktiviert werden)
Kaufdatum Kundenkarte: customer_card_buydate (als Datum - muss vorerst von Hand eingetragen werden)
Jetzt habe ich erst mal bei erweiterte SQL Abfrage im Versandkostenmodul (Grundeinstellungen) folgendes angehängt:
, MAX((SELECT customer_card FROM s_user_attributes WHERE userID = :userId)) AS customer_card
In der Versandkostenverwaltung habe ich eine neue Versandart erstellt: kostenloser Versand (Kundenkarte)
Versandkostenberechnung nach : eigene Berechnung
Versandkostenfrei ab: 0,01 €
Im Tab Versandkosten:
Von: 0
Bis: beliebig
Faktor: 100%
Im Tab eigene Einstellungen:
eigene Bedingungen: customer_card
Bei den anderen Versandkosten habe ich in das Feld „eigene Bedingungen:“ im eigene Einstellungen Tab
!customer_card eingetragen
Mit diesen Einstellungen funktioniert es, dass wenn ich im Kundenprofil eines Kunden das Häkchen bei Kundenkarte setze, nur noch die Versandkosten „kostenloser Versand (Kundenkarte)“ angezeigt wird.
Soweit bin ich schon sehr zufrieden.
Nun möchte ich aber, dass wenn ich ein Datum in das Feld "Kaufdatum Kundenkarte"einfüge, es die Zahlungsart 365 Tage zulässt. Danach ist die „Abfrage“ ja nicht mehr richtig und zeigt ab diesem Datum wieder die normalen Versandgebühren an (so meine Idee).
Der Kunde kann dann einfach wieder den Artikel „Kundenkarte“ kaufen und das spiel beginnt von vorne.
Kann mir einer einen Tipp geben wie ich das unter „eigene Berechnung“ abfrage?
Leider bin ich noch nicht so weit mit den Abfragen in Shopware.
Vielleicht liege ich ja auch komplett falsch und man kann das leichter umsetzen.
Ein Plugin habe ich jedoch nicht gefunden.
Bin für jede Hilfe Dankbar.
Grüße
Tobias