Tp 50835 footer loader not stopping in loan details page (#8921)
This commit is contained in:
committed by
GitHub
parent
cf889f057f
commit
b3b1307a0e
@@ -22,7 +22,7 @@ fun lambdaApiActionHandler(
|
||||
}
|
||||
LambdaType.LOAN_OFFER_DETAILS.name -> {
|
||||
val map = getResolvedFieldValue(fields = lambdaApiAction.fields, handle = viewModel.handle)
|
||||
viewModel.fetchOfferDetails(map)
|
||||
viewModel.fetchOfferDetails(lambdaApiAction = lambdaApiAction, resolvedValues = map)
|
||||
}
|
||||
LambdaType.APPLY_LOAN.name -> {
|
||||
val map = getResolvedFieldValue(fields = lambdaApiAction.fields, handle = viewModel.handle)
|
||||
|
||||
@@ -78,6 +78,7 @@ import com.navi.base.sharedpref.PreferenceManager
|
||||
import com.navi.base.utils.BaseUtils
|
||||
import com.navi.base.utils.isNotNull
|
||||
import com.navi.base.utils.isNotNullAndNotEmpty
|
||||
import com.navi.base.utils.isNull
|
||||
import com.navi.base.utils.orFalse
|
||||
import com.navi.common.uitron.model.action.LambdaApiAction
|
||||
import com.navi.common.utils.deviceId
|
||||
@@ -143,9 +144,12 @@ open class LambdaVM constructor(
|
||||
}
|
||||
}
|
||||
|
||||
fun fetchOfferDetails(resolvedValues: MutableMap<String, Any?>) {
|
||||
fun fetchOfferDetails(
|
||||
lambdaApiAction: LambdaApiAction,
|
||||
resolvedValues: MutableMap<String, Any?>
|
||||
) {
|
||||
viewModelScope.launch(Dispatchers.IO) {
|
||||
if (_clonedScreenDefinitionState.value == null) {
|
||||
if (_clonedScreenDefinitionState.value.isNull()) {
|
||||
_clonedScreenDefinitionState.value = getScreenStructurePreRenderState()
|
||||
}
|
||||
|
||||
@@ -159,10 +163,13 @@ open class LambdaVM constructor(
|
||||
if (
|
||||
savedAmount == amount &&
|
||||
savedTenure == tenure &&
|
||||
savedAmount != null &&
|
||||
savedTenure != null
|
||||
savedAmount.isNotNull() &&
|
||||
savedTenure.isNotNull()
|
||||
)
|
||||
return@launch
|
||||
|
||||
handleActions(lambdaApiAction.preExecutionAction)
|
||||
|
||||
_lambdaState.value = LambdaState.Loading
|
||||
|
||||
if (
|
||||
@@ -180,7 +187,7 @@ open class LambdaVM constructor(
|
||||
)
|
||||
_lambdaState.value =
|
||||
when {
|
||||
lambdaResponse.data != null && _clonedScreenDefinitionState.value != null -> {
|
||||
lambdaResponse.data.isNotNull() && _clonedScreenDefinitionState.value.isNotNull() -> {
|
||||
LambdaState.Success(LambdaResponseType())
|
||||
val updatedResponse =
|
||||
BasePathInjector<ApScreenDefinitionStructure, Any?>()
|
||||
|
||||
Reference in New Issue
Block a user