Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Не применять купоны к товарам, которые уже на скидке [opencart 3]


Recommended Posts

Всем привет!

Задача тривиальная, но вызывает трудности)

Есть товары со скидкой\акционные, есть обычные.
Если клиент вносит разные товары в корзину (и скидочные и обычные) и использует скидочный купон, то купон также считает скидку и на товары которые уже на скидке.

 

Нужно чтобы купон применялся только к обычным товарам и игнорировал скидочные.

Вот тут вроде как ответили на вопрос: 

в части где автор пишет:

$results = $this->model_catalog_product->getProduct($product['product_id']);
					if ($results['special']) {
					continue;
					}

Но реализация данного подхода не получилась((

 

Буду рад вашим ответам :-)

Link to comment
Share on other sites


20.05.2023 в 14:52, spectre сказал:

Лучше вообще в библиотеке cart ставить флаг что у товара есть скидка и делать доп запросы к getproduct

хмм, а можно подробнее?)

Link to comment
Share on other sites


я правильно понимаю, что купон применяется к товарам через цикл?

$сумма_товаров_в_корзине;
$сумма_товаров_в_корзине_c_учетом_купона;

foreach($массив_товаров_в_корзине as $товар){

    if($товар['status']){
        // применяем купон к этому товару
        $сумма_товаров_в_корзине_c_учетом_купона += $товар['price'];
    }
}

 

Link to comment
Share on other sites


20.05.2023 в 16:48, metro54 сказал:

я правильно понимаю, что купон применяется к товарам через цикл?

$сумма_товаров_в_корзине;
$сумма_товаров_в_корзине_c_учетом_купона;

foreach($массив_товаров_в_корзине as $товар){

    if($товар['status']){
        // применяем купон к этому товару
        $сумма_товаров_в_корзине_c_учетом_купона += $товар['price'];
    }
}

 

 

нет, вам надо смотреть в фунцию getCoupon в catalog/model/extension/total/coupon.php

 

скорее всего такой модификатор поможет

 

no_special_in_coupon.ocmod.xml

  • +1 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.