2021-12-16 10:13:00
390

Новые статьи

Льготная ипотека для сотрудников работающих в ит - 2022 год
280
2022-07-23 14:56:00
Лучшие внешние жесткие диски в 2022 году
283
2022-07-23 14:43:00
Работа стоя за компьютером. Преимущества работы стоя. как выбрать стол для работы стоя?
288
2022-07-21 06:46:00
JavaScript или Python Плюсы и минусы. Какой язык выбрать для изучения?
180
2021-06-18 18:25:00
Как создать сайт?
0
2021-01-30 20:27:02

1C-Битрикс - заказы, создание заказа, изменение, примеры

Получение информации о заказе D7

use Bitrix\Sale; — импортируем рабочее пространство.

use Bitrix\Sale; 

$IdOrder = 143;
$order = Sale\Order::load((int) $IdOrder); // получаем заказ по id
$paymentCollection = $order->getPaymentCollection(); // получаем оплаты заказа $payName = []; foreach ($paymentCollection as $payment) { $payName[] = $payment->getPaymentSystemName(); // название платежной системы } print_r($payName); // покажет массив содержащий наименования платежных систем $discountData = $order->getDiscount()->getApplyResult(); // получить скидки заказа $COUPON = []; foreach($discountData["COUPON_LIST"] as $val){ $COUPON[] = $val["COUPON"]; } print_r($COUPON); // Покажет список купонов, которые были использованы в заказе

Изменение заказа

Добавить оплаты при сохранении заказа.
Добавляем этот код в init.php

\Bitrix\Main\EventManager::getInstance()->addEventHandler( 

    'sale', 

    'OnSaleOrderSaved', 

    'xClass::onSaleOrderSaved'

); 

class xClass

{

    function onSaleOrderSaved(\Bitrix\Main\Event $event)

    {
                $order = $event->getParameter("ENTITY");
                $collection = $order->getPaymentCollection(); // Получим оплаты
                $service = \Bitrix\Sale\PaySystem\Manager::getObjectById(9); // Будем использовать оплату с id 9
                $payment = \Bitrix\Sale\Payment::create($collection, $service); // создадим оплату
                $payment->setField('SUM', 100); // сумма оплаты
                $payment->setField('PAID', "Y"); // Статус оплаты, оплачено
                $collection->addItem($payment);
    }

}

Комментарии

Комментарии (15)

    Обратный звонок

    Имя
    Телефон
    x


    Имя
    Телефон