TP-27395 | PS | capture additional source info for skip fund details (#6557)

* TP-27395 | PS | capture additional source info for skip fund details

* TP-27395 | PS | fix kyc source capturing on amc dashboard screen
This commit is contained in:
Prakhar Saxena
2023-05-24 18:16:41 +05:30
committed by GitHub Enterprise
parent 3c9841f5c2
commit fbf3cdcb3f
4 changed files with 37 additions and 10 deletions

View File

@@ -181,9 +181,13 @@ class InvestmentsFragment() : BaseFragment(), WidgetCallback {
NaviAmcDeeplinkNavigator.AMC.plus("/").plus(NaviAmcDeeplinkNavigator.KYC), true
).orFalse()
) {
TempStorageHelper.kycSourceInfo = mapOf(
Constant.KYC_SOURCE_SCREEN to screenName
)
val sourceParam = hashMapOf<String, String>().apply {
actionData?.parameters?.forEach {
put(it.key.toString(), it.value.orEmpty())
}
put(Constant.KYC_SOURCE_SCREEN, screenName)
}
TempStorageHelper.kycSourceInfo = sourceParam
}
actionData?.metaData?.clickedData?.let { eventData ->
sendEvent(eventData.eventName.orEmpty(), eventData.parameters ?: hashMapOf())

View File

@@ -360,10 +360,14 @@ class ProductFragment : PartPrePaymentBaseFragment(), WidgetCallback, DashboardP
.plus(NaviAmcDeeplinkNavigator.KYC), true
).orFalse()
) {
TempStorageHelper.kycSourceInfo = mapOf(
Constant.KYC_SOURCE_SCREEN to DASHBOARD,
PRODUCT to (dashboardTab?.name ?: NaviAmcDeeplinkNavigator.INVESTMENT)
)
val sourceParam = hashMapOf<String, String>().apply {
naviClickAction.parameters?.forEach {
put(it.key.toString(), it.value.orEmpty())
}
put(Constant.KYC_SOURCE_SCREEN, DASHBOARD)
put(PRODUCT, (dashboardTab?.name ?: NaviAmcDeeplinkNavigator.INVESTMENT))
}
TempStorageHelper.kycSourceInfo = sourceParam
} else if (naviClickAction.url?.contains(Constants.ACTION_TYPE_FORCE_PAGE_REFRESH)
.orFalse()
) {

View File

@@ -23,13 +23,16 @@ import com.navi.amc.databinding.FundListFragmentLayoutBinding
import com.navi.amc.fundbuy.adapters.FundListAdapter
import com.navi.amc.fundbuy.models.AmountChipData
import com.navi.amc.fundbuy.viewmodel.FundListViewModel
import com.navi.amc.navigator.NaviAmcDeeplinkNavigator
import com.navi.amc.utils.AmcAnalytics
import com.navi.amc.utils.AmcAnalytics.FUND_ID
import com.navi.amc.utils.AmcAnalytics.ISIN
import com.navi.amc.utils.Constant
import com.navi.amc.utils.Constant.FUND_CATEGORY
import com.navi.amc.utils.TempStorageHelper
import com.navi.amc.utils.getValueFromActionData
import com.navi.base.model.ActionData
import com.navi.base.utils.orFalse
import com.navi.common.listeners.FragmentInterchangeListener
import com.navi.common.listeners.HeaderInteractionListener
import com.navi.design.utils.dpToPx
@@ -141,6 +144,18 @@ class FundListingFragment : AmcBaseFragment() {
Pair(FUND_CATEGORY, actionData.getValueFromActionData(FUND_CATEGORY))
)
)
if (actionData.url?.contains(
NaviAmcDeeplinkNavigator.AMC.plus("/").plus(NaviAmcDeeplinkNavigator.KYC), true
).orFalse()
) {
val sourceParam = hashMapOf<String, String>().apply {
actionData.parameters?.forEach {
put(it.key.toString(), it.value.orEmpty())
}
put(Constant.KYC_SOURCE_SCREEN, screenName)
}
TempStorageHelper.kycSourceInfo = sourceParam
}
fragmentInterchangeListener?.navigateToNextScreen(actionData)
}

View File

@@ -275,9 +275,13 @@ class FundListingFragmentV2 : AmcBaseFragment(), WidgetCallback {
NaviAmcDeeplinkNavigator.AMC.plus("/").plus(NaviAmcDeeplinkNavigator.KYC), true
).orFalse()
) {
TempStorageHelper.kycSourceInfo = mapOf(
Constant.KYC_SOURCE_SCREEN to screenName
)
val sourceParam = hashMapOf<String, String>().apply {
actionData?.parameters?.forEach {
put(it.key.toString(), it.value.orEmpty())
}
put(Constant.KYC_SOURCE_SCREEN, screenName)
}
TempStorageHelper.kycSourceInfo = sourceParam
}
fragmentInterchangeListener?.let {
it.navigateToNextScreen(actionData)