Создаю заказ
Если не сохраняя заказ, получить стоимость заказа:
То выводится только стоимость товаров без учета доставки, хотя ID доставки я передаю. Не пойму где я ошибся, почему при сохранении заказа, все сохраняется включая и выбранную доставку, но вот стоимость доставки в заказе не учитывается и получить ее отдельно
| Код |
|---|
$order->getDeliveryPrice(); |
так же не выходит.
Код оформления заказа:
| Код |
|---|
Bitrix\Main\Loader::includeModule('sale');
$order = \Bitrix\Sale\Order::create("s1", 1);
$basket = \Bitrix\Sale\Basket::create("s1");
$item = $basket->createItem('catalog', 47);
$item->setFields(array(
'QUANTITY' => 1,
'CURRENCY' => \Bitrix\Currency\CurrencyManager::getBaseCurrency(),
'LID' => "s1",
'PRODUCT_PROVIDER_CLASS' => 'CCatalogProductProvider',
));
$order->setBasket($basket);
$order->setPersonTypeId(1);
$shipmentCollection = $order->getShipmentCollection();
$shipment = $shipmentCollection->createItem(Bitrix\Sale\Delivery\Services\Manager::getObjectById(5));
$shipment->setFields(array(
'CURRENCY' => $order->getCurrency(),
));
$shipmentItemCollection = $shipment->getShipmentItemCollection();
foreach ($order->getBasket() as $item)
{
$shipmentItem = $shipmentItemCollection->createItem($item);
$shipmentItem->setQuantity($item->getQuantity());
}
$propertyCollection = $order->getPropertyCollection();
$property = $propertyCollection->getDeliveryLocation();
$property->setValue("2430");
$paymentCollection = $order->getPaymentCollection();
$payment = $paymentCollection->createItem(
Bitrix\Sale\PaySystem\Manager::getObjectById(4)
);
$payment->setField("SUM", $order->getPrice());
$payment->setField("CURRENCY", $order->getCurrency());
$order->doFinalAction(true);
$order->save();
|