Právě je 19 dub 2024 14:07

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 6 ] 
Autor Zpráva
 Předmět příspěvku: PrestaShop - Zlý výpoceť %-ntuálnej zľavy v objednávke z adm
PříspěvekNapsal: 16 kvě 2017 17:17 
C4 zákazník
Uživatelský avatar

Registrován:
06 čer 2014 19:28
Příspěvky:
607
Zdravím.

Používam verziu 1.6.1.0, a od začiatku mám jeden problém.

Pri pridaní zľavy v Percentách - do objednávky z administrácie, sa zľava zle počíta.
Príklad: zadám zľavu v % = 10%. A vypočíta zľavu ako keby som zadal číslo 10,35%.

je mi jasné, že dostanem odpoveď že používam staršiu verziu PS, ale v prvom rade hľadám také riešenie, kde by stačilo možno len prepísať časť kódu tejto funckie, ktorá má na starosti tento výpočet z novej verzie PS do 1.6.1.0. Len netuším, ani kde by som mal tento kód hľadať.

Bol by som rád za akékoľvek nasmerovanie, najlepšie aj s riešením. Celko ma ubíja, keď musím vždy zľavu počítať a zadávať manuálne.

Ďakujem pekne


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Zlý výpoceť %-ntuálnej zľavy v objednávke z adm
PříspěvekNapsal: 23 kvě 2017 10:49 
C4 podpora
C4 podpora

Registrován:
30 čer 2009 09:14
Příspěvky:
8504
Dobrý den,

uveďte, prosím, konkrétní částky, ať mohu funkčnost otestovat.

_________________
Radek Plašil
Webhosting C4
https://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Zlý výpoceť %-ntuálnej zľavy v objednávke z adm
PříspěvekNapsal: 23 kvě 2017 13:25 
C4 zákazník
Uživatelský avatar

Registrován:
06 čer 2014 19:28
Příspěvky:
607
Prikladám screenshot. (V Eshope je nastavená daň 20%.)

Správne má byť zľava 1,74€ (s DPH)

Ďakujem


Přílohy:
Untitled-2.png
Untitled-2.png [ 67.8 KiB | Zobrazeno 879 krát ]
Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Zlý výpoceť %-ntuálnej zľavy v objednávke z adm
PříspěvekNapsal: 23 kvě 2017 13:46 
C4 podpora
C4 podpora

Registrován:
30 čer 2009 09:14
Příspěvky:
8504
Dobrý den,

nevidím ve výpočtu žádný problém. Nejspíš slevu počítáte pouze z celkové částky za produkty, ale sleva se počítá z celkové částky za celou objednávku, tzn. i s dopravou. Takže ve Vašem případě 5% z celkové částky 38,7 € je 1,935 €. A po zaokrouhlení je tedy 5% sleva 1,94 €.

_________________
Radek Plašil
Webhosting C4
https://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Zlý výpoceť %-ntuálnej zľavy v objednávke z adm
PříspěvekNapsal: 23 kvě 2017 18:58 
C4 zákazník
Uživatelský avatar

Registrován:
06 čer 2014 19:28
Příspěvky:
607
Ďakujem za odpoveď. Teraz to vyzerá ako keby som bol úplný tatar..
Takto.. Neviem teraz nájsť, resp. nasimulovať ten problém, kde mi zlava nesedela ani z celkovej ceny produktu + poštovného...

Každopádne, je možné upraviť správanie tejto funkcie aby sa do zľavy nepočítalo poštovné? Tj. Zlava bude len z produktov.

Ďakujem moc


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Zlý výpoceť %-ntuálnej zľavy v objednávke z adm
PříspěvekNapsal: 24 kvě 2017 10:02 
C4 podpora
C4 podpora

Registrován:
30 čer 2009 09:14
Příspěvky:
8504
Dobrý den,

ano, můžete si upravit zdrojový kód v souboru /controllers/admin/AdminOrdersController.php. V poslední verzi 1.6.1.13 se jedná o tyto řádky:
Kód:
// Percent type
case 1:
    if ($discount_value < 100) {
        if (isset($order_invoice)) {
            $cart_rules[$order_invoice->id]['value_tax_incl'] = Tools::ps_round($order_invoice->total_paid_tax_incl * $discount_value / 100, 2);
            $cart_rules[$order_invoice->id]['value_tax_excl'] = Tools::ps_round($order_invoice->total_paid_tax_excl * $discount_value / 100, 2);

            // Update OrderInvoice
            $this->applyDiscountOnInvoice($order_invoice, $cart_rules[$order_invoice->id]['value_tax_incl'], $cart_rules[$order_invoice->id]['value_tax_excl']);
        } elseif ($order->hasInvoice()) {
            $order_invoices_collection = $order->getInvoicesCollection();
            foreach ($order_invoices_collection as $order_invoice) {
                /** @var OrderInvoice $order_invoice */
                $cart_rules[$order_invoice->id]['value_tax_incl'] = Tools::ps_round($order_invoice->total_paid_tax_incl * $discount_value / 100, 2);
                $cart_rules[$order_invoice->id]['value_tax_excl'] = Tools::ps_round($order_invoice->total_paid_tax_excl * $discount_value / 100, 2);

                // Update OrderInvoice
                $this->applyDiscountOnInvoice($order_invoice, $cart_rules[$order_invoice->id]['value_tax_incl'], $cart_rules[$order_invoice->id]['value_tax_excl']);
            }
        } else {
            $cart_rules[0]['value_tax_incl'] = Tools::ps_round($order->total_paid_tax_incl * $discount_value / 100, 2);
            $cart_rules[0]['value_tax_excl'] = Tools::ps_round($order->total_paid_tax_excl * $discount_value / 100, 2);
        }
    } else {
        $this->errors[] = Tools::displayError('The discount value is invalid.');
    }
    break;

Takže teoreticky by mělo stačit ve výpočtech nahradit celkové částky za celou objednávku/fakturu (s a bez DPH) za celkové částky pouze za produkty. Po změně kódu doporučuji funkčnost slev důkladně otestovat, protože možná se slevami souvisí i jiné části aplikace/kódu. Pokud si na úpravu zdrojového kódu netroufáte, můžete se obrátit na některého z našich partnerů (příp. vpravo blok PrestaShop partneři), který se aplikaci PrestaShop věnuje.

_________________
Radek Plašil
Webhosting C4
https://www.c4.cz/


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 6 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
PrestaShop partneři

Seznam všech partnerů

PrestaShop Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz