maziq Posted February 7, 2014 Share Posted February 7, 2014 Witam serdecznie, Mam niesamowity problem - otóż produkty które są w promocji są dodatkowo objęte rabatem, sprawa wygląda następująco: Mam w sklepie dwie grupy klientów 10% i 5%. Każda grupa analogicznie ma przyznany rabat odpowiednio 10 i 5 procent. Niestety produkty, które są w promocji są dodatkowo rabatowane - chciałbym to zmienić. Chodzi o to aby produkty które są w promocji nie były obejmowane rabatem. W jaki sposób mogę to zrobić? Link to comment Share on other sites More sharing options...
And63 Posted February 7, 2014 Share Posted February 7, 2014 (edited) Witam serdecznie, Mam niesamowity problem - otóż produkty które są w promocji są dodatkowo objęte rabatem, sprawa wygląda następująco: Mam w sklepie dwie grupy klientów 10% i 5%. Każda grupa analogicznie ma przyznany rabat odpowiednio 10 i 5 procent. Niestety produkty, które są w promocji są dodatkowo rabatowane - chciałbym to zmienić. Chodzi o to aby produkty które są w promocji nie były obejmowane rabatem. W jaki sposób mogę to zrobić? Znam ten ból - musiałem modyfikować klasę produktu żeby promocja nie łączyła się z rabatem, a była wyłącznie cechą nadrzędną. Rozwiązanie podałem w tym w poście #5 w wątku http://www.prestashop.com/forums/topic/275007-solved-how-to-change-the-method-of-calculation-of-the-final-price/ Edited February 7, 2014 by And63 (see edit history) 1 Link to comment Share on other sites More sharing options...
maziq Posted February 7, 2014 Author Share Posted February 7, 2014 Znam ten ból - musiałem modyfikować kontroler produktu żeby promocja nie łączyła się z rabatem, a była wyłącznie cechą nadrzędną. Może coś więcej na ten temat ? Aktualnie obszedłem to w ten sposób, że produkty promocyjne przeniosłem do kategorii PROMOCJE która jest wyłączona i wykluczyłem tą kategorię w ustawieniach grupy klientów. Jednak jako, że mam zintegrowaną prestę z programem magazynowym pojawiają się problemy związane z rabatami. Link to comment Share on other sites More sharing options...
And63 Posted February 7, 2014 Share Posted February 7, 2014 Może coś więcej na ten temat ? Aktualnie obszedłem to w ten sposób, że produkty promocyjne przeniosłem do kategorii PROMOCJE która jest wyłączona i wykluczyłem tą kategorię w ustawieniach grupy klientów. Jednak jako, że mam zintegrowaną prestę z programem magazynowym pojawiają się problemy związane z rabatami. Co tu więcej pisać - mam kilka grup rabatowych w sklepie, do tego cotygodniowe promocje. Jeśli produkt ma promocję cenową, to wszystkie grupy rabatowe obowiązuje wyłącznie cena promocyjna ustalona w BO. Link to comment Share on other sites More sharing options...
maziq Posted February 7, 2014 Author Share Posted February 7, 2014 Co tu więcej pisać - mam kilka grup rabatowych w sklepie, do tego cotygodniowe promocje. Jeśli produkt ma promocję cenową, to wszystkie grupy rabatowe obowiązuje wyłącznie cena promocyjna ustalona w BO. Po zmianie klasy produktu podaną w Twoim poście z kwoty 171,10 zł brutto otrzymuję 0,10 zł (na aktualnej wersji Presta). Zmieniałem na : // Group reduction if ($use_group_reduction) { if ($specific_price) $price = $specific_price['reduction']; else if ($reduction_from_category = (float)GroupReduction::getValueForProduct($id_product, $id_group)) $price -= $price * $reduction_from_category; else // apply group reduction if there is no group reduction for this category $price *= ((100 - Group::getReductionByIdGroup($id_group)) / 100); } Link to comment Share on other sites More sharing options...
And63 Posted February 7, 2014 Share Posted February 7, 2014 (edited) Po zmianie klasy produktu podaną w Twoim poście z kwoty 171,10 zł brutto otrzymuję 0,10 zł (na aktualnej wersji Presta). Zmieniałem na : // Group reduction if ($use_group_reduction) { if ($specific_price) $price = $specific_price['reduction']; else if ($reduction_from_category = (float)GroupReduction::getValueForProduct($id_product, $id_group)) $price -= $price * $reduction_from_category; else // apply group reduction if there is no group reduction for this category $price *= ((100 - Group::getReductionByIdGroup($id_group)) / 100); } A jaki dałeś rabat dla produktu? - procentowy czy kwotowy? Edited February 7, 2014 by And63 (see edit history) Link to comment Share on other sites More sharing options...
maziq Posted February 7, 2014 Author Share Posted February 7, 2014 A jaki dałeś rabat dla produktu? - procentowy czy kwotowy? Jestem w grupie, która posiada 10% rabat: Link to comment Share on other sites More sharing options...
And63 Posted February 7, 2014 Share Posted February 7, 2014 (edited) Zgadza się - zapomniałem, że robiłem tę poprawkę wyłącznie dla rabatów kwotowych. To co pokazujesz u góry to rabat dla grupy, a nie cena promocyjna na produkt Edited February 7, 2014 by And63 (see edit history) Link to comment Share on other sites More sharing options...
And63 Posted February 7, 2014 Share Posted February 7, 2014 Jeszcze jedno - wpisujesz kwotę jaka ma obowiązywać w sklepie, a nie o ile obniżasz - dla mnie było tak wygodniej Link to comment Share on other sites More sharing options...
maziq Posted February 7, 2014 Author Share Posted February 7, 2014 Jeszcze jedno - wpisujesz kwotę jaka ma obowiązywać w sklepie, a nie o ile obniżasz - dla mnie było tak wygodniej W ten sposób mam ustawioną promocję na produkt. Jeszcze jedno - wpisujesz kwotę jaka ma obowiązywać w sklepie, a nie o ile obniżasz - dla mnie było tak wygodniej Mógłbym poprosić o sprecyzowanie? Link to comment Share on other sites More sharing options...
And63 Posted February 7, 2014 Share Posted February 7, 2014 (edited) usuń tę cenę promocyjną z %, dodaj nową i tam gdzie masz wybór obniżki kwotowej/ procentowej wybierz "kwota" i wpisz cenę jaka ma być po obniżce. jeśli Ci to nie odpowiada zmień ten kod na: if ($use_group_reduction) { if ($specific_price) $price += $price * $reduction_from_category = (float)GroupReduction::getValueForProduct($id_product, $id_group); else if ($reduction_from_category = (float)GroupReduction::getValueForProduct($id_product, $id_group)) $price -= $price * $reduction_from_category; else // apply group reduction if there is no group reduction for this category $price *= ((100 - Group::getReductionByIdGroup($id_group)) / 100); } Edited February 7, 2014 by And63 (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