Автор Тема: Проблема с расчетом скидок на общую сумму товара в корзине  (Прочитано 2285 раз)

13 Декабрь 2011, 08:23:56
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Доброго времени суток!

Установлен  PrestaShop версии 1.4.0.17
Работаем  давно, имеются доработки исходного кода. У нас возникла проблема с расчетом скидок на товары, находящиеся в корзине. Мы внесли исправления в модуль controllers/orderController.php

      /* Check minimal amount */
$currency = Currency::getCurrency((int)self::$cart->id_currency);
$orderTotal = self::$cart->getOrderTotal();
        $existingDiscounts = self::$cart->getDiscounts(true);
        if ( ((int)$orderTotal>=10000) )
        {
            self::$cart->deleteDiscount(1);self::$cart->deleteDiscount(2);self::$cart->deleteDiscount(3);
            self::$cart->addDiscount(1);
        }
        elseif ( ((int)$orderTotal>=7500) and ((int)$orderTotal<10000) )
        {
            self::$cart->deleteDiscount(1);self::$cart->deleteDiscount(2);self::$cart->deleteDiscount(3);
            self::$cart->addDiscount(2);
        }
        elseif ( ((int)$orderTotal>=5000) and ((int)$orderTotal<7500) )
        {
            self::$cart->deleteDiscount(1);self::$cart->deleteDiscount(2);self::$cart->deleteDiscount(3);
            self::$cart->addDiscount(3);
        }
        elseif ( ((int)$orderTotal<5000))
        {
            self::$cart->deleteDiscount(1);self::$cart->deleteDiscount(2);self::$cart->deleteDiscount(3);
        }
        $orderTotal = self::$cart->getOrderTotal();

На малых объемах товаров программа работает правильно

GET http://soblazn-tmn/cart.php?add=true&id_product=...c9176c42ea59d2dadc&ipa=0&ajax=true&qty=1&op=down   200 OK       5.48s   
JSON
      
   products   [Object { id=1725, link="http://soblazn-tmn/product.php?id_product=1725", quantity=2, ещё...}, Object { id=251, link="http://soblazn-tmn/product.php?id_product=251", quantity=2, ещё...}, Object { id=1695, link="http://soblazn-tmn/product.php?id_product=1695", quantity=1, ещё...}]
   discounts   [Object { id="3", name="ADD5PERCENT :...", description="Скидка 5%", ещё...}]
   0   Object { id="3", name="ADD5PERCENT :...", description="Скидка 5%", ещё...}
   id   "3"
   name   "ADD5PERCENT :..."
   description   "Скидка 5%"
   nameDescription   "ADD5PERCENT :..."
   link   "http://soblazn-tmn/order.php?deleteDiscount=3"
   price   "-308 руб"
   shippingCost   "0 руб"
   wrappingCost   "0 руб"
   nbTotalProducts   "5"
   total   "5 856 руб"
   productTotal   "5 856 руб"
   hasError   false

Если же увеличиваем количество товара в корзине, то скидка не считается

GET http://soblazn-tmn/cart.php?add=true&id_product=...cc9176c42ea59d2dadc&ipa=0&ajax=true&qty=99&op=up   200 OK       8.54s   
JSON
      
   products   [Object { id=1725, link="http://soblazn-tmn/product.php?id_product=1725", quantity=100, ещё...}, Object { id=251, link="http://soblazn-tmn/product.php?id_product=251", quantity=100, ещё...}, Object { id=1695, link="http://soblazn-tmn/product.php?id_product=1695", quantity=100, ещё...}]
   discounts   [Object { id="1", name="AddTenPercent :...", description="Скидка 10%", ещё...}, Object { id="1", name="AddTenPercent :...", description="Скидка 10%", ещё...}]
   0   Object { id="1", name="AddTenPercent :...", description="Скидка 10%", ещё...}
   id   "1"
   name   "AddTenPercent :..."
   description   "Скидка 10%"
   nameDescription   "AddTenPercent :..."
   link   "http://soblazn-tmn/order.php?deleteDiscount=1"
   price   "-"
   1   Object { id="1", name="AddTenPercent :...", description="Скидка 10%", ещё...}
   id   "1"
   name   "AddTenPercent :..."
   description   "Скидка 10%"
   nameDescription   "AddTenPercent :..."
   link   "http://soblazn-tmn/order.php?deleteDiscount=1"
   price   "-"
   shippingCost   "0 руб"
   wrappingCost   "0 руб"

К тому же откуда-то появляется вторая скидка

Может кто-нибудь объяснить, что мы не так делаем и как правильно рассчитать скидки на товар в корзине
14 Декабрь 2011, 12:30:04
Ответ #1
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Проще переписать все в отдельный модуль.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.