Rezervace na prodejně
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.
Zkopírovat odkaz na sekciPříklad konfigurace
1 <inStoreReservation>2 <numberExpression>'E' + dateFormat('yyyy') + '-' + numberSeq(dateFormat('yyyy'),4)</numberExpression>3 <expiration>1y</expiration>4 <notifyBeforeExpiration>7d</notifyBeforeExpiration>5 <stateThatReleasesReservation>processing</stateThatReleasesReservation>6 <catalogSpecific>7 <catalogCode/>8 <numberExpression>'E' + dateFormat('yyyy') + '-' + numberSeq(dateFormat('yyyy'),4)</numberExpression>9 <expiration>1y</expiration>10 <notifyBeforeExpiration>7d</notifyBeforeExpiration>11 <stateThatReleasesReservation>processing</stateThatReleasesReservation>12 </catalogSpecific>13</inStoreReservation>
Zkopírovat odkaz na sekciPopis
Zkopírovat odkaz na sekciinStoreReservation
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') + '-' + numberSeq(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 null, tak se rezervace nikdy neuvolní automaticky. Č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 null, tak se upozornění na vypršení platnosti rezervace neodesílají. Č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 null nebo stav neexistuje, tak se rezervace neuvolní automaticky při změně stavu rezervace. | String | - | processing |
| catalogSpecific | Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde. | - | - |
Zkopírovat odkaz na sekciE-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:
1 <inStoreReservation>2 <mailing/>3</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:
1 <?xml version="1.0" encoding="utf-8"?>2<!DOCTYPE sitemap SYSTEM "cps.dtd">3<sitemap>4 <bundle>classpath:/META-INF/lib_eshop_reservation/mail/mail-reservation</bundle>5 <!-- other bundles -->6</sitemap>
Zkopírovat odkaz na sekciWorkflow 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".