Faktury
Funkční popis faktur je zde.
Konfigurační soubor se standardně nachází v adresáři config/module-edeeshop/features/order/invoice.xml.
Příklad konfigurace
<invoice> <autoSendInvoiceNotification>true</autoSendInvoiceNotification> <limits> <limit> <maxOccurrence>1</maxOccurrence> <type>STANDARD</type> </limit> </limits> <rules> <rule> <code>rule1</code> <dueDateDays>3</dueDateDays> <events> <event> <constraint>eq(event.state.code,dispatched-order)</constraint> <eventName>afterNewOrderStateCreatedEvent</eventName> <expression>event.state.code == 'dispatched-order'</expression> <order/> </event> </events> <invoiceType>STANDARD</invoiceType> <numberExpression>'F' + dateFormat('yyyy') + '-' + nextNumber(dateFormat('yyyy'),4)</numberExpression> <pathToLogo>/project/img/logo.png</pathToLogo> <pdfEngine>jasper</pdfEngine> <priority>0</priority> <template>classpath:invoiceTemplate.jasper</template> </rule> </rules> <catalogSpecific> <catalogCode/> <autoSendInvoiceNotification>true</autoSendInvoiceNotification> <limits> <limit> <maxOccurrence>1</maxOccurrence> <type>STANDARD</type> </limit> </limits> <rules> <rule> <code>rule1</code> <dueDateDays>3</dueDateDays> <events> <event> <constraint>eq(event.state.code,dispatched-order)</constraint> <eventName>afterNewOrderStateCreatedEvent</eventName> <expression>event.state.code == 'dispatched-order'</expression> <order/> </event> </events> <invoiceType>STANDARD</invoiceType> <numberExpression>'F' + dateFormat('yyyy') + '-' + nextNumber(dateFormat('yyyy'),4)</numberExpression> <pathToLogo>/project/img/logo.png</pathToLogo> <pdfEngine>jasper</pdfEngine> <priority>0</priority> <template>classpath:invoiceTemplate.jasper</template> </rule> </rules> </catalogSpecific></invoice>
Popis
invoice
Konfigurace evidence faktur objednávek.
Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| autoSendInvoiceNotification | Příznak toho, zda se má notifikace o nové faktuře automaticky odeslat po uploudu z v administraci nebo po automatickém vygenerování faktury. Default je | boolean |
|
|
| limits/limit | Seznam limitů maximálního počtu faktur daného typu, které mohou být u objednávky evidovány. Pokud je seznam prázdný, tak výchozí limit je nastaven pouze pro zálohovou fakturu v počtu 1. Ostatní typy faktur jsou bez limitu. | List: limits/limit |
|
|
| rules/rule | Seznam pravidel, podle kterých se mají automaticky generovat faktury objednávky. Pokud je seznam prázdný, faktury se automaticky negenerují. | List: rules/rule |
|
|
| catalogSpecific | Vlastnosti této konfigurace lze specifikovat pro konkrétní katalog. Více zde. |
|
|
limits/limit
Seznam limitů maximálního počtu faktur daného typu, které mohou být u objednávky evidovány.
Pokud je seznam prázdný, tak výchozí limit je nastaven pouze pro zálohovou fakturu v počtu 1. Ostatní typy faktur jsou bez limitu.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| maxOccurrence | Maximální počet faktur daného typu, které mohou být u jedné objednávky evidovány. Povinná hodnota. | Integer |
|
|
| type | Typ faktury, pro který se limit vztahuje. Povinná hodnota. |
|
|
|
rules/rule
Seznam pravidel, podle kterých se mají automaticky generovat faktury objednávky.
Pokud je seznam prázdný, faktury se automaticky negenerují.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| code | Jedinečný kód pravidla. | String |
|
|
| dueDateDays | Na základě této hodnoty se generuje datum splatnosti do zálohové faktury. Hodnota určuje kolik dní od vytvoření faktury je datum splatnosti. Tedy pokud je hodnota např. 3 a datum vystavení faktury 1.1.2019, tak datum splatnosti je 4.1.2019. Výchozí hodnota je 3. | Integer |
|
|
| events/event | Seznam událostí, na které reaguje toto pravidlo. V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje. Pravidlo vyžaduje alespoň jednu událost. | List: events/event |
|
|
| invoiceType | Typ faktury, které se má vygenerovat. Výchozí hodnota je |
|
|
|
| numberExpression | Výraz (SPeL), který definuje, jakým způsobem bude generováno číslo faktury. Dostupné parametry ve SPeLu jsou:
Například výraz "'F' + dateFormat('yyyy') + '-' + nextNumber(dateFormat('yyyy'),4)" vygeneruje kód (pro rok 2022) "F2022-0001", "E2022-0002" atd. Tento výraz je povinný v případě využití default implementace InvoiceNumberProvider. V případě, že je na projektu vlastní implementace, tak tento výraz nemusí být povinný. | String |
|
|
| pathToLogo | Cesta k logu, které bude uvedeno na faktuře. Pokud není uvedeno, faktura bude bez loga. Cesta musí být uvedena jako absolutní cesta na file-systému. Např. '/project/img/logo.png'. | String |
|
|
| pdfEngine | Engine pro generování PDF faktury.
Podporované hodnoty: | String |
|
|
| priority | Priorita pravidla. V případě, že by objednávka splňovala více pravidel, aplikuje se ta s nejvyšší prioritou. Výchozí hodnota je 0. | Integer |
|
|
| template | Cesta k šabloně faktury ve formátu V produkčním prostředí je vhodnější použít zkompilovanou variantu s příponou Pokud není definováno, použije se výchozí šablona. |
|
|
events/event
Seznam událostí, na které reaguje toto pravidlo.
V případě, že alespoň jedna událost splňuje podmínky pro vypálenou aplikační událost (např. změna stavu objednávky), tak se toto pravidlo aplikuje.
Pravidlo vyžaduje alespoň jednu událost.
| Vlastnost | Popis | Hodnota | Povinná | Výchozí hodnota |
|---|---|---|---|---|
| constraint | Pravidlo schválí událost pokud vlastnosti této události splňují požadavky definované podmínky. Podmínka může obsahovat libovolný standardní operátor: and, or, not, eq, isTrue, isFalse atd. V rámci výrazu je možné se odkazovat na událost pomocí klíčového slova kód Více na TOBEDONE #1948 odkaz na dokumentaci constraint. | String |
|
|
| eventName | Název aplikační události. Pokud název události odpovídá této hodnotě, aby mohla být podmínka splněna. Pokud není vyplněno, název události se nekontroluje. | String |
|
|
| expression | Výraz (SpEL - Spring Expression Language), který se pro danou událost vyhodnocuje. Podmínka je splněna pokud daný výraz vrací Příklad výrazu pro událost, která poskytuje vlastnosti Nepovinný hodnota. | String |
|
|
| order | Výraz (SPeL), který po vyhodnocení vrací z objednávku pro danou událost. Objednávka je následně použita pro generování faktury. Povinná hodnota. | String |
|
|
