Rezervace na prodejně
Rozšíření, které umožňuje zákazníkům rezervovat produkty na prodejně. Rezervace je možné vytvářet a spravovat v administraci e-shopu, případně přes rest API.
Příklad konfigurace
<inStoreReservation> <numberExpression>'E' + dateFormat('yyyy') + '-' + numberSeq(dateFormat('yyyy'),4)</numberExpression> <expiration>1y</expiration> <notifyBeforeExpiration>7d</notifyBeforeExpiration> <stateThatReleasesReservation>processing</stateThatReleasesReservation> <catalogSpecific> <catalogCode/> <numberExpression>'E' + dateFormat('yyyy') + '-' + numberSeq(dateFormat('yyyy'),4)</numberExpression> <expiration>1y</expiration> <notifyBeforeExpiration>7d</notifyBeforeExpiration> <stateThatReleasesReservation>processing</stateThatReleasesReservation> </catalogSpecific></inStoreReservation>
Popis
inStoreReservation
Povolení a konfigurace rezervací na prodejně.
Pokud není uvedeno, rezervace na prodejně není povolena.
Pokud je povoleno, pro sklady je možné nastavit, zda je rezervace na prodejně povolena a případně doplnit související informace, jako je adresa prodejny pro vyzvednutí zboží, otevírací doba prodejny, atd.
Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| numberExpression | Výraz (SPeL), který definuje, jakým způsobem bude generováno číslo rezervace. Rezervační systém je povolen pouze v případě, že je tato hodnota specifikovaná. Tedy pokud je tato hodnota specifikována pouze pro některé katalogy, tak rezervační systém bude aktivní pouze pro tyto katalogy. Dostupné parametry ve SPeLu jsou:
Například výraz "'E' + dateFormat('yyyy') + '-' + nextNumber(dateFormat('yyyy'),4)" vygeneruje kód (pro rok 2022) "E2022-0001", "E2022-0002" atd. | String |
|
|
| expiration | Časový interval, po kterém se rezervace automaticky uvolní. Pokud je Časový interval se počítá od data, kdy byla rezervace připravena k vyzvednutí. |
|
| |
| notifyBeforeExpiration | Časový interval, ve kterém se mají odeslat upozornění na vypršení platnosti rezervace. Pokud je Časový interval se počítá od data, kdy byla rezervace připravena k vyzvednutí. |
|
| |
| stateThatReleasesReservation | Stav, který uvolní rezervaci. Pokud je rezervace v tomto stavu, tak je možné uvolnit rezervaci. Pokud je | String |
|
|
| catalogSpecific | Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde. |
|
|
E-mail notifikace
Pro rezervace je možné zapnout mailové notifikace. Tyto notifikace se zapínají pomocí elementu <mailing> v rámci
konfigurace rezervací (<inStoreReservation/>). Další nastavení mailingu je popsáno zde.
Příklad:
<inStoreReservation> <mailing/></inStoreReservation>V základu jsou připraveny následující notifikace:
- vytvoření rezervace,
- zrušení rezervace,
- informace, že rezervace je připravena k vyzvednutí,
- připomenutí, že je rezervace připravena k vyzvednutí.
Tyto výchozí notifikaci vyžadují registraci lokalizačního balíčku do mail-modulu.
Konkrétně je nutné přidat do souboru config/module-edeeshop/include/module-mail-localization.xml následující záznam:
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE sitemap SYSTEM "cps.dtd"><sitemap> <bundle>classpath:/META-INF/lib_eshop_reservation/mail/mail-reservation</bundle> <!-- other bundles --></sitemap>Workflow rezervací
Stavy rezervací jsou řízeny pomocí workflow. Pro standardní rezervace je připraveno výchozí workflow, není tedy nutné nic konfigurovat.
V případě potřeby změny je možné změnit konfiguraci workflow pomocí vlastnosti reservation.workflow.config. Výchozí definice
workflow je definováno v souboru META-INF/lib_eshop_reservation/workflow/reservationStateWorkflow.xml.
Pomocí reservation.workflow.definitionId je zase možné definovat, které konkrétní workflow z konfigurace se má použít.
Výchozí hodnota je "defaultReservationFlow".
