Browse Source

changes

PankajBranch
Hemant Khadase 2 years ago
parent
commit
7eee4b276f
18 changed files with 361 additions and 301 deletions
  1. +24
    -0
      app/src/main/java/com/nivesh/production/bajajfd/adapter/DisableAdapter.kt
  2. +4
    -8
      app/src/main/java/com/nivesh/production/bajajfd/adapter/SmartFragmentStatePagerAdapter.kt
  3. +4
    -3
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/BajajFDInterface.kt
  4. +2
    -2
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/SendData.kt
  5. +39
    -169
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  6. +1
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BaseActivity.kt
  7. +15
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/BaseFragment.kt
  8. +11
    -1
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt
  9. +61
    -23
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt
  10. +29
    -24
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepOneBajajFDFragment.kt
  11. +62
    -19
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt
  12. +78
    -45
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt
  13. +7
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt
  14. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFourBajajFDViewModel.kt
  15. +1
    -6
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepOneBajajFDViewModel.kt
  16. +7
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepThreeBajajFDViewModel.kt
  17. +7
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepTwoBajajFDViewModel.kt
  18. +1
    -1
      app/src/main/res/layout/activity_bajaj_fd.xml

+ 24
- 0
app/src/main/java/com/nivesh/production/bajajfd/adapter/DisableAdapter.kt View File

@ -0,0 +1,24 @@
package com.nivesh.production.bajajfd.adapter
import android.annotation.SuppressLint
import android.content.Context
import android.util.AttributeSet
import android.view.MotionEvent
import androidx.viewpager.widget.ViewPager
class DisableAdapter (context: Context, attrs: AttributeSet) : ViewPager(context, attrs) {
private var isPagingEnabled = true // change this value for enable and disable the viewpager swipe
@SuppressLint("ClickableViewAccessibility")
override fun onTouchEvent(event: MotionEvent?): Boolean {
return this.isPagingEnabled && super.onTouchEvent(event)
}
override fun onInterceptTouchEvent(event: MotionEvent?): Boolean {
return this.isPagingEnabled && super.onInterceptTouchEvent(event)
}
fun setPagingEnabled(b: Boolean) { isPagingEnabled = b
}
}

+ 4
- 8
app/src/main/java/com/nivesh/production/bajajfd/adapter/SmartFragmentStatePagerAdapter.kt View File

