latest saved
This commit is contained in:
parent
003d7e7a21
commit
fc4b817308
@ -32,7 +32,7 @@ fun EmvTransactionRoute(
|
|||||||
onNavigateTransactionResult: () -> Unit,
|
onNavigateTransactionResult: () -> Unit,
|
||||||
onNavigateInputRrn: () -> Unit,
|
onNavigateInputRrn: () -> Unit,
|
||||||
onNavigateCardWaiting: () -> Unit,
|
onNavigateCardWaiting: () -> Unit,
|
||||||
onNavigateError: (String) -> Unit,
|
onNavigateError: (isSuccess:Boolean, messsage:String) -> Unit,
|
||||||
onNavigateMain: () -> Unit
|
onNavigateMain: () -> Unit
|
||||||
) {
|
) {
|
||||||
val emvResultStatus by emvViewModel.emvResultStatus.observeAsState()
|
val emvResultStatus by emvViewModel.emvResultStatus.observeAsState()
|
||||||
@ -69,7 +69,7 @@ fun EmvTransactionRoute(
|
|||||||
|
|
||||||
val tradeData = emvViewModel.getTradeData()
|
val tradeData = emvViewModel.getTradeData()
|
||||||
if (tradeData == null) {
|
if (tradeData == null) {
|
||||||
onNavigateError("Please try again")
|
onNavigateError(false,"Please try again")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,12 +115,12 @@ fun EmvTransactionRoute(
|
|||||||
|
|
||||||
EmvResultStatus.TRY_AGAIN -> {
|
EmvResultStatus.TRY_AGAIN -> {
|
||||||
sharedViewModel.set_errorFragmentMsg("Card Not Supported!")
|
sharedViewModel.set_errorFragmentMsg("Card Not Supported!")
|
||||||
onNavigateError("Card Not Supported!")
|
onNavigateError(false,"Card Not Supported!")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.OFFLINE_DECLINE -> {
|
EmvResultStatus.OFFLINE_DECLINE -> {
|
||||||
sharedViewModel.set_errorFragmentMsg("Offline Denial")
|
sharedViewModel.set_errorFragmentMsg("Offline Denial")
|
||||||
onNavigateError("Offline Denial")
|
onNavigateError(false,"Offline Denial")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.CONFIRM_CODE_VERIFY -> onNavigateCardWaiting()
|
EmvResultStatus.CONFIRM_CODE_VERIFY -> onNavigateCardWaiting()
|
||||||
@ -131,7 +131,7 @@ fun EmvTransactionRoute(
|
|||||||
|
|
||||||
EmvResultStatus.PIN_MISMATCH -> {
|
EmvResultStatus.PIN_MISMATCH -> {
|
||||||
sharedViewModel.set_errorFragmentMsg("PIN MISMATCH!")
|
sharedViewModel.set_errorFragmentMsg("PIN MISMATCH!")
|
||||||
onNavigateError("PIN MISMATCH!")
|
onNavigateError(false,"PIN MISMATCH!")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.PIN_EMPTY -> {
|
EmvResultStatus.PIN_EMPTY -> {
|
||||||
@ -164,27 +164,27 @@ fun EmvTransactionRoute(
|
|||||||
|
|
||||||
EmvResultStatus.REVERSAL_FAIL -> {
|
EmvResultStatus.REVERSAL_FAIL -> {
|
||||||
sharedViewModel.set_errorFragmentMsg("Reversal failed!")
|
sharedViewModel.set_errorFragmentMsg("Reversal failed!")
|
||||||
onNavigateError("Reversal failed!")
|
onNavigateError(false,"Reversal failed!")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.REVERSAL_SUCCESS -> {
|
EmvResultStatus.REVERSAL_SUCCESS -> {
|
||||||
sharedViewModel.set_successFragmentMsg("Reversal success!")
|
sharedViewModel.set_successFragmentMsg("Reversal success!")
|
||||||
onNavigateMain()
|
onNavigateError(true,"Reversal success!")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.FAIL -> {
|
EmvResultStatus.FAIL -> {
|
||||||
onNavigateError("Transaction failed")
|
onNavigateError(false,"Transaction failed")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.NETWORK_ERROR -> {
|
EmvResultStatus.NETWORK_ERROR -> {
|
||||||
onNavigateError("Com Error!")
|
onNavigateError(false,"Com Error!")
|
||||||
}
|
}
|
||||||
|
|
||||||
EmvResultStatus.ERROR -> {
|
EmvResultStatus.ERROR -> {
|
||||||
loadingMessage = null
|
loadingMessage = null
|
||||||
val mapped = mapEmvError(errorCodeMsg)
|
val mapped = mapEmvError(errorCodeMsg)
|
||||||
sharedViewModel.set_errorFragmentMsg(mapped)
|
sharedViewModel.set_errorFragmentMsg(mapped)
|
||||||
onNavigateError(mapped)
|
onNavigateError(false,mapped)
|
||||||
}
|
}
|
||||||
|
|
||||||
else -> LogUtil.d(TAG, "Unhandled EmvResult Status : $status")
|
else -> LogUtil.d(TAG, "Unhandled EmvResult Status : $status")
|
||||||
|
|||||||
@ -91,7 +91,7 @@ fun AppNavGraph(
|
|||||||
val sharedViewModel: SharedViewModel = hiltViewModel(activity)
|
val sharedViewModel: SharedViewModel = hiltViewModel(activity)
|
||||||
SignaturePad(
|
SignaturePad(
|
||||||
onBack = { navController.popBackStack() },
|
onBack = { navController.popBackStack() },
|
||||||
onConfirm = { _, bitmap, signatureBlob ->
|
onConfirm = { bitmap, signatureBlob ->
|
||||||
sharedViewModel.signBitmap = bitmap
|
sharedViewModel.signBitmap = bitmap
|
||||||
sharedViewModel.updateSignatureBlob(signatureBlob)
|
sharedViewModel.updateSignatureBlob(signatureBlob)
|
||||||
navController.navigate(Routes.TransactionResult.route) {
|
navController.navigate(Routes.TransactionResult.route) {
|
||||||
@ -592,9 +592,9 @@ fun AppNavGraph(
|
|||||||
launchSingleTop = true
|
launchSingleTop = true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onNavigateError = { message ->
|
onNavigateError = { isSuccess,message ->
|
||||||
navController.navigate(Routes.TransactionError.createRoute(message)) {
|
navController.navigate(Routes.TransactionError.createRoute(isSuccess,message)) {
|
||||||
popUpTo(Routes.ProcessingCard.route) {
|
popUpTo(Routes.Processing.route) {
|
||||||
inclusive = true
|
inclusive = true
|
||||||
}
|
}
|
||||||
launchSingleTop = true
|
launchSingleTop = true
|
||||||
@ -681,8 +681,8 @@ fun AppNavGraph(
|
|||||||
launchSingleTop = true
|
launchSingleTop = true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onNavigateError = { message ->
|
onNavigateError = { isSuccess,message ->
|
||||||
navController.navigate(Routes.TransactionError.createRoute(message)) {
|
navController.navigate(Routes.TransactionError.createRoute(isSuccess,message)) {
|
||||||
popUpTo(Routes.EmvTransaction.route) {
|
popUpTo(Routes.EmvTransaction.route) {
|
||||||
inclusive = true
|
inclusive = true
|
||||||
}
|
}
|
||||||
@ -764,8 +764,8 @@ fun AppNavGraph(
|
|||||||
launchSingleTop = true
|
launchSingleTop = true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onNavigateError = { message ->
|
onNavigateError = { isSuccess,message ->
|
||||||
navController.navigate(Routes.TransactionError.createRoute(message)) {
|
navController.navigate(Routes.TransactionError.createRoute(isSuccess,message)) {
|
||||||
popUpTo(Routes.Processing.route) {
|
popUpTo(Routes.Processing.route) {
|
||||||
inclusive = true
|
inclusive = true
|
||||||
}
|
}
|
||||||
@ -819,9 +819,11 @@ fun AppNavGraph(
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
) { backStackEntry ->
|
) { backStackEntry ->
|
||||||
val message = backStackEntry.arguments?.getString("message").orEmpty().trim()
|
val isSuccess = backStackEntry.arguments?.getBoolean("isSuccess") ?: false
|
||||||
|
val message = backStackEntry.arguments?.getString("message").orEmpty()
|
||||||
|
|
||||||
TransactionErrorScreen(
|
TransactionErrorScreen(
|
||||||
|
isSuccess = isSuccess,
|
||||||
message = message,
|
message = message,
|
||||||
onDone = {
|
onDone = {
|
||||||
navController.navigate(Routes.Dashboard.route) {
|
navController.navigate(Routes.Dashboard.route) {
|
||||||
|
|||||||
@ -31,10 +31,7 @@ sealed class Routes(val route: String) {
|
|||||||
|
|
||||||
|
|
||||||
data object TransactionResult : Routes("transaction_result")
|
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 PrintReceipt : Routes("print_receipt")
|
||||||
data object Version : Routes("version")
|
data object Version : Routes("version")
|
||||||
data object Functions : Routes("functions")
|
data object Functions : Routes("functions")
|
||||||
|
|||||||
@ -13,7 +13,7 @@ fun ProcessingCardRoute(
|
|||||||
onNavigateInputAmount: () -> Unit,
|
onNavigateInputAmount: () -> Unit,
|
||||||
onNavigateProcessing: () -> Unit,
|
onNavigateProcessing: () -> Unit,
|
||||||
onNavigateEmvTransaction: () -> Unit,
|
onNavigateEmvTransaction: () -> Unit,
|
||||||
onNavigateError: (String) -> Unit,
|
onNavigateError: (isSuccess: Boolean, message: String) -> Unit,
|
||||||
onBack: () -> Unit,
|
onBack: () -> Unit,
|
||||||
onShowDecline: (String) -> Unit
|
onShowDecline: (String) -> Unit
|
||||||
) {
|
) {
|
||||||
@ -31,7 +31,7 @@ fun ProcessingCardRoute(
|
|||||||
ProcessingCardUiEvent.NavigateToInputAmount -> onNavigateInputAmount()
|
ProcessingCardUiEvent.NavigateToInputAmount -> onNavigateInputAmount()
|
||||||
ProcessingCardUiEvent.NavigateToProcessing -> onNavigateProcessing()
|
ProcessingCardUiEvent.NavigateToProcessing -> onNavigateProcessing()
|
||||||
ProcessingCardUiEvent.NavigateToEmvTransaction -> onNavigateEmvTransaction()
|
ProcessingCardUiEvent.NavigateToEmvTransaction -> onNavigateEmvTransaction()
|
||||||
is ProcessingCardUiEvent.NavigateToError -> onNavigateError(event.message)
|
is ProcessingCardUiEvent.NavigateToError -> onNavigateError(false,event.message)
|
||||||
is ProcessingCardUiEvent.ShowDeclineAndBack -> {
|
is ProcessingCardUiEvent.ShowDeclineAndBack -> {
|
||||||
onShowDecline(event.message)
|
onShowDecline(event.message)
|
||||||
onBack()
|
onBack()
|
||||||
|
|||||||
@ -25,7 +25,7 @@ fun ProcessingRoute(
|
|||||||
settlementViewModel: SettlementViewModel,
|
settlementViewModel: SettlementViewModel,
|
||||||
onNavigateTransactionResult: () -> Unit,
|
onNavigateTransactionResult: () -> Unit,
|
||||||
onNavigateSignature: () -> Unit,
|
onNavigateSignature: () -> Unit,
|
||||||
onNavigateError: (String) -> Unit,
|
onNavigateError: (Boolean,String) -> Unit,
|
||||||
onNavigateMain: ()-> Unit
|
onNavigateMain: ()-> Unit
|
||||||
) {
|
) {
|
||||||
|
|
||||||
@ -105,7 +105,7 @@ private fun EmvProcessingContent(
|
|||||||
sharedViewModel: SharedViewModel,
|
sharedViewModel: SharedViewModel,
|
||||||
emvTransactionViewModel: EmvTransactionProcessViewModel,
|
emvTransactionViewModel: EmvTransactionProcessViewModel,
|
||||||
onNavigateTransactionResult: () -> Unit,
|
onNavigateTransactionResult: () -> Unit,
|
||||||
onNavigateError: (String) -> Unit,
|
onNavigateError: (Boolean,String) -> Unit,
|
||||||
onNavigateMain: () -> Unit
|
onNavigateMain: () -> Unit
|
||||||
) {
|
) {
|
||||||
val emvTransStatus by emvTransactionViewModel.getTransStatus().observeAsState()
|
val emvTransStatus by emvTransactionViewModel.getTransStatus().observeAsState()
|
||||||
@ -134,13 +134,13 @@ private fun EmvProcessingContent(
|
|||||||
TransResultStatus.REVERSAL_SUCCESS -> {
|
TransResultStatus.REVERSAL_SUCCESS -> {
|
||||||
sharedViewModel.payDetail.value = emvTransactionViewModel.payDetailResult.value
|
sharedViewModel.payDetail.value = emvTransactionViewModel.payDetailResult.value
|
||||||
sharedViewModel.set_successFragmentMsg("Reversal success!")
|
sharedViewModel.set_successFragmentMsg("Reversal success!")
|
||||||
onNavigateMain()
|
onNavigateError(true,"Reversal success!")
|
||||||
}
|
}
|
||||||
|
|
||||||
TransResultStatus.REVERSAL_FAIL -> {
|
TransResultStatus.REVERSAL_FAIL -> {
|
||||||
sharedViewModel.payDetail.value = emvTransactionViewModel.payDetailResult.value
|
sharedViewModel.payDetail.value = emvTransactionViewModel.payDetailResult.value
|
||||||
sharedViewModel.set_errorFragmentMsg("Reversal failed!")
|
sharedViewModel.set_errorFragmentMsg("Reversal failed!")
|
||||||
onNavigateError("Reversal failed!")
|
onNavigateError(false,"Reversal failed!")
|
||||||
}
|
}
|
||||||
|
|
||||||
TransResultStatus.ERROR,
|
TransResultStatus.ERROR,
|
||||||
@ -149,7 +149,7 @@ private fun EmvProcessingContent(
|
|||||||
?.substringAfter(":")
|
?.substringAfter(":")
|
||||||
?.takeIf { it.isNotBlank() }
|
?.takeIf { it.isNotBlank() }
|
||||||
?: "Transaction error"
|
?: "Transaction error"
|
||||||
onNavigateError(message)
|
onNavigateError(false,message)
|
||||||
}
|
}
|
||||||
|
|
||||||
else -> {}
|
else -> {}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user