From 1edc16f08719234238618cd061e060626cb6e9f9 Mon Sep 17 00:00:00 2001 From: 62160052 <62160052@go.buu.ac.th> Date: Mon, 19 Sep 2022 02:25:19 +0700 Subject: [PATCH] Create pickup options list --- .../com/example/cupcake/model/OrderViewModel.kt | 17 +++++++++++++++++ app/src/main/res/layout/fragment_flavor.xml | 16 ++++++++-------- 2 files changed, 25 insertions(+), 8 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 8b2eaea..d24fc98 100644 --- a/app/src/main/java/com/example/cupcake/model/OrderViewModel.kt +++ b/app/src/main/java/com/example/cupcake/model/OrderViewModel.kt @@ -3,6 +3,9 @@ package com.example.cupcake.model import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel +import java.text.SimpleDateFormat +import java.util.Calendar +import java.util.Locale class OrderViewModel : ViewModel() { private val _quantity = MutableLiveData<Int>(0) @@ -17,6 +20,20 @@ class OrderViewModel : ViewModel() { private val _price = MutableLiveData<Double>(0.0) val price: LiveData<Double> = _price + val dateOptions = getPickupOptions() + + private fun getPickupOptions(): List<String> { + val options = mutableListOf<String>() + val formatter = SimpleDateFormat("E MMM d", Locale.getDefault()) + val calendar = Calendar.getInstance() + // Create a list of dates starting with the current date and the following 3 dates + repeat(4) { + options.add(formatter.format(calendar.time)) + calendar.add(Calendar.DATE, 1) + } + return options + } + fun setQuantity(numberCupcakes: Int) { _quantity.value = numberCupcakes } diff --git a/app/src/main/res/layout/fragment_flavor.xml b/app/src/main/res/layout/fragment_flavor.xml index aa45a11..45129b9 100644 --- a/app/src/main/res/layout/fragment_flavor.xml +++ b/app/src/main/res/layout/fragment_flavor.xml @@ -55,32 +55,32 @@ android:id="@+id/chocolate" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:checked="@{viewModel.flavor.equals(@string/vanilla)}" - android:onClick="@{() -> viewModel.setFlavor(@string/vanilla)}" + android:checked="@{viewModel.flavor.equals(@string/chocolate)}" + android:onClick="@{() -> viewModel.setFlavor(@string/chocolate)}" android:text="@string/chocolate" /> <RadioButton android:id="@+id/red_velvet" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:checked="@{viewModel.flavor.equals(@string/vanilla)}" - android:onClick="@{() -> viewModel.setFlavor(@string/vanilla)}" + android:checked="@{viewModel.flavor.equals(@string/red_velvet)}" + android:onClick="@{() -> viewModel.setFlavor(@string/red_velvet)}" android:text="@string/red_velvet" /> <RadioButton android:id="@+id/salted_caramel" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:checked="@{viewModel.flavor.equals(@string/vanilla)}" - android:onClick="@{() -> viewModel.setFlavor(@string/vanilla)}" + android:checked="@{viewModel.flavor.equals(@string/salted_caramel)}" + android:onClick="@{() -> viewModel.setFlavor(@string/salted_caramel)}" android:text="@string/salted_caramel" /> <RadioButton android:id="@+id/coffee" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:checked="@{viewModel.flavor.equals(@string/vanilla)}" - android:onClick="@{() -> viewModel.setFlavor(@string/vanilla)}" + android:checked="@{viewModel.flavor.equals(@string/coffee)}" + android:onClick="@{() -> viewModel.setFlavor(@string/coffee)}" android:text="@string/coffee" /> </RadioGroup> -- GitLab