diff --git a/app/src/main/java/net/novagamestudios/kaffeekasse/data/KnownItems.kt b/app/src/main/java/net/novagamestudios/kaffeekasse/data/KnownItems.kt index 1baf58a3422d8b8a43e962c10a95f58526d85225..e4c0b402b4f4ef9ab35e61f40ae879cba5cc25ed 100644 --- a/app/src/main/java/net/novagamestudios/kaffeekasse/data/KnownItems.kt +++ b/app/src/main/java/net/novagamestudios/kaffeekasse/data/KnownItems.kt @@ -62,6 +62,7 @@ val KnownItem.category get() = when (this) { Yogurette -> Category.Snack KinderChocolate -> Category.Snack NutsRoyalNuts -> Category.Snack + Katjes -> Category.Snack CujaMaraSplit -> Category.IceCream Magnum -> Category.IceCream NUII -> Category.IceCream @@ -143,6 +144,7 @@ val KnownItem.cleanProductName get() = when (this) { Tissues -> "Taschentücher" ThreeDPrintingPerGram -> "3D-Druck" Euglueh -> "Euglüh" + Katjes -> "Katjes" } val KnownItem.cleanVariantName get() = when (this) { Bier330 -> "0,33L" @@ -159,6 +161,7 @@ val KnownItem.cleanVariantName get() = when (this) { CoffeeSmall -> "klein" CoffeeLarge -> "groß" HariboBag -> "Beutel" + Katjes -> "Beutel" DuplexColor -> "Farbe" DuplexBlackWhite -> "S/W" SimplexColor -> "Farbe" @@ -189,7 +192,7 @@ val KnownItem.estimatedPrice get() = when (this) { EngelbertNatural -> null EngelbertSprudel -> null Espresso -> 0.19 - Erdnuesse -> 1.10 + Erdnuesse -> 1.30 Fanta -> 1.55 Fassbrause -> 0.82 Gerolsteiner -> 0.93 @@ -229,6 +232,7 @@ val KnownItem.estimatedPrice get() = when (this) { Tissues -> null ThreeDPrintingPerGram -> null Euglueh -> null + Katjes -> 0.99 } val KnownItem.drawableResource get() = when (this) { @@ -282,6 +286,7 @@ val KnownItem.drawableResource get() = when (this) { Trolli -> R.drawable.trolli_logo Twix -> R.drawable._560px_twix_logo_svg Yogurette -> R.drawable.yogurette_logo + Katjes -> null // IceCream IceCornetto -> null diff --git a/app/src/main/java/net/novagamestudios/kaffeekasse/model/kaffeekasse/KnownItem.kt b/app/src/main/java/net/novagamestudios/kaffeekasse/model/kaffeekasse/KnownItem.kt index 014798eb4003df4835ed3f4f9fa9d81ade1c7f40..be3a637111ae8176df501c92450a89850771f4bd 100644 --- a/app/src/main/java/net/novagamestudios/kaffeekasse/model/kaffeekasse/KnownItem.kt +++ b/app/src/main/java/net/novagamestudios/kaffeekasse/model/kaffeekasse/KnownItem.kt @@ -150,6 +150,7 @@ enum class KnownItem( MioMioMate ("259", "MioMio Mate"), ThreeDPrintingPerGram ("256", "3D-Druck pro gramm"), Euglueh ("173", "Euglüh"), + Katjes ("254", "Katjes"), ; enum class Category { ColdBeverage, diff --git a/app/src/main/java/net/novagamestudios/kaffeekasse/ui/kaffeekasse/components/cards/Item.kt b/app/src/main/java/net/novagamestudios/kaffeekasse/ui/kaffeekasse/components/cards/Item.kt index 5f706ad794dbcfd97fc577f267cd1c2c2c8422a0..97551416c9436aeb0fa45f1731cb191a50fb268e 100644 --- a/app/src/main/java/net/novagamestudios/kaffeekasse/ui/kaffeekasse/components/cards/Item.kt +++ b/app/src/main/java/net/novagamestudios/kaffeekasse/ui/kaffeekasse/components/cards/Item.kt @@ -92,13 +92,6 @@ fun ItemCard( } ItemTitle(item) ItemInformation(item) - if (settings.developerMode) ProvideTextStyle(MaterialTheme.typography.labelSmall) { - Row { - Text(item.id) - Spacer(Modifier.weight(1f)) - Text(item.knownItem?.name ?: "Unknown") - } - } fun <T> buttonsAnimationSpec() = spring<T>(stiffness = Spring.StiffnessMedium) AnimatedVisibility( @@ -113,6 +106,13 @@ fun ItemCard( onRemove = onRemove ) } + if (settings.developerMode) ProvideTextStyle(MaterialTheme.typography.labelSmall) { + Row { + Text(item.id) + Spacer(Modifier.weight(1f)) + Text(item.knownItem?.name ?: "Unknown") + } + } } @Composable @@ -147,11 +147,15 @@ private fun ItemInformation( } } +// TODO move private fun List<Transaction>.findLastUnitPrice(item: ManualBillDetails.Item): Double? { val lastPurchase = this .map { it.purpose } .filterIsInstance<Transaction.Purpose.Purchase>() - .firstOrNull { it.knownId == item.id } + .firstOrNull { + val knownId = it.knownId + if (knownId != null) knownId == item.id else it.itemName == item.name + } return lastPurchase?.unitPrice }