diff --git a/app/models/concerns/price_calculation.rb b/app/models/concerns/price_calculation.rb index b73e43c6..03b9a7ad 100644 --- a/app/models/concerns/price_calculation.rb +++ b/app/models/concerns/price_calculation.rb @@ -4,11 +4,17 @@ module PriceCalculation # Gross price = net price + deposit + tax. # @return [Number] Gross price. def gross_price - ((price + deposit) * (tax / 100 + 1)).round(2) + add_percent(price + deposit, tax) end # @return [Number] Price for the foodcoop-member. def fc_price - (gross_price * (FoodsoftConfig[:price_markup] / 100 + 1)).round(2) + add_percent(gross_price, FoodsoftConfig[:price_markup]) + end + + private + + def add_percent(value, percent) + (value * (percent * 0.01 + 1)).round(2) end end diff --git a/spec/app_config.yml b/spec/app_config.yml index 0bf51d41..1bed23f6 100644 --- a/spec/app_config.yml +++ b/spec/app_config.yml @@ -13,8 +13,9 @@ default: &defaults # true by default to keep compat with older installations, but test with false here use_nick: false + price_markup: 5 + # do we really need the following ones? - price_markup: 5.0 tax_default: 6.0 email_sender: noreply@minimal.test