Home Blog pc-software PrestaShop 1.5 | Zaokrouhlení

PrestaShop 1.5 | Zaokrouhlení

Popis: Úprava v souborech classes presta shop 1.5 pro nepovinné IČO (DNI)
Klíčová slova:
Hits: 1685
Hodnocení uživatelů: / 0
NejhoršíNejlepší 
Blog - pc-software
Napsal uživatel Admin   
Neděle, 13 Listopad 2016 00:00

Umožní Zobrazovat zaokrouhlené ceny

  • ve Front eshopu
    • košík
    • objednávka
      • historie objednávek
      • quick-order
      • validation
      • order-confirmation
  • a Emailech zákazníkovi
    • orded_conf
  • ve faktuře

a upravuje nastavení číslování dokladů

  • ve faktuře
  • dodacím listu

Nastavení

  • administrace > Konfigurace > Základní nastavení : Způsob zaokrouhlování > klasické
  • aministrace > Moduly > Order reference change mod :
    • Use Order ID > Ano
    • Use Zeros to prefix Order ID > Ano
    • Number of zeros to prefix Order ID > prazdne
    • Use Character(s) to prefix Order ID > prazdne
  • aministrace > Moduly > Order reference change mod > Nová Faktura - Ver.1.6_2211
    • Prefix pro VS / Var. symbol jako > - / Číslo reference
  • nastavení prefixů
    • aministrace > Objednávky > Dodací listy
      • Prefix dodacích listů DL
      • Číslo dodacího listu 2016020001
    • aministrace > Objednávky > faktury
      • Prefix faktur FA
      • Číslo faktury 2016020001
  • MySQL:
    • nastavit další ID tabulky ps_orders na 2016020001
    • nastavit v tabulce ps_configuration PS_INVOICE_START  a PS_DELIVERY_NUMBER (nalezeni radku k zmene
      SELECT * FROM `ps_configuration` WHERE `name` = 'PS_INVOICE_START_NUMBER' or `name` = 'PS_DELIVERY_NUMBER'
       a nastavenina hodnotu 2016020001: UPDATE `ps_configuration` SET `value` = '2016020001' WHERE `name` = 'PS_INVOICE_START_NUMBER' or `name` = 'PS_DELIVERY_NUMBER') na 2016020001 - to definuje číslo faktury, nebo v ps_order_invoice dat do sloupce 'number'  posledni faktury cislo 2016020001
      http://forum.c4.cz/prestashop-1-5-nelze-zmenit-cislo-faktury-t5699-10.html
      nebo v
    • pokud jde o promazani je nutne promazat : ps_orders, ps_order_detail, ps_order_history, ps_order_invoice, ps_order_invoice_payment, případne další obdsahující order nebo cart
    • pokud je nitné dodret řadu pak ve výše uvedených tabulkách nastavit auto increment na minimum id_...

Úpravy

  • košík
  • Emaily zákazníkovi
  • faktura - invoice
  • dodací list - delivery slip

soubory pro Košík:

  • /themes/default/js/cart-summary.js zaměnit json.total_price... za Math.round(json.total_price...), kde ... total_price nebo _without_tax, celkem na 4 místech řádcích v //Bloc cart a //cart sumary 
  • /modules/blockcart/blockcart.php
                   
     //by tcl source <a href="http://forum.c4.cz/prestashop-zaokrouhleni-vysledne-ceny-kosiku-na-cele-cislo-t2059.html#p7859">http://forum.c4.cz/prestashop-zaokrouhleni-vysledne-ceny-kosiku-na-cele-cislo-t2059.html#p7859</a>
                //'total' => Tools::displayPrice($totalToPay, $currency),
                'total' => Tools::displayPrice(round($totalToPay), $currency),   
    
  • /themes/default/shopping-cart.tpl na řádku 211 přdáno zaokrouhlení
    <span id="total_price">{displayPrice price=round($total_price)}</span>

soubory objednávky:

stránka /module/cashondeliveryplus/payment

  • /modules/cashondeliveryplus/views/templates/front/validation.tpl přdáno zaokrouhlení
    <span id="amount_{$currencies.0.id_currency}" class="price">{displayPrice price=round($total)}

stránka /order-confirmation

  • /modules/bankwire/views/templates/hook/payment_return.tpl
    doplněno round() na řádek 30, výsledek {displayPrice price=round($total_to_pay)}

stránka /module/bankwire/payment

  • /modules/bankwire/views/templates/front/payment_execution.tpl přidáno zaokrouhlení
    <span id="amount" class="price">{displayPrice price=round($total)}</span>

stránka /order-history

  • /themes/default/history.tpl přidáno zaokrouhlení
    <td class="history_price"><span class="price">{displayPrice price=round($order.total_paid) currency=$order.id_currency no_utf8=false convert=false}</span></td>

