Zugriff auf selbst generierte Medien über den MediaService aus dem Shopware Backend

Hallo zusammen,

wir haben ein Plugin entwickelt um Gutscheine zu erzeugen und diese per Email zu verschicken.

Die Gutscheine werden mit Hilfe des MediaService erzeugt und unter media/pdf/…/gutschein1.pdf abgelegt. Kann man aus dem Backend irgendwie auf die erzeugten PDF´s zugreifen?

Wir möchten dem Betreiber des Shops ermöglichen sich die Gutscheine anzusehen bzw. im Sonderfall erneut auszudrucken bzw. erneut zu versenden.

Leider konnte ich weder in der Doku noch im Forum eine Antwort auf meine Frage finden.

 

Klar. Dazu ein Backend Plug-In erstellen und die Backend-API nutzen - sprich die Darstellung nicht über ext.js sondern z.B. Bootstrap. mpdf ist als Bibliothek in Shopware integriert und welche Datei es sein soll wisst ihr ja schon. 

Danke für die schnelle Antwort!

Ohne eigenes Plugin geht es nicht?

Ich hab zwar schon ein BackendPlugin (mit ExtJs) und mehrere FE-Plugins geschrieben, weiß aber grad nicht genau, wie gemeint ist ein Backend-Plugin ohne extjs zu schreiben?

Hier wäre ich noch um ein bisschen Hilfestellung dankbar!

Hallo,

 

das ist kein Backend-Plugin und schon gar nicht die Backend-API. API ist ein eigenes Modul, genauso wie Frontend und das Backend. BestShopPossible meinte, dass Du dafür die REST API nutzen sollst.

 

Ich verstehe aber generall das Vorhaben nicht, bzw. den Sinn des Plugins: Gutscheine gibt es doch ohnehin schon in Shopware. Diese können auch per E-Mail versendet werden. Der Kunde erhält zwar dann nur einen Gutschein-Code, aber die prinzipielle Technik ist doch schon vorhanden.

Selbst Gutscheine als Geschenk sind möglich. Diese müssten dann halt als Artikel im Shop angelegt werden.

 

Edit:

Du musst natürlich auch eine albumID vergeben für das PDF. Ansonsten wird es vom MediaManager nicht gefunden. Das prinzipielle Anlegen geht über den Service, das setzt aber nicht automatisch die albumID. Der virtuelle Pfad ist völlig unabhängig vom Album indem das PDF liegt. Hatte ich am Anfang auch nicht verstanden, ist aber komischerweise so…

 

MFG

 

derwunner

Zum Vorhaben bzw. den Gründen wieso wir ein eigenes Plugin umsetzen habe ich natürlich nicht alle Details erwähnt, weil es für meine ursprüngliche Frage eig. unrelevant ist.

Wir haben schon unsere Gründe wieso wir es selbst umsetzen (Schnittstellen zu nachgelagerten Kassensystemen, etc.).

Mit Rest-API ist gemeint dass wir es in einem externen Tool zur Verfügung stellen mit dem wir per API auf die Medien zugreifen?

das ist kein Backend-Plugin und schon gar nicht die Backend-API. API ist ein eigenes Modul, genauso wie Frontend und das Backend. BestShopPossible meinte, dass Du dafür die REST API nutzen sollst.

Nein ich meinte nicht die Rest Api sondern die Window.postMessage API

Und ja ich meinte ein Backend Plugin und zwar ein Lightweight backend module

https://developers.shopware.com/developers-guide/lightweight-backend-modules/

 

1 Like

Sind die generierten Codes Kundenspezifisch, also indiviudal Codes? Oder allgemeine Gutscheine?

Es sind kundenspezfische Codes

Wir haben es bei uns so gelöst, dass wir die in Shopware vorhandene PDF-Belegerstellung dafür nutzen. Das erstellte PDF wird dabei der Bestellung hinzugefügt und ist dann wie die Rechnung etc. über das Backend beim Auftrag abrufbar. 

2 Likes