Jump to content

Problema Con Loyalty Modulo De Fidelización De Clientes


Recommended Posts

Saludos mi problema es que  yo le pongo en el loyalty de cada 1€  en 15 % aunque eso lo hace bien siempre que tenga el precio del producto 3 cifras es decir si es un producto que vale 1000€ falla cogiendo una unica cifra

 

Para que lo veais mas sencillo si poneis el modulo 1punto por cada euro, cuando el precio es 1000 cojera solo el 1 como precio si el precio es 6000€ el bono sera 0.9   (6(primera cifra de los numeros de 4) *0.15 )

 

 

Uso prestashop

 
modulos actualizados
 
 
muchas gracias y si hay alguna duda con el problema porfavor decirmelo y lo explico mejor gracias desde ya un saludo.
Link to comment
Share on other sites

Lo primero muchas gracias por el interes te pongo dos enlaces para que veas exactamente lo que es

 

Un ejemplo correcto http://www.dabra.es/alianzas-de-platino-argyor/14154-alianza-boda-platino-y-diamantes-0593003.html

 

Uno erroneo http://www.dabra.es/crea-tu-joya-con-diamantes/11310-anillo.html#/1156-metal-oro_blanco_18_qt/1161-pureza_de_diamante-si1/1167-modelo_de_anillo-anillo_sofia_/1189-color_de_diamante-_g_blanco_intenso/1192-peso_de_diamante-1_0_quilates_unos_6_4mm_de_ancho

 

En cuanto el precio pasa a 4 cifras el bono pasa a ser el 15% de la primera cifra en este caso es 6 pues el bono es 0,9 (6x0,15=0,9)

 

 

Gracias de nuevo

Link to comment
Share on other sites

Buenos días.

Acabo de comprobarlo en un prestashop recien instalado, con el modulo actualizado y no genera ese problema. Antes de nada, si puedes actualizar tu módulo, actualízalo.

 

Por lo que veo, me da la sensación que está cogiendo el precio formateado (6 600 € en el ejemplo) y tratando de usarlo para hacer el calculo (en vez de usar el precio sin formatear). Esto causaría, que al transformar dicha cadena a numero, eliminara todo lo que hay después del espacio (y por eso solo coge el primer carácter)

Link to comment
Share on other sites

Buenos días.

Acabo de comprobarlo en un prestashop recien instalado, con el modulo actualizado y no genera ese problema. Antes de nada, si puedes actualizar tu módulo, actualízalo.

 

Por lo que veo, me da la sensación que está cogiendo el precio formateado (6 600 € en el ejemplo) y tratando de usarlo para hacer el calculo (en vez de usar el precio sin formatear). Esto causaría, que al transformar dicha cadena a numero, eliminara todo lo que hay después del espacio (y por eso solo coge el primer carácter)

He instalado un prestashop ahora mismo le e puesto 1€ 1punto y un producto que vale 6000 me da 6

t8ltus.png

 

¿Como podriamos solucionarlo? te agradezco mucho la ayuda

Link to comment
Share on other sites

Como te comenté, hay un error de conversión en el js del tema (themes/default-bootstrap/js/modules/loyalty/loyalty.js) :

 

$(document).ready(function() {
    $(document).on('change', '#our_price_display', function(e){
        updateLoyaltyView(parseInt($('#our_price_display').text()));
    })
    updateLoyaltyView(parseInt($('#our_price_display').text()));
});

Como ese precio se convierte a entero (y el segundo caracter es un espacio) esto hace que solo use el primer caracter como precio del articulo.

Podrias arreglarlo de la siguiente forma, aunque no creo que debiera ser asi ...

 

$(document).ready(function() {
    $(document).on('change', '#our_price_display', function(e){
        updateLoyaltyView(parseInt($('#our_price_display').text().replace(" ", "")));
    })
    updateLoyaltyView(parseInt($('#our_price_display').text().replace(" ", "")));
});
Edited by Gabriel Perez (see edit history)
Link to comment
Share on other sites

  • nadie locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...