Jump to content

Arrotondare i prezzi


gianvi

Recommended Posts

Dopo aver quasi finito l' immissione dei primi prodotti con il negozio praticamente pronto per essere messo on-lin mi sono accorto di una cosa che non e' proprio carina.

Prezzo articolo : 125,00
applico lo sconto del 30% e ottengo 87,50
Per carita' tutto giusto, ma con altre pecentuali si ttengono 80,12.
Come sai fa' ad arrotondare 80,12 a 80,00 ?
Che file sono da toccare?

Sono riuscito in product-list.tpl sostituendo floor nella riga 18
{if !$priceDisplay || $priceDisplay == 2}

{convertPrice price=$product.price|floor}{if $priceDisplay == 2} {l s='+Tx'}{/if}
{/if}

ma quandi visualizzo il singolo prodotto, proprio non ne vuole sapere.
Usando Firebug ho individuato le linee in product.tpl (riga 195)

{if !$priceDisplay || $priceDisplay == 2}
{convertPrice price=$product->getPrice(true, $smarty.const.NULL, 2)}
{l s='tax incl.'}
{/if}
{if $priceDisplay == 1}
{convertPrice price=$product->getPrice(false, $smarty.const.NULL, 2)}
{l s='tax excl.'}
{/if}

modificando cosi'


{if !$priceDisplay || $priceDisplay == 2}
{convertPrice price=$product->getPrice(true)|floor}
{l s='tax incl.'}
{/if}
{if $priceDisplay == 1}
{convertPrice price=$product->getPrice(false)|floor}
{l s='tax excl.'}
{/if}

la cosa funziona nel momento dell' apparizione del prodotto ma poi svanisce immediatamente.
che altro comando entra a modifiacre questa istruzione ??

Help Help
Link to comment
Share on other sites

Perchè in questo caso tu vai a modificare cio che l'utente vede, non il prezzo nel db. Dovresti vedere come viene fatto il conto (c'è in Product.php un metodo che lo fa getPriceStatic se non erro). Credo si debba intervenire la.
Modifiche nei file TPL, come ti dicevo sopra, servono solo per ciò che si visualizza dall'utente.

In pratica, tu vai ad eseguire una query, ed il risultato ritornato lo arrotondi. Appena metti il prodotto in carrello quello compare senza arrotondamenti.

Link to comment
Share on other sites

grazie mille.
durante la notte ... ero giunto anch'io che i tpl sono solo di visualizzazione.

ho cercato in product.php ma non ho trovato il getprice che mi indichi.

Qcuno ha gia' fatto queste modifiche ?
Penso di si' perche' proporre articoli da 700 euro scontati a 512,22 non e' proprio bello; molto meglio 512,00 non vi sembra ?

Link to comment
Share on other sites

grazie mille.
durante la notte ... ero giunto anch'io che i tpl sono solo di visualizzazione.

ho cercato in product.php ma non ho trovato il getprice che mi indichi.

Qcuno ha gia' fatto queste modifiche ?
Penso di si' perche' proporre articoli da 700 euro scontati a 512,22 non e' proprio bello; molto meglio 512,00 non vi sembra ?


Product.php nella cartella classes, non il file product.php nella root di prestashop
Link to comment
Share on other sites

  • 3 weeks later...
  • 3 years later...

classes/Cart.php

 

in questo file si gestisce tutta l'attività del carrello.

 

cercare la funzione Tools::ps_round e valutare le opportune modifiche di perfezionamento se il calcolo è errato

 

cercare poi la stessa funzione in altri file per gestire anche la visualizzazione lato front-end e admin senza dover modificare template o tpl

 

Saluti

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
×
×
  • Create New...