From fc4b8173089480a25a81b7568bd02c78e6399c2b Mon Sep 17 00:00:00 2001 From: kizzy Date: Tue, 21 Jul 2026 13:10:36 +0700 Subject: [PATCH] latest saved --- .../utsmyanmar/ui/emv/EmvTransactionRoute.kt | 20 +++++++++---------- .../utsmyanmar/ui/navigation/AppNavGraph.kt | 20 ++++++++++--------- .../mob/utsmyanmar/ui/navigation/Routes.kt | 5 +---- .../ui/processing_card/ProcessingCardRoute.kt | 4 ++-- .../ui/sending_to_host/SendingToHostRoute.kt | 10 +++++----- 5 files changed, 29 insertions(+), 30 deletions(-) diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/emv/EmvTransactionRoute.kt b/app/src/main/java/com/mob/utsmyanmar/ui/emv/EmvTransactionRoute.kt index 9b021ac..2f2d09c 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/emv/EmvTransactionRoute.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/emv/EmvTransactionRoute.kt @@ -32,7 +32,7 @@ fun EmvTransactionRoute( onNavigateTransactionResult: () -> Unit, onNavigateInputRrn: () -> Unit, onNavigateCardWaiting: () -> Unit, - onNavigateError: (String) -> Unit, + onNavigateError: (isSuccess:Boolean, messsage:String) -> Unit, onNavigateMain: () -> Unit ) { val emvResultStatus by emvViewModel.emvResultStatus.observeAsState() @@ -69,7 +69,7 @@ fun EmvTransactionRoute( val tradeData = emvViewModel.getTradeData() if (tradeData == null) { - onNavigateError("Please try again") + onNavigateError(false,"Please try again") return } @@ -115,12 +115,12 @@ fun EmvTransactionRoute( EmvResultStatus.TRY_AGAIN -> { sharedViewModel.set_errorFragmentMsg("Card Not Supported!") - onNavigateError("Card Not Supported!") + onNavigateError(false,"Card Not Supported!") } EmvResultStatus.OFFLINE_DECLINE -> { sharedViewModel.set_errorFragmentMsg("Offline Denial") - onNavigateError("Offline Denial") + onNavigateError(false,"Offline Denial") } EmvResultStatus.CONFIRM_CODE_VERIFY -> onNavigateCardWaiting() @@ -131,7 +131,7 @@ fun EmvTransactionRoute( EmvResultStatus.PIN_MISMATCH -> { sharedViewModel.set_errorFragmentMsg("PIN MISMATCH!") - onNavigateError("PIN MISMATCH!") + onNavigateError(false,"PIN MISMATCH!") } EmvResultStatus.PIN_EMPTY -> { @@ -164,27 +164,27 @@ fun EmvTransactionRoute( EmvResultStatus.REVERSAL_FAIL -> { sharedViewModel.set_errorFragmentMsg("Reversal failed!") - onNavigateError("Reversal failed!") + onNavigateError(false,"Reversal failed!") } EmvResultStatus.REVERSAL_SUCCESS -> { sharedViewModel.set_successFragmentMsg("Reversal success!") - onNavigateMain() + onNavigateError(true,"Reversal success!") } EmvResultStatus.FAIL -> { - onNavigateError("Transaction failed") + onNavigateError(false,"Transaction failed") } EmvResultStatus.NETWORK_ERROR -> { - onNavigateError("Com Error!") + onNavigateError(false,"Com Error!") } EmvResultStatus.ERROR -> { loadingMessage = null val mapped = mapEmvError(errorCodeMsg) sharedViewModel.set_errorFragmentMsg(mapped) - onNavigateError(mapped) + onNavigateError(false,mapped) } else -> LogUtil.d(TAG, "Unhandled EmvResult Status : $status") 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 8cb7cdd..b873dcc 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 @@ -91,7 +91,7 @@ fun AppNavGraph( val sharedViewModel: SharedViewModel = hiltViewModel(activity) SignaturePad( onBack = { navController.popBackStack() }, - onConfirm = { _, bitmap, signatureBlob -> + onConfirm = { bitmap, signatureBlob -> sharedViewModel.signBitmap = bitmap sharedViewModel.updateSignatureBlob(signatureBlob) navController.navigate(Routes.TransactionResult.route) { @@ -592,9 +592,9 @@ fun AppNavGraph( launchSingleTop = true } }, - onNavigateError = { message -> - navController.navigate(Routes.TransactionError.createRoute(message)) { - popUpTo(Routes.ProcessingCard.route) { + onNavigateError = { isSuccess,message -> + navController.navigate(Routes.TransactionError.createRoute(isSuccess,message)) { + popUpTo(Routes.Processing.route) { inclusive = true } launchSingleTop = true @@ -681,8 +681,8 @@ fun AppNavGraph( launchSingleTop = true } }, - onNavigateError = { message -> - navController.navigate(Routes.TransactionError.createRoute(message)) { + onNavigateError = { isSuccess,message -> + navController.navigate(Routes.TransactionError.createRoute(isSuccess,message)) { popUpTo(Routes.EmvTransaction.route) { inclusive = true } @@ -764,8 +764,8 @@ fun AppNavGraph( launchSingleTop = true } }, - onNavigateError = { message -> - navController.navigate(Routes.TransactionError.createRoute(message)) { + onNavigateError = { isSuccess,message -> + navController.navigate(Routes.TransactionError.createRoute(isSuccess,message)) { popUpTo(Routes.Processing.route) { inclusive = true } @@ -819,9 +819,11 @@ fun AppNavGraph( } ) ) { backStackEntry -> - val message = backStackEntry.arguments?.getString("message").orEmpty().trim() + val isSuccess = backStackEntry.arguments?.getBoolean("isSuccess") ?: false + val message = backStackEntry.arguments?.getString("message").orEmpty() TransactionErrorScreen( + isSuccess = isSuccess, message = message, onDone = { navController.navigate(Routes.Dashboard.route) { diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/navigation/Routes.kt b/app/src/main/java/com/mob/utsmyanmar/ui/navigation/Routes.kt index d5ac4ef..c083cb3 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/navigation/Routes.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/navigation/Routes.kt @@ -31,10 +31,7 @@ sealed class Routes(val route: String) { data object TransactionResult : Routes("transaction_result") - data object TransactionError : Routes("transaction_error/{message}") { - fun createRoute(message: String): String = - "transaction_error/${Uri.encode(message.ifBlank { " " })}" - } + data object PrintReceipt : Routes("print_receipt") data object Version : Routes("version") data object Functions : Routes("functions") diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/processing_card/ProcessingCardRoute.kt b/app/src/main/java/com/mob/utsmyanmar/ui/processing_card/ProcessingCardRoute.kt index 70c74ad..c182e93 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/processing_card/ProcessingCardRoute.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/processing_card/ProcessingCardRoute.kt @@ -13,7 +13,7 @@ fun ProcessingCardRoute( onNavigateInputAmount: () -> Unit, onNavigateProcessing: () -> Unit, onNavigateEmvTransaction: () -> Unit, - onNavigateError: (String) -> Unit, + onNavigateError: (isSuccess: Boolean, message: String) -> Unit, onBack: () -> Unit, onShowDecline: (String) -> Unit ) { @@ -31,7 +31,7 @@ fun ProcessingCardRoute( ProcessingCardUiEvent.NavigateToInputAmount -> onNavigateInputAmount() ProcessingCardUiEvent.NavigateToProcessing -> onNavigateProcessing() ProcessingCardUiEvent.NavigateToEmvTransaction -> onNavigateEmvTransaction() - is ProcessingCardUiEvent.NavigateToError -> onNavigateError(event.message) + is ProcessingCardUiEvent.NavigateToError -> onNavigateError(false,event.message) is ProcessingCardUiEvent.ShowDeclineAndBack -> { onShowDecline(event.message) onBack() diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/sending_to_host/SendingToHostRoute.kt b/app/src/main/java/com/mob/utsmyanmar/ui/sending_to_host/SendingToHostRoute.kt index 3f99d39..ff50eab 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/sending_to_host/SendingToHostRoute.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/sending_to_host/SendingToHostRoute.kt @@ -25,7 +25,7 @@ fun ProcessingRoute( settlementViewModel: SettlementViewModel, onNavigateTransactionResult: () -> Unit, onNavigateSignature: () -> Unit, - onNavigateError: (String) -> Unit, + onNavigateError: (Boolean,String) -> Unit, onNavigateMain: ()-> Unit ) { @@ -105,7 +105,7 @@ private fun EmvProcessingContent( sharedViewModel: SharedViewModel, emvTransactionViewModel: EmvTransactionProcessViewModel, onNavigateTransactionResult: () -> Unit, - onNavigateError: (String) -> Unit, + onNavigateError: (Boolean,String) -> Unit, onNavigateMain: () -> Unit ) { val emvTransStatus by emvTransactionViewModel.getTransStatus().observeAsState() @@ -134,13 +134,13 @@ private fun EmvProcessingContent( TransResultStatus.REVERSAL_SUCCESS -> { sharedViewModel.payDetail.value = emvTransactionViewModel.payDetailResult.value sharedViewModel.set_successFragmentMsg("Reversal success!") - onNavigateMain() + onNavigateError(true,"Reversal success!") } TransResultStatus.REVERSAL_FAIL -> { sharedViewModel.payDetail.value = emvTransactionViewModel.payDetailResult.value sharedViewModel.set_errorFragmentMsg("Reversal failed!") - onNavigateError("Reversal failed!") + onNavigateError(false,"Reversal failed!") } TransResultStatus.ERROR, @@ -149,7 +149,7 @@ private fun EmvProcessingContent( ?.substringAfter(":") ?.takeIf { it.isNotBlank() } ?: "Transaction error" - onNavigateError(message) + onNavigateError(false,message) } else -> {}