From db8b71418b766258a7a4bda91e496b1b03cb28cd Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Fri, 20 Mar 2020 15:43:23 -0300 Subject: Let all apps use the same Amount class The wallet now also uses taler-kotlin-common --- .../src/main/java/net/taler/merchantpos/order/Order.kt | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'merchant-terminal/src/main/java/net/taler/merchantpos/order/Order.kt') diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/order/Order.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/order/Order.kt index 5954e63..ff6e6b7 100644 --- a/merchant-terminal/src/main/java/net/taler/merchantpos/order/Order.kt +++ b/merchant-terminal/src/main/java/net/taler/merchantpos/order/Order.kt @@ -16,10 +16,11 @@ package net.taler.merchantpos.order +import net.taler.common.Amount import net.taler.merchantpos.config.Category import net.taler.merchantpos.config.ConfigProduct -data class Order(val id: Int, val availableCategories: Map) { +data class Order(val id: Int, val currency: String, val availableCategories: Map) { val products = ArrayList() val title: String = id.toString() val summary: String @@ -29,17 +30,14 @@ data class Order(val id: Int, val availableCategories: Map) { "$quantity x ${category.localizedName}" }.joinToString() } - val total: Double + val total: Amount get() { - var total = 0.0 + var total = Amount.zero(currency) products.forEach { product -> - val price = product.priceAsDouble - total += price * product.quantity + total += product.price * product.quantity } return total } - val totalAsString: String - get() = String.format("%.2f", total) operator fun plus(product: ConfigProduct): Order { val i = products.indexOf(product) -- cgit v1.2.3