- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/orderbase.php
- Класс: BitrixSaleOrderBase
- Вызов: OrderBase::create
static function create($siteId, $userId = null, $currency = null)
{
$fields = [
'CANCELED' => 'N',
'DEDUCTED' => 'N',
'ALLOW_DELIVERY' => 'N',
'PAYED' => 'N',
];
$order = static::createOrderObject($fields);
$order->setFieldNoDemand('LID', $siteId);
if (intval($userId) > 0)
{
$order->setFieldNoDemand('USER_ID', $userId);
}
if ($currency == null)
{
$currency = InternalsSiteCurrencyTable::getSiteCurrency($siteId);
}
if ($currency == null)
{
$currency = CurrencyCurrencyManager::getBaseCurrency();
}
$order->setFieldNoDemand('CURRENCY', $currency);
$order->setField('STATUS_ID', static::getInitialStatus());
$order->setFieldNoDemand('XML_ID', static::generateXmlId());
$order->calculateType = static::SALE_ORDER_CALC_TYPE_NEW;
return $order;
}