Получение списка товаров с ценой со скидкой (правила работы корзины, купон и т.д.)
Промучился с данной задачей не один день, нашел решение и хочу поделится с теми кто не мог найти ответа в форумах.
При получении списка товаров в корзине текущего пользователя, цены товаров передаются без применения скидки.
Код получения списка товаров в корзине текущего пользователя:
Этот код отдает в PRICE цену по умолчанию без скидки, чтобы получить цены со скидкой, делаю так:
В массиве $basketItems["BASKET_ITEMS"] будет содержаться список товаров корзины но с ценами со скидкой, т.е. в поле PRICE указывается цена со скидкой если она была применена, а в поле BASE_PRICE будет указываться цена по умолчанию.
Так вот решил данную задачу.
Промучился с данной задачей не один день, нашел решение и хочу поделится с теми кто не мог найти ответа в форумах.
При получении списка товаров в корзине текущего пользователя, цены товаров передаются без применения скидки.
Код получения списка товаров в корзине текущего пользователя:
$arBasketItems = array();
$dbBasketItems = CSaleBasket::GetList(
array(
"NAME" => "ASC",
"ID" => "ASC"
),
array(
"FUSER_ID" => CSaleBasket::GetBasketUserID(),
"LID" => SITE_ID,
"ORDER_ID" => "NULL",
"DELAY" => "N"
),
false,
false,
array(
"*"
)
);
while ($arItems = $dbBasketItems->Fetch())
{
$arBasketItems[] = $arItems;
}
|
$currentUserBasket = getCurrentUserBasketItems(); // получаем текущую корзину пользователя, код выше стоит $basketItems = CSaleOrder::DoCalculateOrder( SITE_ID, // id текущего сайта $USER->GetId(), // id текущего пользователя $currentUserBasket // массив текущей корзины ); return $basketItems["BASKET_ITEMS"]; |
Так вот решил данную задачу.