Jump to content
larose

[SOLUCIONADO] Redondeo de precios con un céntimo con combinaciones error en PS 1.6.1.4

Recommended Posts

Son muchos los hilos que he estado viendo sobre usuarios que se quejan porque ven en su ficha de producto un precio similar a:

59,01 €

Cuando en realidad lo que quieren es que muestre:

59,00 €

 

Y aunque ellos tienen bien puesto el precio sin iva en el Backoffice con el valor 59,00 luego en la ficha de producto se muestra mal. 

 

Esto principalmente es debido al orden en el que Prestashop aplica el iva de los productos y las variaciones (recuerdo que esta corrección es para los productos con combinaciones que muestran un desvío decimal en el precio).

 

Para corregirlo hay que editar el archivo /themes/mitema/js/product.js

 

Remplazar sólo las lineas en negrita (línea 630 aprox):

 

// Apply Tax if necessary

if (noTaxForThisProduct || customerGroupWithoutTax)
{
basePriceDisplay = basePriceWithoutTax;
priceWithDiscountsDisplay = priceWithDiscountsWithoutTax;
}
else
{
basePriceDisplay = basePriceWithoutTax * (taxRate/100 + 1);
priceWithDiscountsDisplay = priceWithDiscountsWithoutTax * (taxRate/100 + 1);
 
Por estas otras:
 
//MODIFICACIÓN PARA CORREGIR EL BUG DECIMAL O,O1 QUE APARECE EN LOS REDONDEOS.
var redondeadoBase = basePriceWithoutTax * (taxRate/100 + 1);
var dosdecimales = redondeadoBase.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0];
 
basePriceDisplay = Number(dosdecimales);
priceWithDiscountsDisplay = priceWithDiscountsWithoutTax * (taxRate/100 + 1);
var auxPriceWDisplay = priceWithDiscountsDisplay.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0];
priceWithDiscountsDisplay = Number(auxPriceWDisplay);
 
 
Con esto, ahora la ficha de producto ya debería mostrar el precio sin el céntimo "de sobra".
 
Esto lo he probado en versiones PS 1.6.1.4 en adelante.
 

Share this post


Link to post
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...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More