Пример события OnSaleOrderSaved

Реальный пример события сохранения заказа в конце сохранения (когда заказ и все связанные сущности уже сохранены).
Скачать пример события OnSaleOrderSaved

 $eventManager->addEventHandler("sale", "OnSaleOrderSaved", ['OrderEvents', 'OrderServicesCollection']);
class OrderEvents {
public static function OrderServicesCollection(\Bitrix\Main\Event $event) {
$order = $event->getParameter('ENTITY');
$isNew = $event->getParameter("IS_NEW");
$shipmentCollection = $order->getShipmentCollection();
$servicesPrice = 0;
$res = CIBlock::GetProperties(28, Array(), Array("CODE"=>"SERVICES_COLLECTION"));
if($res_arr = $res->Fetch()) {
$servicesPrice = $res_arr["DEFAULT_VALUE"];
}
if($servicesPrice && $isNew) {
$basket = $order->getBasket();
$basketItems = $basket->getBasketItems();
$deliveryPrice = $order->getField("PRICE_DELIVERY");
$servicesPriceFinal = $deliveryPrice + ($servicesPrice * count($basketItems));
foreach($shipmentCollection as $shipment) {
if(!$shipment->isSystem()) {
$shipment->setBasePriceDelivery($servicesPriceFinal, false);
$order->save();
}
}
}
}
}
#OnSaleOrderSaved

Ещё статьи:

29.01.2023 Хостинг бегет - сапожник без сапог
На днях захожу на страницу поддержки бегет и у меня ничего не работает. Выясняется, что api.beget.com/v1/helpdesk с трояном HEUR:Backdoor.PHP.WebShell.gen и мой Касперский блокирует страницу ID: 435

25.01.2023 Ошибка работы веб форм битрикс в аякс режиме
Возникла задача внедрить битрикс формы на сайт битрикс, но нюанс в том, что страница лендинг в HTML без подключения битрикс шаблона.
В целом я не предполагал, что возникнут трудности, но этот гибрид удалось запустить. Возникла ошибка открытия результата формы в новом окне, что говорит о том, что аякс не отрабатывает. ID: 434

19.01.2023 Ник ру покупает отзывы, но выше дна не подняться
Самый убогий хостинг провайдер, который ворует домены у клиентов покупает отзывы. ID: 433

© 2015-2023 Web админ
Связаться по WhatsApp