From eb315e03c97e8f99ecfdf0a441cc054f1c5fa932 Mon Sep 17 00:00:00 2001 From: Balrambhai Sharma Date: Thu, 15 May 2025 16:00:32 +0530 Subject: [PATCH] NTP-56713 | Removed unnecessary API calls (#16186) --- .../viewmodel/PaymentSummaryViewModel.kt | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/paymentsummary/viewmodel/PaymentSummaryViewModel.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/paymentsummary/viewmodel/PaymentSummaryViewModel.kt index 1434b441f3..4d07d3835b 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/paymentsummary/viewmodel/PaymentSummaryViewModel.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/paymentsummary/viewmodel/PaymentSummaryViewModel.kt @@ -16,6 +16,7 @@ import com.navi.base.cache.repository.NaviCacheRepository import com.navi.base.model.CtaData import com.navi.base.model.LineItem import com.navi.base.utils.ResourceProvider +import com.navi.base.utils.orFalse import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper.NAVI_PAY_PPS_UPI_LITE_BANNER_ENABLED_FLAG import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper.NAVI_PAY_SCRATCH_CARD_OPTIMISATION_V2_ENABLED @@ -25,6 +26,7 @@ import com.navi.common.geonetwork.model.network.PaymentContext import com.navi.common.geonetwork.usecase.GeoNetworkSignatureUseCase import com.navi.common.network.models.isSuccess import com.navi.common.usecase.FestiveThemeHelper +import com.navi.common.usecase.LitmusExperimentsUseCase import com.navi.common.utils.CommonUtils.getDisplayableAmount import com.navi.pay.R import com.navi.pay.analytics.NaviPayAnalytics @@ -68,6 +70,7 @@ import com.navi.pay.utils.DEFAULT_CONFIG import com.navi.pay.utils.KEY_IS_FIRST_TRANSACTION_SUCCESSFUL import com.navi.pay.utils.KEY_UPI_LITE_ACTIVE_ACCOUNT_INFO import com.navi.pay.utils.KEY_UPI_LITE_MANDATE_INFO +import com.navi.pay.utils.LITMUS_EXPERIMENT_NAVIPAY_TRANSACTION_LEDGER import com.navi.pay.utils.NAVI_PAY_AUTO_POPUP_SCRATCH_CARD_COUNTER import com.navi.pay.utils.NAVI_PAY_REWARDS_SCRATCH_CARD_RESPONSE_CACHE_KEY import com.navi.pay.utils.getShareReceiptUiProperties @@ -122,6 +125,7 @@ constructor( private val refreshGenericOffersUseCase: RefreshGenericOffersUseCase, private val resourceProvider: ResourceProvider, private val geoNetworkSignatureUseCase: GeoNetworkSignatureUseCase, + private val litmusExperimentsUseCase: LitmusExperimentsUseCase, @NaviPayGsonBuilder private val gson: Gson, ) : NaviPayBaseVM() { @@ -362,7 +366,7 @@ constructor( private suspend fun initializeAsynchronously() { coroutineScope { - launch { syncOrderHistoryUseCase.execute(screenName) } + launch { syncTransactionsBasedOnLedgerEligibility() } launch { updateNaviPayDefaultConfig(screenName = screenName) } launch { pollForRewardsGratification() } launch { checkAndUpdateWidgets() } @@ -379,6 +383,17 @@ constructor( } } + private suspend fun syncTransactionsBasedOnLedgerEligibility() { + val experimentResult = + litmusExperimentsUseCase.execute( + experimentName = LITMUS_EXPERIMENT_NAVIPAY_TRANSACTION_LEDGER + ) + val isExperimentEnabled = experimentResult?.variant?.enabled.orFalse() + if (isExperimentEnabled) { + syncOrderHistoryUseCase.execute(screenName) + } + } + private suspend fun postGeoNetworkSignature() { geoNetworkSignatureUseCase.execute(