Lonya Posted April 15, 2016 Share Posted April 15, 2016 Здравствуйте! Коллеги, помогите разобраться. Ситуация следующая. Есть несколько групп клиентов с установленными скидками. И есть товары со скидками (например, 20%). Скидки действуют для всех групп. По умолчанию цена считается так: начальная цена – (минус) скидка по группе – скидка по товару. И клиенту, находящемуся в группе со скидкой 5% плюсуется еще и скидка по товару. Получается этим клиентам скидка 25%. Стандартными средствами Престы можно исключить группу клиентов из скидки по товару (в карточке товара, в специальных ценах выбрать группу, для которой действует скидка по товару). Но это не подходит. Нужно сделать так, чтобы для клиентов, находящимися в группе со скидкой, для товаров со скидкой не действовала их скидка по группе. Пример. Товар1 – 100 дол; Товар 2 – 200 дол; Группа клиентов – скидка 5%; Скидка на товар1 – 20%. Для неавторизованного пользователя (или вгруппе без скидки) действуют цены: Товар1 – 80 дол. (100-20%); Товар2 – 200 дол. (скидок нет). Для клиента в группе: Товар1 – 75 дол (100-5%-20%) Товар2 – 190 дол (200-5%) А нужно так: Для клиента в группе: Товар1 – 80 дол (100-20%) – исключить для «скидочного» товара его скидку по группе Товар2 – 190 дол (200-5%) Вроде понимаю, что это не сложно, но никак не пойму где в коде это меняется. Link to comment Share on other sites More sharing options...
Burick Posted October 24, 2016 Share Posted October 24, 2016 Здравствуйте, возникла аналогичная проблема! Хотел поинтересоваться, не нашли ли решение! Но в процессе нашел решение тут(http://prestadev.ru/forum/tema-8720.html) kaco Новичок Сообщений: 3 Регистрация: 05-09-2011 # 8 28-03-2014 04:47 Вопрос, конечно, старый, но отвечу, вдруг кому пригодится. В престе 1.5 это решается через админку - клиенты - группы - создаем нужную группы пользователей, но скидку им ставим нулевую. Затем в ценовых правилах - правила каталога - назначаем нужную скидку группе. При такой схеме на странице продукта будет отображаться старая цена (зачеркнутая), рядом процент скидки и новая цена со скидкой. "Затем в ценовых правилах - правила каталога - назначаем нужную скидку группе." Не добавляя новую группу условий скидка распространяется на весь ассортимент, а при желании выбираете определённое условие! Оказалось все проще простого!))) Link to comment Share on other sites More sharing options...
Lonya Posted October 24, 2016 Author Share Posted October 24, 2016 (edited) Решение нашел. Но не то, что Вы привели в пример.Этот пример не решал проблему. Как сделал я: В classes/Product.php есть код, который отвечает за расчет цены при наличии скидки для группы клиентов. <?php // Group reduction if ($use_group_reduction) { $reduction_from_category = GroupReduction::getValueForProduct($id_product, $id_group); if ($reduction_from_category !== false ) $group_reduction = $price * (float)$reduction_from_category; else // apply group reduction if there is no group reduction for this category $group_reduction = (($reduc = Group::getReductionByIdGroup($id_group)) != 0) ? ($price * $reduc / 100) : 0; } else $group_reduction = 0; if ($only_reduc) return Tools::ps_round($group_reduction + $specific_price_reduction, $decimals); if ($use_reduc) $price -= $group_reduction; условие <?php // Group reduction if ($use_group_reduction) передалал на <?php // Group reduction if ($use_group_reduction && !$specific_price) если есть скидка по группе И НЕ установлена спец. цена, тогда применяется скидка для группы. Это для 1.6 Edited October 24, 2016 by Lonya (see edit history) 1 Link to comment Share on other sites More sharing options...
Burick Posted October 24, 2016 Share Posted October 24, 2016 (edited) У меня есть товары со скидкой для всех групп (скидку прописывал каждому товару через админку, так как товаров на скидке не много, около 50 и у каждого товара % скидки отличается), далее я сделал как написано "Затем в ценовых правилах - правила каталога - назначаем нужную скидку группе.", и всё прокатило, скидка группе "Клиенты" не трогает скидку которую я сам прописывал! Конечно, выше мной описанное не совсем по теме, но все таки это работает) Спасибо за информацию! Думаю многим будет полезна, сам так по кусочкам магазин собрал! Версия 1.6.1.7 Edited October 24, 2016 by Burick (see edit history) Link to comment Share on other sites More sharing options...
mskbro Posted November 21, 2018 Share Posted November 21, 2018 (edited) On 10/24/2016 at 4:45 PM, Lonya said: В classes/Product.php есть код, который отвечает за расчет цены при наличии скидки для группы клиентов. передалал на <?php // Group reduction if ($use_group_reduction && !$specific_price) если есть скидка по группе И НЕ установлена спец. цена, тогда применяется скидка для группы. Здравствуйте, спасибо за решение! И еще один вопрос, помимо описанного случая когда есть скидка по группе и спец цена есть еще купоны, как сделать так чтобы и купоны не складывались с спец ценой и с скидкой по группе? ------- Нашел решение своего вопроса тут Edited November 21, 2018 by mskbro (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now