Тема: Вычисление габаритов заказа

        
$volume = 0.0;
$products = $order->getCart()->getCartItemsByType(Cart::TYPE_PRODUCT);
foreach($products as $product) {
     $dimensions = new ProductDimensions(new Product($product->entity_id));
     $volume += $dimensions->getVolume() * $product->amount;
}

Я правильно понимаю, что объем товаров в заказе вычисляется примерно так?
Это самый простой вариант?
А как быть если у товаров разная размерность? т.е. у одного в мм, а у другого в см?

2

Re: Вычисление габаритов заказа

Размеры у всех товаров должны быть заведены в одной размерности.

В какой - отвечает настройка Веб-сайт -> Настройка модулей -> Каталог -> Вкладка Параметры товаров -> Единица измерения габаритов товаров.

------------

Если у вас у одного товара в мм, а у другого в см, значит нужно все либо привести к сантиметрам(дробные значения), либо все привести к миллиметрам.

Повысить оценку Понизить оценку

3

Re: Вычисление габаритов заказа

admin пишет:

Если у вас у одного товара в мм, а у другого в см, значит нужно все либо привести к сантиметрам(дробные значения), либо все привести к миллиметрам.

мне то это понятно, а вот пользователям - нет: никаких уведомлений о несоответствиях они не получают. Было бы логично если настройка "Единица измерения габаритов товаров." жестко фиксировала единицы измерения у соответствующих хар-к