Получение списка товаров с ценой со скидкой (правила работы корзины, купон и т.д.)
Промучился с данной задачей не один день, нашел решение и хочу поделится с теми кто не мог найти ответа в форумах.
При получении списка товаров в корзине текущего пользователя, цены товаров передаются без применения скидки.
Код получения списка товаров в корзине текущего пользователя:
Этот код отдает в 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"]; |
Так вот решил данную задачу.