V nové major verzi balíčku order-module přibyla podpora, pro konfigurovatelný databázový generátor čísel objednávek.
V nejnovější verzi order-module určené pro PHP 7.2 je skrz třídu Inspire\NW7\Module\Order\Builder\Service\NumberGenerator\DatabaseNumberGenerator možné zapnout databázový generátor čísel a var. symbolů objednávek.
Služba bere v konstruktoru (mimo jiné) název databázové metody a pole argumentů, jenž jsou této DB metodě předány. Výstup metody (první hodnota prvního vráceného řádku) je pak použit jako číslo objednávky, resp. variabilní symbol nové objednávky.
Příklad konfigurace v config.neon:
orderNumberGenerator:
class: Inspire\NW7\Module\Order\Builder\Service\NumberGenerator\DatabaseNumberGenerator
arguments:
- ...
- 'get_next_order_number' # nazev DB metody
- [@lang::getShort()] # pole argumentu predavanych do DB procedury - v tomto případě aktuální jazyk
Odpadá tak nutnost na každém e-shopovém projektu psát vlastní generátor čísel, metody v managerovi, v mapperu apod.