schafferer/device-service-bundle

show available service options for a device

1.5.0 2017-02-08 11:58 UTC

README

Jedes von Schafferer ausgelieferte Gerät hat eine eindeutige Gerätenummer und einen QR-Code, der auf http://q.schafferer.de/CODE auflöst. q.schafferer.de wurden so eingerichtet, dass der Besucher automatisch auf den Shop weitergeleitet wird. Dort wird der Code über die WaWi in das Gerät übersetzt.

Anhand dieser Information werden dem Aufrufer verschiedene Funktionen zur Verfügung gestellt.

Installation

Bitte Vorlagen für die folgenden Message-Templates anlegen:

  • /objectviews/TCMSMessageManagerMessage/device-service-request-success.view.php
  • /objectviews/TCMSMessageManagerMessage/device-service-request-service-offer-success.view.php

E-Mail Vorlagen pflegen:

  • Gerät: Kundendienst anfordern (#34465) [schafferer_device_service.device_service_request]
  • Gerät: Notdienst Kundendienst anfordern (#34465) [schafferer_device_service.device_emergency_service_request]
  • Wartungs-Angebot Anfordern (Kundenbestätitung - #34469) [schafferer_device_service.request_service_offer_customer]
  • Gerät: Wartungs-Angebot Anfordern (Kundenservice - #34469) [schafferer_device_service.request_service_offer_customer_service]

  • Das Modul MTBreadcrumb muss von \Schafferer\DeviceServiceBundle\Bridge\Chameleon\Breadcrumb\BreadcrumbModule erben

  • Das Modul MTPageMeta muss von \Schafferer\DeviceServiceBundle\Bridge\Chameleon\Canonical\PageMetaModule erben

URL Auflösung

Über einen RouteCollectionGenerator wird anhand der Systemseite "schafferer_device_service.service_options" eine Route auf SYSTEMSEITE/code definiert. Die Route spricht den Controller "schafferer_device_service.service_options_controller:showOptions an, und übergibt diesem dem code für das Gerät. Der Controller lädt die Device-Details von der Wawi und rendert die Systemseite schafferer_device_service.service_options. Sollte der Code nicht aufgelöst werden können, wirft der Controller eine 404.

Routes die durch das Modul angelegt werden:

+-------------------------------------------------+--------------+---------------------------------------------------------+ | Route | Parameter | Kommentar | +===============================================+=+==============+=========================================================+ | schafferer_device_service_show_options | [deviceCode] | Device Service Übersicht für eine Gerätenummer (#34463) | +-------------------------------------------------+--------------+---------------------------------------------------------+ | schafferer_device_service_request_service | [deviceCode] | Device Service: Kundenservice Anfordern (#34463) | +-------------------------------------------------+--------------+---------------------------------------------------------+ | schafferer_device_service_buy_accessories | [deviceCode] | Device Service: Zubehör kaufen (#34466) | +-------------------------------------------------+--------------+---------------------------------------------------------+ | schafferer_device_service_request_service_offer | [deviceCode] | Device Service: Wartungs-Angebot Anfordern (#34469) | +-------------------------------------------------+--------------+---------------------------------------------------------+

Systemseiten +----------------------------------------------------+---------------------------------------------------------+ | Code | Anmerkung | +====================================================+=========================================================+ | schafferer_device_service.service_options | Device Service Übersicht für eine Gerätenummer (#34463) | +----------------------------------------------------+---------------------------------------------------------+ | schafferer_device_service.request_customer_service | Device Service: Kundenservice Anfordern (#34463) | +----------------------------------------------------+---------------------------------------------------------+ | schafferer_device_service.buy_accessories | Device Service: Zubehör kaufen (#34466) | +----------------------------------------------------+---------------------------------------------------------+ | schafferer_device_service.request_service_offer | Device Service: Wartungs-Angebot Anfordern (#34469) | +----------------------------------------------------+---------------------------------------------------------+

Sevice Optionen

Die möglichen Service Optionen werden im Hauptmenü konfiguriert. Für jede Service Option muss ein symfony Service definiert werden der das Interface Schafferer\DeviceService\Interfaces\DeviceServiceOptionInterface implementiert und mit "schafferer_device_service.service_option" getagged ist.

Kundendienst Anfordern

Die angebotenen Optionen sind aktuell fest in \Schafferer\DeviceServiceBundle\Bridge\Chameleon\DataAccess\DeviceErrorTypeDefinitionProvider hinterlegt.