diff --git a/android/navi-bbps/src/main/kotlin/com/navi/bbps/feature/category/BillCategoriesViewModel.kt b/android/navi-bbps/src/main/kotlin/com/navi/bbps/feature/category/BillCategoriesViewModel.kt index 1b8b2ab34f..65858f021e 100644 --- a/android/navi-bbps/src/main/kotlin/com/navi/bbps/feature/category/BillCategoriesViewModel.kt +++ b/android/navi-bbps/src/main/kotlin/com/navi/bbps/feature/category/BillCategoriesViewModel.kt @@ -203,7 +203,7 @@ constructor( private val _refreshBillItemAndStatus = MutableStateFlow(RefreshBillState()) val refreshBillItemAndStatus = _refreshBillItemAndStatus.asStateFlow() - private val myAllBills = mutableListOf() + private val myAllBills = mutableListOf() var arcNudgeResponse: ArcNudgeResponse? = null @@ -224,11 +224,11 @@ constructor( val openBottomSheet = _openBottomSheet.asSharedFlow() init { - viewModelScope.launch(dispatcherProvider.default) { + viewModelScope.launch(dispatcherProvider.io) { initConfig() observeMyBillCounts( onFetchSuccess = { - viewModelScope.launch(Dispatchers.IO) { + viewModelScope.launch(dispatcherProvider.io) { fetchOffersForMultipleBills(offerRequestList = getOfferRequestList()) } } @@ -586,8 +586,7 @@ constructor( } private fun getTotalUnpaidBills(): List { - val bills = myAllBills.toList() - return bills.filter { it.isBillPaid.not() } + return myAllBills.filterNotNull().filter { !it.isBillPaid } } private fun updateMyUnpaidBills() { diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/details/viewmodel/OrderDetailsViewModel.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/details/viewmodel/OrderDetailsViewModel.kt index c0d27762ce..b0aca2ac26 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/details/viewmodel/OrderDetailsViewModel.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/details/viewmodel/OrderDetailsViewModel.kt @@ -1889,7 +1889,7 @@ constructor( errorCode = orderEntity.orderDetails.errorCode ) naviPayAnalytics.onOrderErrorDetailsFetchedDevEvent( - errorCode = orderEntity.orderDetails.errorCode, + errorCode = orderEntity.orderDetails.errorCode.orEmpty(), orderErrorEntity = orderErrorEntity, isExperimentEnabled = isNewErrorWidgetExperimentEnabled.value, productType = orderEntity.productType, diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/model/view/OrderDetailEntity.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/model/view/OrderDetailEntity.kt index 024293f861..c8755d2c92 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/model/view/OrderDetailEntity.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/model/view/OrderDetailEntity.kt @@ -23,6 +23,6 @@ data class OrderDetailEntity( @SerializedName("coinsUsed") val coinsUsed: String?, @SerializedName("coinEquivalentCash") val coinEquivalentCash: String?, @SerializedName("rewardList") val rewardList: List? = null, - @SerializedName("errorCode") val errorCode: String, + @SerializedName("errorCode") val errorCode: String?, @SerializedName("naviUpiAccInfo") val naviUpiAccInfo: NaviUpiAccInfo?, ) : Parcelable diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/utils/error/OrderErrorMappingManager.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/utils/error/OrderErrorMappingManager.kt index bf7e4e2a83..c0e5484fdb 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/utils/error/OrderErrorMappingManager.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/utils/error/OrderErrorMappingManager.kt @@ -82,9 +82,9 @@ constructor( } } - suspend fun getErrorEntityByCode(errorCode: String): OrderErrorEntity { - return orderRepository.getOrderErrorEntity(errorCode) ?: getDefaultError() - } + suspend fun getErrorEntityByCode(errorCode: String?): OrderErrorEntity = + errorCode?.takeIf { it.isNotBlank() }?.let { orderRepository.getOrderErrorEntity(it) } + ?: getDefaultError() private fun getDefaultError() = OrderErrorEntity(