diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/components/NumericEntryScreen.kt b/app/src/main/java/com/mob/utsmyanmar/ui/components/NumericEntryScreen.kt index 5fc4ee0..ce20c8f 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/components/NumericEntryScreen.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/components/NumericEntryScreen.kt @@ -16,6 +16,7 @@ import androidx.compose.foundation.layout.statusBarsPadding import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.icons.Icons import androidx.compose.material.icons.automirrored.rounded.Backspace +import androidx.compose.material.icons.rounded.Backspace import androidx.compose.material3.Button import androidx.compose.material3.ButtonDefaults import androidx.compose.material3.Card @@ -25,7 +26,9 @@ import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.shadow import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.mob.utsmyanmar.ui.theme.Color @@ -178,3 +181,62 @@ fun NumericEntryScreen( } } } + +@Composable +private fun NumericKeypad( + keys: List>, + onKeyClick: (String) -> Unit +) { + Column( + modifier = Modifier.fillMaxWidth(), + verticalArrangement = Arrangement.spacedBy(6.dp) + ) { + keys.forEach { row -> + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.spacedBy(6.dp) + ) { + row.forEach { key -> + KeyPadButton( + text = key, + modifier = Modifier.weight(1f), + onClick = { onKeyClick(key) } + ) + } + } + } + } +} + +@Composable +private fun KeyPadButton( + text: String, + modifier: Modifier = Modifier, + onClick: () -> Unit +) { + val enabled = text.isNotBlank() + + Box( + modifier = modifier + .height(66.dp) + .shadow( + elevation = 2.dp, + shape = RoundedCornerShape(8.dp), + clip = false + ) + .background( + color = Color.White, + shape = RoundedCornerShape(8.dp) + ) + .clickable(enabled = enabled) { onClick() }, + contentAlignment = Alignment.Center + ) { + Text( + text = text, + color = if (enabled) Color.LegacyRed else Color.White, + fontSize = 24.sp, + fontWeight = FontWeight.Normal, + textAlign = TextAlign.Center + ) + } +} diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/navigation/AppNavGraph.kt b/app/src/main/java/com/mob/utsmyanmar/ui/navigation/AppNavGraph.kt index 220364b..8d83545 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/navigation/AppNavGraph.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/navigation/AppNavGraph.kt @@ -128,6 +128,9 @@ fun AppNavGraph( } } } + val transProcessViewModel: TransProcessViewModel = hiltViewModel(activity) + + transProcessViewModel.resetTransactionStatus() DashboardScreen2( dashboardUiState = dashboardUiState, deviceInfo = deviceInfo, diff --git a/app/src/main/java/com/mob/utsmyanmar/utils/MockCard.kt b/app/src/main/java/com/mob/utsmyanmar/utils/MockCard.kt index 43047d1..17941b9 100644 --- a/app/src/main/java/com/mob/utsmyanmar/utils/MockCard.kt +++ b/app/src/main/java/com/mob/utsmyanmar/utils/MockCard.kt @@ -31,22 +31,22 @@ object MockData { // ) //debit - private val mockCardData: MockCardData = MockCardData( - cardNo="9503032443884321", - expDate="3102", - cardScheme="MPU", - cardHolderName="Htin Kyaw Win", - iccData="9503032443884321=310220100" - ) - // private val mockCardData: MockCardData = MockCardData( -// cardNo="6244310039574344", -// expDate="3011", +// cardNo="9503032443884321", +// expDate="3102", // cardScheme="MPU", // cardHolderName="Htin Kyaw Win", -// iccData="6244310039574344=30112011558125900000" +// iccData="9503032443884321=310220100" // ) + private val mockCardData: MockCardData = MockCardData( + cardNo="6244310039574344", + expDate="3011", + cardScheme="MPU", + cardHolderName="Htin Kyaw Win", + iccData="6244310039574344=30112011558125900000" + ) + fun generateMPUCard(): CardDataX = CardDataX().apply { pan = mockCardData.cardNo exp = mockCardData.expDate