From a8ce53006c8599beb82f60ea703f2df4b1a928ab Mon Sep 17 00:00:00 2001
From: 62160052 <62160052@go.buu.ac.th>
Date: Mon, 19 Sep 2022 03:34:40 +0700
Subject: [PATCH] Update Summary fragment to use view model

---
 .../example/cupcake/model/OrderViewModel.kt   | 19 +++++++++++++++----
 app/src/main/res/layout/fragment_summary.xml  |  3 +++
 2 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/com/example/cupcake/model/OrderViewModel.kt b/app/src/main/java/com/example/cupcake/model/OrderViewModel.kt
index d24fc98..4b8e9db 100644
--- a/app/src/main/java/com/example/cupcake/model/OrderViewModel.kt
+++ b/app/src/main/java/com/example/cupcake/model/OrderViewModel.kt
@@ -8,20 +8,24 @@ import java.util.Calendar
 import java.util.Locale
 
 class OrderViewModel : ViewModel() {
-    private val _quantity = MutableLiveData<Int>(0)
+    private val _quantity = MutableLiveData<Int>()
     val quantity: LiveData<Int> = _quantity
 
-    private val _flavor = MutableLiveData<String>("")
+    private val _flavor = MutableLiveData<String>()
     val flavor: LiveData<String> = _flavor
 
-    private val _date = MutableLiveData<String>("")
+    private val _date = MutableLiveData<String>()
     val date: LiveData<String> = _date
 
-    private val _price = MutableLiveData<Double>(0.0)
+    private val _price = MutableLiveData<Double>()
     val price: LiveData<Double> = _price
 
     val dateOptions = getPickupOptions()
 
+    init {
+        resetOrder()
+    }
+
     private fun getPickupOptions(): List<String> {
         val options = mutableListOf<String>()
         val formatter = SimpleDateFormat("E MMM d", Locale.getDefault())
@@ -34,6 +38,13 @@ class OrderViewModel : ViewModel() {
         return options
     }
 
+    fun resetOrder() {
+        _quantity.value = 0
+        _flavor.value = ""
+        _date.value = dateOptions[0]
+        _price.value = 0.0
+    }
+
     fun setQuantity(numberCupcakes: Int) {
         _quantity.value = numberCupcakes
     }
diff --git a/app/src/main/res/layout/fragment_summary.xml b/app/src/main/res/layout/fragment_summary.xml
index bdd8bee..e1455ec 100644
--- a/app/src/main/res/layout/fragment_summary.xml
+++ b/app/src/main/res/layout/fragment_summary.xml
@@ -58,6 +58,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginTop="@dimen/order_summary_margin"
+                    android:text="@{viewModel.quantity.toString()}"
                     tools:text="6 cupcakes" />
 
                 <View
@@ -81,6 +82,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginTop="@dimen/order_summary_margin"
+                    android:text="@{viewModel.flavor}"
                     tools:text="Chocolate" />
 
                 <View
@@ -104,6 +106,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginTop="@dimen/order_summary_margin"
+                    android:text="@{viewModel.date}"
                     tools:text="Sunday" />
 
                 <View
-- 
GitLab