Изменение формирования номера следующего заказа и имени заказа
Материал из Umicms
В конфигурационном файле config.ini, в секции [modules] есть такое значение:
emarket.numbers = "default"
default – это класс для расчета номера следующего заказа. Сам файл находится по пути: \classes\modules\emarket\classes\orders\number\default.php
Поэтому для изменения логики, можно в config.ini указать:
emarket.numbers = "custom"
А в папке \classes\modules\emarket\classes\orders\number\ создать файл custom.php, следующего содержания:
<?php class customOrderNumber implements iOrderNumber { protected $order; public function __construct(order $order) { $this->order = $order; } public function number() { $sel = new selector('objects'); $sel->types('object-type')->name('emarket', 'order'); $sel->order('number')->desc(); $sel->limit(0, 1); $number = $sel->first ? ($sel->first->number + 1) : 1; $order = $this->order; $order->name = 'umitest ' . $number; $order->number = $number; $order->commit(); return $number; } }; ?>
В итоге, при формирования номера и имени заказа будет использоваться класс customOrderNumber и имя заказа будет примерно в таком виде:
umitest 345
