Mindestbestellwert mit Nachkommastellen


#1

Hi,

konnte irgendwie mit einer Suche nichts passendes finden.

Problemstellung Mindestbestellwert.
Den muss ich auf 17,85 € stellen.
Kann ich auch unter den Grundeinstellungen so eintragen. Beim Testen zeigt sich aber, dass der Shop die Bestellung zulässt, sobald ich 17 € erreicht habe. Die Nachkommastellen werden somit nicht berücksichtigt.

Hat das jemand schon einmal gehabt und weiss ne Lösung?

Gruß
Christian


#2

Schon mal …

mit 17.85 versucht
in die DB geschaut was im entsprechenden Feld steht?


#3

Hallo,

trage ich 17,85 ein, macht Oxid direkt 17.85 daraus.
In der DB steht auch 17.85

Grüsse


#4

Hallo

ich hab es mal kurz im Demo-Shop getestet. Aus meiner Sicht verhält er sich gleich.

Schon mal versucht den Wert mit Komma direkt in die SQL zu schreiben?


#5

Das scheint ein Bug in Oxid zu sein. In der Funktion isBelowMinOrderPrice, in oxbasket, wird der Wert als integer übergeben, wodurch die Zahlen nach dem Komma abgeschnitten werden.

Original:

$dMinOrderPrice = oxPrice::getPriceInActCurrency( ( integer ) $sConfValue );

So funktioniert es:

$dMinOrderPrice = oxPrice::getPriceInActCurrency( ( double ) $sConfValue );

Ich schaue mal in den Bugtracker nach ob es schon bekannt ist. Ansonsten mache ich einen auf.

[B]Update ~ Bug gemeldet:[/B] https://bugs.oxid-esales.com/view.php?id=4859

Als Übergangslösung kann man sich ein Modul erstellen, dass die Funktion isBelowMinOrderPrice von oxbasket, wie oben beschrieben, überschreibt.