@ -5,10 +5,12 @@ import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentPagerAdapter
import androidx.fragment.app.FragmentStatePagerAdapter
import androidx.viewpager2.adapter.FragmentStateAdapter
abstract class SmartFragmentStatePagerAdapter(fragmentManager: FragmentManager) : FragmentStatePagerAdapter(fragmentManager) {
val registeredFragments = SparseArray<Fragment>()
abstract class SmartFragmentStatePagerAdapter(fragmentManager: FragmentManager) : FragmentPagerAdapter(fragmentManager) {
private val registeredFragments = SparseArray<Fragment>()
override fun instantiateItem(container: ViewGroup, position: Int): Any {
val fragment = super.instantiateItem(container, position) as Fragment
@ -16,12 +18,6 @@ abstract class SmartFragmentStatePagerAdapter(fragmentManager: FragmentManager)
return fragment
}
// Unregister when the item is inactive
override fun destroyItem(container: View, position: Int, `object`: Any) {
registeredFragments.remove(position)
super.destroyItem(container, position, `object`)
}
// Returns the fragment for the position (if instantiated)
fun getRegisteredFragment(position: Int): Fragment? {
return registeredFragments[position]


+ 4
- 3
app/src/main/java/com/nivesh/production/bajajfd/interfaces/BajajFDInterface.kt View File

@ -1,11 +1,12 @@
package com.nivesh.production.bajajfd.interfaces
import com.nivesh.production.bajajfd.model.CreateFDApplicationResponse
import com.nivesh.production.bajajfd.model.CreateFDRequest
import com.nivesh.production.bajajfd.model.SaveFDOtherDataRequest
interface BajajFDInterface {
fun stepOneApi(data: String?)
fun stepTwoApi(data: CreateFDRequest)
fun stepThreeApi(data: CreateFDRequest)
fun stepFourApi(data: SaveFDOtherDataRequest, payUrl: String, value: String)
fun stepTwoApi(data: CreateFDApplicationResponse)
fun stepThreeApi(data: CreateFDApplicationResponse)
fun stepFourApi( payUrl: String, value: String)
}

+ 2
- 2
app/src/main/java/com/nivesh/production/bajajfd/interfaces/SendData.kt View File

@ -3,6 +3,6 @@ package com.nivesh.production.bajajfd.interfaces
import com.nivesh.production.bajajfd.model.CreateFDApplicationResponse
interface SendData {
fun sendDataFragment(message: CreateFDApplicationResponse, currentItem: Int)
fun sendDataFragment(message: CreateFDApplicationResponse)
fun sendDataFragmentStepFour(message: CreateFDApplicationResponse)
}

+ 39
- 169
app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt View File

@ -15,6 +15,7 @@ import androidx.lifecycle.ViewModelProvider
import androidx.viewpager.widget.ViewPager
import com.google.gson.Gson
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.DisableAdapter
import com.nivesh.production.bajajfd.adapter.SectionsPagerAdapter
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.ActivityBajajFdBinding
@ -37,21 +38,21 @@ class BajajFdMainActivity : BaseActivity(), BajajFDInterface {
lateinit var binding: ActivityBajajFdBinding
private lateinit var viewModel: BajajFDViewModel
lateinit var stepOneBajajFDViewModel: StepOneBajajFDViewModel
lateinit var stepTwoBajajFDViewModel: StepTwoBajajFDViewModel
lateinit var stepThreeBajajFDViewModel: StepThreeBajajFDViewModel
lateinit var stepFourBajajFDViewModel: StepFourBajajFDViewModel
lateinit var stepFiveBajajFDViewModel: StepFiveBajajFDViewModel
var createFDRequest: CreateFDRequest
var createFDApplicantRequest: CreateFDApplicationRequest
var applicantDetails: ApplicantDetails
var fdInvestmentDetails: FDInvestmentDetails
var applicantRelationDetails: ApplicantRelationDetails
var fdBankDetails: FdBankDetails
var nomineeDetails: NomineeDetails
var nomineeGuardianDetails: NomineeGuardianDetails
var getClientDetailsResponse: getClientDetailsResponse
val stepOneBajajFDFragment = StepOneBajajFDFragment()
val stepTwoBajajFDFragment = StepTwoBajajFDFragment()
val stepThreeBajajFDFragment = StepThreeBajajFDFragment()
val stepFourBajajFDFragment = StepFourBajajFDFragment()
val stepFiveBajajFDFragment = StepFiveBajajFDFragment()
var createFDRequest: CreateFDRequest = CreateFDRequest()
var createFDApplicantRequest: CreateFDApplicationRequest = CreateFDApplicationRequest()
var applicantDetails: ApplicantDetails = ApplicantDetails()
var fdInvestmentDetails: FDInvestmentDetails = FDInvestmentDetails()
var applicantRelationDetails: ApplicantRelationDetails = ApplicantRelationDetails()
var fdBankDetails: FdBankDetails = FdBankDetails()
var nomineeDetails: NomineeDetails = NomineeDetails()
var nomineeGuardianDetails: NomineeGuardianDetails = NomineeGuardianDetails()
var getClientDetailsResponse: getClientDetailsResponse = getClientDetailsResponse()
private var stepCount: Int = 0
private lateinit var sectionsPagerAdapter: SectionsPagerAdapter
@ -62,19 +63,6 @@ class BajajFdMainActivity : BaseActivity(), BajajFDInterface {
init()
}
init {
getClientDetailsResponse = getClientDetailsResponse()
createFDRequest = CreateFDRequest()
createFDApplicantRequest = CreateFDApplicationRequest()
fdInvestmentDetails = FDInvestmentDetails()
applicantDetails = ApplicantDetails()
applicantRelationDetails = ApplicantRelationDetails()
fdBankDetails = FdBankDetails()
nomineeDetails = NomineeDetails()
nomineeGuardianDetails = NomineeGuardianDetails()
}
private fun init() {
binding = ActivityBajajFdBinding.inflate(layoutInflater)
@ -85,26 +73,6 @@ class BajajFdMainActivity : BaseActivity(), BajajFDInterface {
this,
FDModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[BajajFDViewModel::class.java]
stepOneBajajFDViewModel = ViewModelProvider(
this,
StepOneModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepOneBajajFDViewModel::class.java]
stepTwoBajajFDViewModel = ViewModelProvider(
this,
StepTwoModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepTwoBajajFDViewModel::class.java]
stepThreeBajajFDViewModel = ViewModelProvider(
this,
StepThreeModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepThreeBajajFDViewModel::class.java]
stepFourBajajFDViewModel = ViewModelProvider(
this,
StepFourModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFourBajajFDViewModel::class.java]
stepFiveBajajFDViewModel = ViewModelProvider(
this,
StepFiveModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFiveBajajFDViewModel::class.java]
if (Common.isNetworkAvailable(this)) {
getStepsCountApi()
@ -234,28 +202,26 @@ class BajajFdMainActivity : BaseActivity(), BajajFDInterface {
if (stepCount == 3) {
fragments = arrayOf(
StepOneBajajFDFragment.getInstance(this),
StepTwoBajajFDFragment.getInstance(this),
StepFourBajajFDFragment.getInstance(this),
StepFiveBajajFDFragment.getInstance(this)
stepOneBajajFDFragment,
stepTwoBajajFDFragment,
stepFourBajajFDFragment,
stepFiveBajajFDFragment
)
} else if (stepCount == 4) {
fragments = arrayOf(
StepOneBajajFDFragment.getInstance(this),
StepTwoBajajFDFragment.getInstance(this),
StepThreeBajajFDFragment.getInstance(this),
StepFourBajajFDFragment.getInstance(this),
StepFiveBajajFDFragment.getInstance(this)
stepOneBajajFDFragment,
stepTwoBajajFDFragment,
stepThreeBajajFDFragment,
stepFourBajajFDFragment,
stepFiveBajajFDFragment
)
}
// set viewPager
sectionsPagerAdapter =
SectionsPagerAdapter(supportFragmentManager, fragments, stepsCount)
val viewPager: ViewPager = binding.viewPager
sectionsPagerAdapter = SectionsPagerAdapter(supportFragmentManager, fragments, stepsCount)
val viewPager: DisableAdapter = binding.viewPager
viewPager.setPagingEnabled(false)
viewPager.adapter = sectionsPagerAdapter
viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
override fun onPageScrolled(
position: Int,
@ -330,8 +296,8 @@ class BajajFdMainActivity : BaseActivity(), BajajFDInterface {
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_PAN
checkFDKYCRequest.NiveshClientCode =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE.toString()
stepOneBajajFDViewModel.checkFDKYC(checkFDKYCRequest, token)
stepOneBajajFDViewModel.getFDKYCMutableData.observe(this) { response ->
viewModel.checkFDKYC(checkFDKYCRequest, token)
viewModel.getFDKYCMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->$response")
@ -393,124 +359,28 @@ class BajajFdMainActivity : BaseActivity(), BajajFDInterface {
}
// step 2 response
override fun stepTwoApi(data: CreateFDRequest) {
override fun stepTwoApi(data: CreateFDApplicationResponse) {
Log.e("stepTwoApi", " response ---> " + Gson().toJson(data))
createFDApi(data, 2, "2")
binding.viewPager.currentItem = 2
stepThreeBajajFDFragment.displayReceivedData(data)
}
// step 3 response
override fun stepThreeApi(data: CreateFDRequest) {
override fun stepThreeApi(data: CreateFDApplicationResponse) {
Log.e("stepThreeApi", " response --->" + Gson().toJson(data))
// call create fd api
createFDApi(data, 3, "3")
binding.viewPager.currentItem = 3
stepFourBajajFDFragment.displayReceivedData(data)
}
// step 4 response
override fun stepFourApi(data: SaveFDOtherDataRequest, payUrl: String, value: String) {
Log.e("stepFourApi", " response ---> " + Gson().toJson(data))
// binding.viewPager.currentItem = 4
saveFDOtherData(data, payUrl, value)
}
private fun createFDApi(data: CreateFDRequest, currentItem: Int, step: String) {
if (Common.isNetworkAvailable(this@BajajFdMainActivity)) {
viewModel.createFDApi(data, token)
viewModel.getFDResponseMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->$response")
val createFDApplicationResponse: CreateFDApplicationResponse =
Gson().fromJson(
response.data?.toString(),
CreateFDApplicationResponse::class.java
)
createFDApplicationResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
binding.viewPager.currentItem = currentItem
if (step == "2") {
val stepThreeBajajFDFragment: StepThreeBajajFDFragment =
sectionsPagerAdapter.getRegisteredFragment(currentItem) as StepThreeBajajFDFragment
stepThreeBajajFDFragment.displayReceivedData(
createFDApplicationResponse
)
} else {
val stepFourFDFragment: StepFourBajajFDFragment =
sectionsPagerAdapter.getRegisteredFragment(currentItem) as StepFourBajajFDFragment
stepFourFDFragment.displayReceivedData(
createFDApplicationResponse
)
}
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
this@BajajFdMainActivity,
createFDApplicationResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
}
}
}
}
private fun saveFDOtherData(data: SaveFDOtherDataRequest, payUrl: String, value: String) {
if (Common.isNetworkAvailable(this)) {
viewModel.saveFDOtherData(data, token)
viewModel.getFDOtherMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->" + response.data.toString())
val saveFDOtherDataResponse: SaveFDOtherDataResponse =
Gson().fromJson(
response.data?.toString(),
SaveFDOtherDataResponse::class.java
)
saveFDOtherDataResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
paymentDialog(payUrl, value)
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
this@BajajFdMainActivity,
saveFDOtherDataResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
}
}
}
override fun stepFourApi(payUrl: String, value: String) {
paymentDialog(payUrl, value)
}
@SuppressLint("SetJavaScriptEnabled")
fun paymentDialog(payUrl: String, value: String) {
fun paymentDialog(payUrl: String, value: String) {
Log.e("payUrl", "-->$payUrl")
Log.e("value", "-->$value")
val dialogWebView = Dialog(this@BajajFdMainActivity)


+ 1
- 0
app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BaseActivity.kt View File

@ -6,6 +6,7 @@ import androidx.appcompat.app.AppCompatActivity
open class BaseActivity : AppCompatActivity() {
private lateinit var mActivity: Activity
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mActivity = this


+ 15
- 0
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/BaseFragment.kt View File

@ -7,6 +7,9 @@ import com.nivesh.production.bajajfd.ui.activity.BaseActivity
open class BaseFragment : Fragment() {
protected var mActivity: BaseActivity? = null
override fun onAttach(context: Context) {
super.onAttach(context)
if (context is BaseActivity) {
@ -18,4 +21,16 @@ open class BaseFragment : Fragment() {
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun onStart() {
super.onStart()
}
override fun onStop() {
super.onStop()
}
}

+ 11
- 1
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt View File

@ -6,9 +6,12 @@ import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFiveBinding
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepFiveModelProviderFactory
import com.nivesh.production.bajajfd.viewModel.StepFiveBajajFDViewModel
class StepFiveBajajFDFragment : Fragment() {
@ -37,7 +40,6 @@ class StepFiveBajajFDFragment : Fragment() {
_binding = FragmentBajajfdStepFiveBinding.inflate(inflater, container, false)
val root = binding.root
stepFiveBajajFDViewModel= (activity as BajajFdMainActivity).stepFiveBajajFDViewModel
// val textView: TextView = binding.sectionLabel
// stepFourViewModel.text.observe(viewLifecycleOwner) {
@ -51,6 +53,14 @@ class StepFiveBajajFDFragment : Fragment() {
return root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepFiveBajajFDViewModel = ViewModelProvider(
this,
StepFiveModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFiveBajajFDViewModel::class.java]
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null


+ 61
- 23
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt View File

@ -5,17 +5,21 @@ import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.gson.Gson
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.CustomerListAdapter
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFourBinding
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepFourModelProviderFactory
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation
import com.nivesh.production.bajajfd.util.Constants
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepFourBajajFDViewModel
@ -27,22 +31,8 @@ class StepFourBajajFDFragment : BaseFragment() {
private lateinit var listOfCustomer: MutableList<GetCodes>
private var selectedList: String = ""
private var uniqueId: String = ""
private var payUrl : String = ""
private var Value : String = ""
private lateinit var bajajFDInterface: BajajFDInterface
companion object {
fun getInstance(fdInterface: BajajFDInterface): StepFourBajajFDFragment {
val stepThreeFragment = StepFourBajajFDFragment()
stepThreeFragment.setApi(fdInterface)
return stepThreeFragment
}
}
private fun setApi(bajajFDInterfaces: BajajFDInterface) {
bajajFDInterface = bajajFDInterfaces
}
private var payUrl: String = ""
private var value: String = ""
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
@ -50,9 +40,15 @@ class StepFourBajajFDFragment : BaseFragment() {
): View {
_binding = FragmentBajajfdStepFourBinding.inflate(inflater, container, false)
val root = binding.root
return binding.root
}
stepFourBajajFDViewModel = (activity as BajajFdMainActivity).stepFourBajajFDViewModel
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepFourBajajFDViewModel = ViewModelProvider(
this,
StepFourModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFourBajajFDViewModel::class.java]
binding.checkBox.setOnCheckedChangeListener { _, _ ->
@ -77,7 +73,8 @@ class StepFourBajajFDFragment : BaseFragment() {
saveFDOtherDataRequest.Values = selectedList
saveFDOtherDataRequest.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
bajajFDInterface.stepFourApi(saveFDOtherDataRequest, payUrl, Value)
// bajajFDInterface.stepFourApi(saveFDOtherDataRequest, payUrl, Value)
saveFDOtherData(saveFDOtherDataRequest, payUrl, value)
} else {
showDialogValidation(
activity as BajajFdMainActivity,
@ -89,7 +86,48 @@ class StepFourBajajFDFragment : BaseFragment() {
binding.btnBack.setOnClickListener {
(activity as BajajFdMainActivity).binding.viewPager.currentItem = 2
}
return root
}
private fun saveFDOtherData(data: SaveFDOtherDataRequest, payUrl: String, value: String) {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
stepFourBajajFDViewModel.saveFDOtherData(data, token)
stepFourBajajFDViewModel.getFDOtherMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->" + response.data.toString())
val saveFDOtherDataResponse: SaveFDOtherDataResponse =
Gson().fromJson(
response.data?.toString(),
SaveFDOtherDataResponse::class.java
)
saveFDOtherDataResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
(activity as BajajFdMainActivity).stepFourApi(payUrl, value)
// paymentDialog(payUrl, value)
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
activity as BajajFdMainActivity,
saveFDOtherDataResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
}
}
}
}
@ -187,7 +225,7 @@ class StepFourBajajFDFragment : BaseFragment() {
getFDDetailsResponse.Response.FDDataResponse.RateOfInterest.toString()
.plus(" % p.a.")
payUrl = getFDDetailsResponse.Response.FDDataResponse.PaymentUrl
Value = getFDDetailsResponse.Response.FDDataResponse.Value
value = getFDDetailsResponse.Response.FDDataResponse.Value
}
// 650 -> refreshToken()
else -> {
@ -216,6 +254,6 @@ class StepFourBajajFDFragment : BaseFragment() {
override fun onDestroyView() {
super.onDestroyView()
// _binding = null
_binding = null
}
}

+ 29
- 24
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepOneBajajFDFragment.kt View File

@ -12,17 +12,19 @@ import android.view.View
import android.view.ViewGroup
import android.widget.ArrayAdapter
import android.widget.RadioButton
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.DefaultItemAnimator
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView.LayoutManager
import com.google.gson.Gson
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.HorizontalRecyclerViewAdapter
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepOneBinding
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepOneModelProviderFactory
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod
import com.nivesh.production.bajajfd.util.Common.Companion.removeError
@ -35,7 +37,6 @@ class StepOneBajajFDFragment : BaseFragment() {
private var _binding: FragmentBajajfdStepOneBinding? = null
private val binding get() = _binding!!
private lateinit var bajajFDInterface: BajajFDInterface
private lateinit var stepOneBajajFDViewModel: StepOneBajajFDViewModel
private lateinit var rgMaturity: RadioButton
private lateinit var listOfTenure: MutableList<ROIDataList>
@ -47,25 +48,19 @@ class StepOneBajajFDFragment : BaseFragment() {
private var tenure: Int = 0
private var interest: Double = 0.0
companion object {
fun getInstance(fdInterface: BajajFDInterface): StepOneBajajFDFragment {
val stepStartFragment = StepOneBajajFDFragment()
stepStartFragment.setApi(fdInterface)
return stepStartFragment
}
}
private fun setApi(bajajFDInterfaces: BajajFDInterface) {
bajajFDInterface = bajajFDInterfaces
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?
): View {
_binding = FragmentBajajfdStepOneBinding.inflate(inflater, container, false)
val root = binding.root
return binding.root
}
stepOneBajajFDViewModel = (activity as BajajFdMainActivity).stepOneBajajFDViewModel
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepOneBajajFDViewModel = ViewModelProvider(
this,
StepOneModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepOneBajajFDViewModel::class.java]
listOfTenure = ArrayList()
binding.edtAmount.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(8)) // upto 1 Cr
@ -160,16 +155,21 @@ class StepOneBajajFDFragment : BaseFragment() {
(activity as BajajFdMainActivity).fdInvestmentDetails.CustomerType = ""
(activity as BajajFdMainActivity).fdInvestmentDetails.CKYCNumber = ""
(activity as BajajFdMainActivity).createFDApplicantRequest.FDInvestmentDetails = (activity as BajajFdMainActivity).fdInvestmentDetails
Log.e("Maturity", "-->" + rgMaturity.text)
bajajFDInterface.stepOneApi("stepOneResponse")
(activity as BajajFdMainActivity).createFDApplicantRequest.FDInvestmentDetails =
(activity as BajajFdMainActivity).fdInvestmentDetails
Log.e(
"StepOneData",
"-->" + Gson().toJson((activity as BajajFdMainActivity).fdInvestmentDetails)
)
// bajajFDInterface.stepOneApi("stepOneResponse")
(activity as BajajFdMainActivity).stepOneApi("stepOneResponse")
}
}
minAmountApi()
interestPayoutApi()
return root
}
private fun interestPayoutApi() {
@ -337,7 +337,9 @@ class StepOneBajajFDFragment : BaseFragment() {
private fun maturityAmountApi(tenure: Int, interest: Double) {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
if (binding.edtAmount.text.toString().length >= 4 && interest != 0.0 && tenure != 0) {
if (binding.edtAmount.text.toString().length >= 4 && interest != 0.0 && tenure != 0 && binding.spInterestPayout.text.toString()
.isNotEmpty()
) {
val maturityAmountRequest = GetMaturityAmountRequest()
maturityAmountRequest.FDProvider = getString(R.string.bajaj)
maturityAmountRequest.FDAmount = binding.edtAmount.text.toString().toInt()
@ -374,7 +376,10 @@ class StepOneBajajFDFragment : BaseFragment() {
is Resource.Error -> {
response.message?.let { message ->
Common.showDialogValidation(activity as BajajFdMainActivity, message)
Common.showDialogValidation(
activity as BajajFdMainActivity,
message
)
}
}
is Resource.Loading -> {
@ -505,6 +510,6 @@ class StepOneBajajFDFragment : BaseFragment() {
override fun onDestroyView() {
super.onDestroyView()
// _binding = null
_binding = null
}
}

+ 62
- 19
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt View File

@ -19,14 +19,17 @@ import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.contract.ActivityResultContracts
import androidx.core.content.ContextCompat
import androidx.core.content.FileProvider
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope
import com.google.gson.Gson
import com.nivesh.production.bajajfd.BuildConfig
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepThreeBinding
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepThreeModelProviderFactory
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Constants
import com.nivesh.production.bajajfd.util.Resource
@ -43,7 +46,6 @@ class StepThreeBajajFDFragment : BaseFragment() {
private val binding get() = _binding!!
private lateinit var listOfDocType: List<GetCodes>
private lateinit var bajajFDInterface: BajajFDInterface
private lateinit var stepThreeBajajFDViewModel: StepThreeBajajFDViewModel
private lateinit var dialog: Dialog
@ -58,18 +60,6 @@ class StepThreeBajajFDFragment : BaseFragment() {
private var checkPANUploadFile: Boolean? = false
private var checkPhotoUploadFile: Boolean? = false
companion object {
fun getInstance(fdInterface: BajajFDInterface): StepThreeBajajFDFragment {
val stepTwoFragment = StepThreeBajajFDFragment()
stepTwoFragment.setApi(fdInterface)
return stepTwoFragment
}
}
private fun setApi(bajajFDInterfaces: BajajFDInterface) {
bajajFDInterface = bajajFDInterfaces
}
private val requestPermission = registerForActivityResult(
ActivityResultContracts.RequestPermission()
) { isGranted: Boolean ->
@ -87,8 +77,15 @@ class StepThreeBajajFDFragment : BaseFragment() {
): View {
_binding = FragmentBajajfdStepThreeBinding.inflate(inflater, container, false)
val root = binding.root
stepThreeBajajFDViewModel = (activity as BajajFdMainActivity).stepThreeBajajFDViewModel
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepThreeBajajFDViewModel = ViewModelProvider(
this,
StepThreeModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepThreeBajajFDViewModel::class.java]
selectImageIntent = registerForActivityResult(ActivityResultContracts.GetContent())
{ uri: Uri? ->
@ -161,7 +158,6 @@ class StepThreeBajajFDFragment : BaseFragment() {
}
docTypeApi()
return root
}
@SuppressLint("Range")
@ -311,7 +307,7 @@ class StepThreeBajajFDFragment : BaseFragment() {
stepThreeBajajFDViewModel.getDocumentUploadMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
Log.e("UploadImage", "Response-->"+response.data.toString())
Log.e("UploadImage", "Response-->" + response.data.toString())
val getUploadResponse: UploadResponse =
Gson().fromJson(response.data?.toString(), UploadResponse::class.java)
getUploadResponse.Response.StatusCode.let { code ->
@ -325,7 +321,8 @@ class StepThreeBajajFDFragment : BaseFragment() {
uploadPosition,
Toast.LENGTH_LONG
).show()
bajajFDInterface.stepThreeApi((activity as BajajFdMainActivity).createFDRequest)
// bajajFDInterface.stepThreeApi((activity as BajajFdMainActivity).createFDRequest)
createFDApi((activity as BajajFdMainActivity).createFDRequest)
}
}
// 650 -> refreshToken()
@ -352,6 +349,51 @@ class StepThreeBajajFDFragment : BaseFragment() {
}
}
private fun createFDApi(data: CreateFDRequest) {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
stepThreeBajajFDViewModel.createFDApi(data, Constants.token)
stepThreeBajajFDViewModel.getFDResponseMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->$response")
val createFDApplicationResponse: CreateFDApplicationResponse =
Gson().fromJson(
response.data?.toString(),
CreateFDApplicationResponse::class.java
)
createFDApplicationResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
(activity as BajajFdMainActivity).stepThreeApi(
createFDApplicationResponse
)
}
// 650 -> refreshToken()
else -> {
Common.showDialogValidation(
activity as BajajFdMainActivity,
createFDApplicationResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
Common.showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
}
}
}
}
private fun docTypeApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest()
@ -445,4 +487,5 @@ class StepThreeBajajFDFragment : BaseFragment() {
fun displayReceivedData(createFDApplicationResponse: CreateFDApplicationResponse) {
uniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId
}
}

+ 78
- 45
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt View File

@ -16,7 +16,7 @@ import android.widget.ArrayAdapter
import android.widget.RadioButton
import android.widget.TextView
import androidx.core.content.ContextCompat
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.textfield.TextInputEditText
@ -25,10 +25,13 @@ import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.BankListAdapter
import com.nivesh.production.bajajfd.adapter.PaymentModeAdapter
import com.nivesh.production.bajajfd.adapter.RecommendedBankListAdapter
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepTwoBinding
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepTwoModelProviderFactory
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorAutoCompleteMethod
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod
@ -40,7 +43,6 @@ import com.nivesh.production.bajajfd.util.Common.Companion.isValidEmail
import com.nivesh.production.bajajfd.util.Common.Companion.isValidName
import com.nivesh.production.bajajfd.util.Common.Companion.isValidPan
import com.nivesh.production.bajajfd.util.Common.Companion.removeError
import com.nivesh.production.bajajfd.util.Constants
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
@ -64,10 +66,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
private lateinit var listOfMaritalStatus: List<GetCodes>
private lateinit var listOfOccupation: List<GetCodes>
private lateinit var listOfPayMode: List<GetCodes>
private lateinit var listOfStates: List<DataObject>
private lateinit var listOfCities: List<DataObjectX>
private lateinit var listOfIFSC: MutableList<String>
private lateinit var stepTwoBajajFDViewModel: StepTwoBajajFDViewModel
@ -75,27 +75,21 @@ class StepTwoBajajFDFragment : BaseFragment() {
private lateinit var paymentModeAdapter: PaymentModeAdapter
private lateinit var stateObject: DataObject
companion object {
fun getInstance(fdInterface: BajajFDInterface): StepTwoBajajFDFragment {
val stepOneFragment = StepTwoBajajFDFragment()
stepOneFragment.setApi(fdInterface)
return stepOneFragment
}
}
private fun setApi(bajajFDInterfaces: BajajFDInterface) {
bajajFDInterface = bajajFDInterfaces
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View {
_binding = FragmentBajajfdStepTwoBinding.inflate(inflater, container, false)
val root = binding.root
stepTwoBajajFDViewModel = (activity as BajajFdMainActivity).stepTwoBajajFDViewModel
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepTwoBajajFDViewModel = ViewModelProvider(
this,
StepTwoModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepTwoBajajFDViewModel::class.java]
listOfTitle = ArrayList()
listOfGender = ArrayList()
listOfAnnualIncome = ArrayList()
@ -533,12 +527,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
}
}
// rbPaymentMode.text = getString(R.string.Upi)
// binding.rgPaymentMode.setOnCheckedChangeListener { group, checkedId ->
// rbPaymentMode = group.findViewById(checkedId)
// Log.e("paymentMode", "-->" + rbPaymentMode.text)
// }
binding.tvEligibleBankOption.setOnClickListener {
apiForEligibleBankList()
}
@ -549,8 +537,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
binding.llBankDetails.visibility = View.GONE
}
binding.addBankDetail.setOnClickListener {
if (binding.llBankDetails.visibility == View.GONE) {
binding.llBankDetails.visibility = View.VISIBLE
@ -721,10 +707,13 @@ class StepTwoBajajFDFragment : BaseFragment() {
(activity as BajajFdMainActivity).createFDRequest.CreateFDApplicationRequest =
(activity as BajajFdMainActivity).createFDApplicantRequest
Log.e(
"CreateFDRequest",
"StepTwoResponse",
"-->" + Gson().toJson((activity as BajajFdMainActivity).createFDRequest)
)
bajajFDInterface.stepTwoApi((activity as BajajFdMainActivity).createFDRequest)
// bajajFDInterface.stepTwoApi((activity as BajajFdMainActivity).createFDRequest)
// (activity as BajajFdMainActivity).stepTwoApi((activity as BajajFdMainActivity).createFDRequest)
createFDApi((activity as BajajFdMainActivity).createFDRequest)
}
}
@ -732,9 +721,54 @@ class StepTwoBajajFDFragment : BaseFragment() {
(activity as BajajFdMainActivity).binding.viewPager.currentItem = 0
}
return root
}
private fun createFDApi(data: CreateFDRequest) {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
stepTwoBajajFDViewModel.createFDApi(data, token)
stepTwoBajajFDViewModel.getFDResponseMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->$response")
val createFDApplicationResponse: CreateFDApplicationResponse =
Gson().fromJson(
response.data?.toString(),
CreateFDApplicationResponse::class.java
)
createFDApplicationResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
(activity as BajajFdMainActivity).stepTwoApi(
createFDApplicationResponse
)
}
// 650 -> refreshToken()
else -> {
Common.showDialogValidation(
activity as BajajFdMainActivity,
createFDApplicationResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
Common.showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
}
}
}
}
private fun ifscCodeCheckApi(ifsc: String) {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
if (ifsc.length == 11) {
@ -889,8 +923,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
}
private fun datePicker(edtDOB: TextInputEditText) {
val year = cal.get(Calendar.YEAR)
val month = cal.get(Calendar.MONTH)
@ -1079,7 +1111,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.paymentModeCategory)
getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.paymentModeApi(getCodeRequest, Constants.token)
stepTwoBajajFDViewModel.paymentModeApi(getCodeRequest, token)
stepTwoBajajFDViewModel.getPaymentModeMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
@ -1089,10 +1121,10 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
if (getCodeResponse.Response.GetCodesList.isNotEmpty()){
listOfPayMode = getCodeResponse.Response.GetCodesList
setUpRecyclerViewPaymentMode(listOfPayMode)
}
if (getCodeResponse.Response.GetCodesList.isNotEmpty()) {
listOfPayMode = getCodeResponse.Response.GetCodesList
setUpRecyclerViewPaymentMode(listOfPayMode)
}
}
// 650 -> refreshToken()
else -> {
@ -1121,13 +1153,13 @@ class StepTwoBajajFDFragment : BaseFragment() {
private fun setUpRecyclerViewPaymentMode(listOfPayMode: List<GetCodes>) {
binding.rvPaymentMode.layoutManager =
LinearLayoutManager(activity as BajajFdMainActivity)
binding.rvPaymentMode.layoutManager =
LinearLayoutManager(activity as BajajFdMainActivity)
paymentModeAdapter = PaymentModeAdapter(
listOfPayMode,
listOfPayMode,
listOfPayMode[0].Value
)
binding.rvPaymentMode.adapter = paymentModeAdapter
)
binding.rvPaymentMode.adapter = paymentModeAdapter
}
@ -1785,14 +1817,15 @@ class StepTwoBajajFDFragment : BaseFragment() {
binding.tlPinCode,
getString(R.string.validPinCode)
)
}else if (binding.edtNomineeDOB.text.toString().isNotEmpty() && isMinor(binding.edtNomineeDOB.text.toString())){
} else if (binding.edtNomineeDOB.text.toString()
.isNotEmpty() && isMinor(binding.edtNomineeDOB.text.toString())
) {
commonErrorMethod(
binding.edtGuardianName,
binding.tlGuardianName,
getString(R.string.validGuardianDetails)
)
}
else if ((activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.ClientBanklist?.isEmpty()!! && binding.edtIFSC.text.toString()
} else if ((activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.ClientBanklist?.isEmpty()!! && binding.edtIFSC.text.toString()
.isEmpty()
) { // EditText
commonErrorAutoCompleteMethod(
@ -1839,7 +1872,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
override fun onDestroyView() {
super.onDestroyView()
// _binding = null
_binding = null
}
}


+ 7
- 0
app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt View File

@ -43,4 +43,11 @@ class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel()
getFDOtherMutableData.postValue(handleRatesResponse(response))
}
val getFDKYCMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun checkFDKYC(requestBody: CheckFDKYCRequest, token : String) = viewModelScope.launch {
getFDKYCMutableData.postValue(Resource.Loading())
val response = mainRepository.checkFDKYCRequest(requestBody, token)
getFDKYCMutableData.postValue(handleRatesResponse(response))
}
}

+ 8
- 0
app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFourBajajFDViewModel.kt View File

@ -7,6 +7,7 @@ import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.GetCodeRequest
import com.nivesh.production.bajajfd.model.GetFDDetailsRequest
import com.nivesh.production.bajajfd.model.GetRatesRequest
import com.nivesh.production.bajajfd.model.SaveFDOtherDataRequest
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.util.Common.Companion.handleRatesResponse
import com.nivesh.production.bajajfd.util.Resource
@ -53,4 +54,11 @@ class StepFourBajajFDViewModel(private val mainRepository: MainRepository) : Vie
val response = mainRepository.paymentReQueryResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
val getFDOtherMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun saveFDOtherData(getRatesRequest: SaveFDOtherDataRequest, token: String) = viewModelScope.launch {
getFDOtherMutableData.postValue(Resource.Loading())
val response = mainRepository.saveFDOtherDataResponse(getRatesRequest, token)
getFDOtherMutableData.postValue(handleRatesResponse(response))
}
}

+ 1
- 6
app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepOneBajajFDViewModel.kt View File

@ -51,12 +51,7 @@ class StepOneBajajFDViewModel(private val mainRepository: MainRepository) : View
getMaxAmountMutableData.postValue(handleRatesResponse(response))
}
val getFDKYCMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun checkFDKYC(requestBody: CheckFDKYCRequest, token : String) = viewModelScope.launch {
getFDKYCMutableData.postValue(Resource.Loading())
val response = mainRepository.checkFDKYCRequest(requestBody, token)
getFDKYCMutableData.postValue(handleRatesResponse(response))
}
// private fun handleRatesResponse(response: retrofit2.Response<JsonObject>): Resource<JsonObject> {
// if (response.isSuccessful) {


+ 7
- 0
app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepThreeBajajFDViewModel.kt View File

@ -4,6 +4,7 @@ import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.CreateFDRequest
import com.nivesh.production.bajajfd.model.DocumentUpload
import com.nivesh.production.bajajfd.model.GetCodeRequest
import com.nivesh.production.bajajfd.model.GetRatesRequest
@ -28,5 +29,11 @@ class StepThreeBajajFDViewModel(private val mainRepository: MainRepository) : Vi
getDocumentUploadMutableData.postValue(handleRatesResponse(response))
}
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun createFDApi(getRatesRequest: CreateFDRequest, token: String) = viewModelScope.launch {
getFDResponseMutableData.postValue(Resource.Loading())
val response = mainRepository.createFDKYCResponse(getRatesRequest, token)
getFDResponseMutableData.postValue(handleRatesResponse(response))
}
}

+ 7
- 0
app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepTwoBajajFDViewModel.kt View File

@ -104,4 +104,11 @@ class StepTwoBajajFDViewModel(private val mainRepository: MainRepository) : View
getPaymentModeMutableData.postValue(handleRatesResponse(response))
}
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun createFDApi(getRatesRequest: CreateFDRequest, token: String) = viewModelScope.launch {
getFDResponseMutableData.postValue(Resource.Loading())
val response = mainRepository.createFDKYCResponse(getRatesRequest, token)
getFDResponseMutableData.postValue(handleRatesResponse(response))
}
}

+ 1
- 1
app/src/main/res/layout/activity_bajaj_fd.xml View File

@ -137,7 +137,7 @@
</LinearLayout>
</com.google.android.material.appbar.AppBarLayout>
<androidx.viewpager.widget.ViewPager
<com.nivesh.production.bajajfd.adapter.DisableAdapter
android:id="@+id/viewPager"
android:contentDescription="@string/viewpager"
android:layout_width="match_parent"


Loading…
Cancel
Save

Powered by TurnKey Linux.