soubory pro Emaily zákazníkovi:

  • definování nových promenných pro mailové šablony v /modules/cashondeliveryplus/cashondeliveryplus.php
    pokud je vybrána mětoda platby dobírka (cashondeliveryplus)
    //tcl add for mail .tpl
     '{total_paid_round}' => Tools::displayPrice(round($order->total_paid), $this->context->currency, false),
     '{halerove}' => Tools::displayPrice(round($order->total_paid)-($order->total_paid), $this->context->currency, false),    
      //end tcl add 
  • definování konstant pro mailové šablony v /classes/PaymentModule.php
    pokud je vybrána mětoda platby bankovním převodem (bankwire)
     //tcl add for mail .tpl
    '{total_paid_round}' => Tools::displayPrice(round($order->total_paid), $this->context->currency, false),
    '{halerove}' => Tools::displayPrice(round($order->total_paid)-($order->total_paid), $this->context->currency, false),
    //end tcl add
  • email orded_conf v /themes/default/mails/cs/order_conf.html
    doplněno zobrazení řádky s novými proměnými Haléřové vyrovnání a Celekem zaokrouhleno

     <tr style="text-align:right">
    <td>&nbsp;</td>
    <td colspan="3" style="background-color:#dde2e6;padding:0.6em 0.4em">Haléřové vyrovnání</td>
    <td style="background-color:#dde2e6;padding:0.6em 0.4em">{halerove}</td>
    </tr><tr style="text-align:right;font-weight:bold">
    <td>&nbsp;</td>
    <td colspan="3" style="background-color:#f1aecf;padding:0.6em 0.4em">Celkem k &uacute;hradě</td>
    <td style="background-color:#f1aecf;padding:0.6em 0.4em">{total_paid_round}</td>
    </tr>

  • definování konstant pro mailové šablony v /classes/order/OrderHistory.php asi není potřeba
    //tcl
    $data['{total_paid_round}'] = Tools::displayPrice(round((float)$order->total_paid), new Currency((int)$order->id_currency), false);
    $data['{halerove}'] = Tools::displayPrice(round((float)$order->total_paid)-($order->total_paid), new Currency((int)$order->id_currency), false);
  • /themes/default/mails/cs/bankwire.txt a /themes/default/mails/cs/bankwire.html
    nahrazeno {total_paid} nově {total_paid_round}

soubory pro faktury:

  • /modules/add_faktura/views/templates/pdf/invoice.tpl
    cislo objednavky nastaveno
    misto {'%06d'|sprintf:$order->id} nově {$fa_prefix_vs}{$fa_ord_inv}
    <td style="width:62%;">{$fa_prefix_vs}{$fa_ord_inv}</td>

soubory pro dodací list

  • /override/classes/order/Order.php
    cislo dodaciho listu nastaveno
    zakomentována celá funkce
    public function setDeliveryNumber($order_invoice_id, $id_shop), místo ní jde ta co je definovaná v /classes/order/Order.php

další soubory

 

 

<br style="margin-left: 30px;" />

 další vylepšení

  • prohazování produktů na hlavní stránce - modul oblbené na domácí stránce
    v administraci nastavit počet zobrazovaných
    doporučené produkty přidávat jednotlivě v kartě asociace produktu, zaškrtnutím kategorie Home (nejvyšší)
    /modules/homefeatured/homefeatured.php
    • bylo
      
      public function hookDisplayHome($params)
          {
              if (!$this->isCached('homefeatured.tpl', $this->getCacheId('homefeatured')))
              {
                  $category = new Category(Context::getContext()->shop->getCategory(), (int)Context::getContext()->language->id);
                  $nb = (int)Configuration::get('HOME_FEATURED_NBR');
                  $products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 8), "position");
                  $this->smarty->assign(array(
                      'products' => $products,
                      'add_prod_display' => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'),
                      'homeSize' => Image::getSize(ImageType::getFormatedName('home')),
                  ));
              }
              return $this->display(__FILE__, 'homefeatured.tpl', $this->getCacheId('homefeatured'));
          }
      


      nově
      
      public function hookDisplayHome($params)
          {
              if (!$this->isCached('homefeatured.tpl', $this->getCacheId('homefeatured')))
              {
                  $category = new Category(Context::getContext()->shop->getCategory(), (int)Context::getContext()->language->id);
                  $nb = (int)Configuration::get('HOME_FEATURED_NBR');
                  //tcl modif implement random sorting help shuffle more than 12, maximaly 24 to two unis with 12
                  $rand_tcl=rand ( 0 , 1 ); 
                  if($rand_tcl==0) {
                  $sort_tcl='asc';} 
                  else {$sort_tcl='desc';};
                  $products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 12), "position",$sort_tcl);
                  
                  //tcl shuffle source <a href="http://forum.c4.cz/post15124.html#p15124">http://forum.c4.cz/post15124.html#p15124</a>
                  shuffle($products);
                  $this->smarty->assign(array(
                      'products' => $products,
                      'add_prod_display' => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'),
                      'homeSize' => Image::getSize(ImageType::getFormatedName('home')),
                  ));
              }
              return $this->display(__FILE__, 'homefeatured.tpl', $this->getCacheId('homefeatured'));
          }<br style="margin-left: 30px;" />
      

 

Aktualizováno Pátek, 02 Prosinec 2016 12:15