pankaj 2 years ago
parent
commit
ba183e79e1
21 changed files with 506 additions and 762 deletions
  1. +24
    -11
      app/src/main/java/com/nivesh/production/bajajfd/adapter/SectionsPagerAdapter.kt
  2. +0
    -25
      app/src/main/java/com/nivesh/production/bajajfd/adapter/SmartFragmentStatePagerAdapter.kt
  3. +21
    -24
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  4. +0
    -36
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/BaseFragment.kt
  5. +2
    -12
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt
  6. +45
    -39
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt
  7. +44
    -36
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepOneBajajFDFragment.kt
  8. +15
    -29
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt
  9. +40
    -52
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt
  10. +0
    -1
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/FDModelProviderFactory.kt
  11. +0
    -15
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepFiveModelProviderFactory.kt
  12. +0
    -15
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepFourModelProviderFactory.kt
  13. +0
    -14
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepOneModelProviderFactory.kt
  14. +0
    -17
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepThreeModelProviderFactory.kt
  15. +0
    -16
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepTwoModelProviderFactory.kt
  16. +315
    -3
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt
  17. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFiveBajajFDViewModel.kt
  18. +0
    -85
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFourBajajFDViewModel.kt
  19. +0
    -79
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepOneBajajFDViewModel.kt
  20. +0
    -53
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepThreeBajajFDViewModel.kt
  21. +0
    -191
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepTwoBajajFDViewModel.kt

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

@ -2,18 +2,31 @@ package com.nivesh.production.bajajfd.adapter
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentPagerAdapter
class SectionsPagerAdapter(private val fm: FragmentManager, private val fragments: Array<Fragment>, private val NumberOfTabs: Int) : SmartFragmentStatePagerAdapter(fm) {
override fun getItem(position: Int): Fragment {
return fragments[position]
}
class SectionsPagerAdapter(manager: FragmentManager,private val fragments: Array<Fragment>, private val NumberOfTabs: Int) : FragmentPagerAdapter(manager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
override fun getPageTitle(position: Int): CharSequence? {
return null
}
private val titles = ArrayList<String>()
override fun getCount(): Int {
return NumberOfTabs
}
}
override fun getItem(position: Int): Fragment = fragments[position]
override fun getCount(): Int = NumberOfTabs
override fun getPageTitle(position: Int): CharSequence = titles[position]
}
//class SectionsPagerAdapter(private val fm: FragmentManager, private val fragments: Array<Fragment>, private val NumberOfTabs: Int) : SmartFragmentStatePagerAdapter(fm) {
//
// override fun getItem(position: Int): Fragment {
// return fragments[position]
// }
//
// override fun getPageTitle(position: Int): CharSequence? {
// return null
// }
//
// override fun getCount(): Int {
// return NumberOfTabs
// }
//}

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

@ -1,25 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import android.util.SparseArray
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) : FragmentPagerAdapter(fragmentManager) {
private val registeredFragments = SparseArray<Fragment>()
override fun instantiateItem(container: ViewGroup, position: Int): Any {
val fragment = super.instantiateItem(container, position) as Fragment
registeredFragments.put(position, fragment)
return fragment
}
// Returns the fragment for the position (if instantiated)
fun getRegisteredFragment(position: Int): Fragment? {
return registeredFragments[position]
}
}

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

@ -1,6 +1,7 @@
package com.nivesh.production.bajajfd.ui.activity package com.nivesh.production.bajajfd.ui.activity
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Activity
import android.app.Dialog import android.app.Dialog
import android.graphics.Bitmap import android.graphics.Bitmap
import android.graphics.drawable.Drawable import android.graphics.drawable.Drawable
@ -35,7 +36,7 @@ import com.nivesh.production.bajajfd.viewModel.*
class BajajFdMainActivity : BaseActivity() { class BajajFdMainActivity : BaseActivity() {
lateinit var binding: ActivityBajajFdBinding lateinit var binding: ActivityBajajFdBinding
private lateinit var viewModel: BajajFDViewModel
lateinit var viewModel: BajajFDViewModel
private val stepOneBajajFDFragment = StepOneBajajFDFragment() private val stepOneBajajFDFragment = StepOneBajajFDFragment()
private val stepTwoBajajFDFragment = StepTwoBajajFDFragment() private val stepTwoBajajFDFragment = StepTwoBajajFDFragment()
@ -52,12 +53,12 @@ class BajajFdMainActivity : BaseActivity() {
var nomineeDetails: NomineeDetails = NomineeDetails() var nomineeDetails: NomineeDetails = NomineeDetails()
var nomineeGuardianDetails: NomineeGuardianDetails = NomineeGuardianDetails() var nomineeGuardianDetails: NomineeGuardianDetails = NomineeGuardianDetails()
var getClientDetailsResponse: getClientDetailsResponse = getClientDetailsResponse() var getClientDetailsResponse: getClientDetailsResponse = getClientDetailsResponse()
var UniqueId: String = ""
var uniqueId: String = ""
private var stepCount: Int = 0 private var stepCount: Int = 0
private lateinit var sectionsPagerAdapter: SectionsPagerAdapter private lateinit var sectionsPagerAdapter: SectionsPagerAdapter
private lateinit var fragments: Array<Fragment> private lateinit var fragments: Array<Fragment>
var dialogWebView: Dialog? = null var dialogWebView: Dialog? = null
var LoginRole: Int = 0
var loginRole: Int = 0
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
@ -71,11 +72,11 @@ class BajajFdMainActivity : BaseActivity() {
//start Repository //start Repository
viewModel = ViewModelProvider( viewModel = ViewModelProvider(
this,
this@BajajFdMainActivity,
FDModelProviderFactory(MainRepository(ApiClient.getApiClient)) FDModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[BajajFDViewModel::class.java] )[BajajFDViewModel::class.java]
LoginRole = 5
loginRole = 5
if (Common.isNetworkAvailable(this)) { if (Common.isNetworkAvailable(this)) {
getStepsCountApi() getStepsCountApi()
} }
@ -89,13 +90,12 @@ class BajajFdMainActivity : BaseActivity() {
if (Common.isNetworkAvailable(this)) { if (Common.isNetworkAvailable(this)) {
val fdStepsCount = FDStepsCountRequest() val fdStepsCount = FDStepsCountRequest()
fdStepsCount.FDProvider = getString(R.string.bajaj) fdStepsCount.FDProvider = getString(R.string.bajaj)
fdStepsCount.NiveshClientCode = "8872"
// client code =8872 /60476
fdStepsCount.NiveshClientCode = "8872" // 60476
viewModel.getStepsCount(fdStepsCount, token, this) viewModel.getStepsCount(fdStepsCount, token, this)
viewModel.getStepsCountMutableData.observe(this) { response -> viewModel.getStepsCountMutableData.observe(this) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response")
Log.e("response", "-->${response.data.toString()}")
val stepsCountResponse: StepsCountResponse = val stepsCountResponse: StepsCountResponse =
Gson().fromJson( Gson().fromJson(
response.data?.toString(), response.data?.toString(),
@ -144,13 +144,12 @@ class BajajFdMainActivity : BaseActivity() {
getClientDetailsRequest.client_code = "8872" getClientDetailsRequest.client_code = "8872"
getClientDetailsRequest.AppOrWeb = getString(R.string.app) getClientDetailsRequest.AppOrWeb = getString(R.string.app)
getClientDetailsRequest.sub_broker_code = "1038" getClientDetailsRequest.sub_broker_code = "1038"
// 8872/1038
val userRequest = UserRequest() val userRequest = UserRequest()
userRequest.UID = 0 userRequest.UID = 0
userRequest.IPAddress = "" userRequest.IPAddress = ""
userRequest.Source = getString(R.string.source) userRequest.Source = getString(R.string.source)
userRequest.AppOrWeb = getString(R.string.app) userRequest.AppOrWeb = getString(R.string.app)
userRequest.LoggedInRoleId = LoginRole
userRequest.LoggedInRoleId = loginRole
val deviceInfo = DeviceInfo() val deviceInfo = DeviceInfo()
deviceInfo.device_id = "" deviceInfo.device_id = ""
@ -168,7 +167,7 @@ class BajajFdMainActivity : BaseActivity() {
viewModel.getClientDetailsMutableData.observe(this) { response -> viewModel.getClientDetailsMutableData.observe(this) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response")
Log.e("response", "-->${response.data.toString()}")
getClientDetailsResponse = getClientDetailsResponse =
Gson().fromJson( Gson().fromJson(
response.data?.toString(), response.data?.toString(),
@ -230,17 +229,20 @@ class BajajFdMainActivity : BaseActivity() {
val viewPager: DisableAdapter = binding.viewPager val viewPager: DisableAdapter = binding.viewPager
viewPager.setPagingEnabled(false) viewPager.setPagingEnabled(false)
viewPager.adapter = sectionsPagerAdapter viewPager.adapter = sectionsPagerAdapter
if (sectionsPagerAdapter.getCount() > 1) {
viewPager.offscreenPageLimit = sectionsPagerAdapter.count - 1
} else {
viewPager.offscreenPageLimit = 1
}
viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener { viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
override fun onPageScrolled( override fun onPageScrolled(
position: Int, position: Int,
positionOffset: Float, positionOffset: Float,
positionOffsetPixels: Int positionOffsetPixels: Int
) { ) {
Log.e("onPageScrolled", "-->".plus(position))
} }
override fun onPageSelected(position: Int) { override fun onPageSelected(position: Int) {
Log.e("onPageSelected", "-->".plus(position))
when (position) { when (position) {
0 -> { 0 -> {
setBackground( setBackground(
@ -308,7 +310,7 @@ class BajajFdMainActivity : BaseActivity() {
viewModel.getFDKYCMutableData.observe(this) { response -> viewModel.getFDKYCMutableData.observe(this) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response")
Log.e("response", "-->${response.data.toString()}")
val getCodeResponse: GetCodeResponse = val getCodeResponse: GetCodeResponse =
Gson().fromJson( Gson().fromJson(
response.data?.toString(), response.data?.toString(),
@ -363,24 +365,19 @@ class BajajFdMainActivity : BaseActivity() {
} }
// step 1 response // step 1 response
fun stepOneApi(data: String?) {
Log.e("stepOneApi", " response ---> $data")
fun stepOneApi() {
binding.viewPager.currentItem = 1 binding.viewPager.currentItem = 1
} }
// step 2 response // step 2 response
fun stepTwoApi(data: CreateFDApplicationResponse) {
Log.e("stepTwoApi", " response ---> " + Gson().toJson(data))
fun stepTwoApi() {
binding.viewPager.currentItem = 2 binding.viewPager.currentItem = 2
stepThreeBajajFDFragment.displayReceivedData(data)
} }
// step 3 response // step 3 response
fun stepThreeApi(data: CreateFDApplicationResponse) {
Log.e("stepThreeApi", " response --->" + Gson().toJson(data))
// call create fd api
fun stepThreeApi() {
binding.viewPager.currentItem = 3 binding.viewPager.currentItem = 3
stepFourBajajFDFragment.displayReceivedData(data)
stepFourBajajFDFragment.displayReceivedData()
} }
// step 4 response // step 4 response
@ -431,7 +428,7 @@ class BajajFdMainActivity : BaseActivity() {
fun paymentReQueryApi() { fun paymentReQueryApi() {
if (Common.isNetworkAvailable(this)) { if (Common.isNetworkAvailable(this)) {
val paymentReQueryRequest = PaymentReQueryRequest() val paymentReQueryRequest = PaymentReQueryRequest()
paymentReQueryRequest.UniqueId = UniqueId
paymentReQueryRequest.UniqueId = uniqueId
paymentReQueryRequest.NiveshClientCode = paymentReQueryRequest.NiveshClientCode =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
viewModel.getPaymentReQuery(paymentReQueryRequest, token, this) viewModel.getPaymentReQuery(paymentReQueryRequest, token, this)


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

@ -1,36 +0,0 @@
package com.nivesh.production.bajajfd.ui.fragment
import android.content.Context
import android.os.Bundle
import androidx.fragment.app.Fragment
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) {
mActivity = context
} else try {
throw ClassCastException("You need to extend BaseActivity to calling activity.")
} catch (e: Exception) {
e.printStackTrace()
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun onStart() {
super.onStart()
}
override fun onStop() {
super.onStop()
}
}

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

@ -5,17 +5,11 @@ import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFiveBinding import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFiveBinding
import com.nivesh.production.bajajfd.model.PaymentReQueryResponse import com.nivesh.production.bajajfd.model.PaymentReQueryResponse
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.providerfactory.StepFiveModelProviderFactory
import com.nivesh.production.bajajfd.viewModel.StepFiveBajajFDViewModel
class StepFiveBajajFDFragment : Fragment() { class StepFiveBajajFDFragment : Fragment() {
private lateinit var stepFiveBajajFDViewModel: StepFiveBajajFDViewModel
private var _binding: FragmentBajajfdStepFiveBinding? = null private var _binding: FragmentBajajfdStepFiveBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
@ -27,17 +21,13 @@ class StepFiveBajajFDFragment : Fragment() {
return binding.root return binding.root
} }
fun getData(paymentReQueryResponse: PaymentReQueryResponse) {
fun getData(paymentReQueryResponse: PaymentReQueryResponse) {
}
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
stepFiveBajajFDViewModel = ViewModelProvider(
this,
StepFiveModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFiveBajajFDViewModel::class.java]
binding.btnViewOrder.setOnClickListener { binding.btnViewOrder.setOnClickListener {


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

@ -6,32 +6,25 @@ import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import androidx.core.content.res.ResourcesCompat import androidx.core.content.res.ResourcesCompat
import androidx.lifecycle.ViewModelProvider
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import com.google.gson.Gson import com.google.gson.Gson
import com.nivesh.production.bajajfd.R import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.CustomerListAdapter 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.databinding.FragmentBajajfdStepFourBinding
import com.nivesh.production.bajajfd.model.* 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.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepFourModelProviderFactory
import com.nivesh.production.bajajfd.util.Common import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation 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.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepFourBajajFDViewModel
class StepFourBajajFDFragment : BaseFragment() {
class StepFourBajajFDFragment : Fragment() {
private lateinit var stepFourBajajFDViewModel: StepFourBajajFDViewModel
private var _binding: FragmentBajajfdStepFourBinding? = null private var _binding: FragmentBajajfdStepFourBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
private lateinit var listOfCustomer: MutableList<GetCodes> private lateinit var listOfCustomer: MutableList<GetCodes>
private var selectedList: String = "" private var selectedList: String = ""
private var uniqueId: String = ""
private var payUrl: String = "" private var payUrl: String = ""
private var value: String = "" private var value: String = ""
@ -46,25 +39,33 @@ class StepFourBajajFDFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
stepFourBajajFDViewModel = ViewModelProvider(
this,
StepFourModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFourBajajFDViewModel::class.java]
binding.checkBox.setOnCheckedChangeListener { _, _ -> binding.checkBox.setOnCheckedChangeListener { _, _ ->
} }
if ((activity as BajajFdMainActivity).LoginRole == 5) {
binding.btnNext.text = getString(R.string.pay)
binding.btnNext.setBackgroundColor(ResourcesCompat.getColor(resources, R.color.green, null))
}else{
if ((activity as BajajFdMainActivity).loginRole == 5) {
binding.btnNext.text = getString(R.string.pay)
binding.btnNext.setBackgroundColor(
ResourcesCompat.getColor(
resources,
R.color.green,
null
)
)
} else {
binding.btnNext.text = getString(R.string.viewOrder) binding.btnNext.text = getString(R.string.viewOrder)
binding.btnNext.setBackgroundColor(ResourcesCompat.getColor(resources, R.color.red, null))
binding.btnNext.setBackgroundColor(
ResourcesCompat.getColor(
resources,
R.color.red,
null
)
)
} }
binding.btnNext.setOnClickListener { binding.btnNext.setOnClickListener {
if ((activity as BajajFdMainActivity).LoginRole == 5) {
if ((activity as BajajFdMainActivity).loginRole == 5) {
selectedList = "" selectedList = ""
for (getCodes in listOfCustomer) { for (getCodes in listOfCustomer) {
if (getCodes.isSelected) { if (getCodes.isSelected) {
@ -78,7 +79,7 @@ class StepFourBajajFDFragment : BaseFragment() {
if (binding.checkBox.isChecked && selectedList.isNotEmpty()) { if (binding.checkBox.isChecked && selectedList.isNotEmpty()) {
val saveFDOtherDataRequest = SaveFDOtherDataRequest() val saveFDOtherDataRequest = SaveFDOtherDataRequest()
saveFDOtherDataRequest.FDProvider = getString(R.string.bajaj) saveFDOtherDataRequest.FDProvider = getString(R.string.bajaj)
saveFDOtherDataRequest.UniqueId = uniqueId
saveFDOtherDataRequest.UniqueId = (activity as BajajFdMainActivity).uniqueId
saveFDOtherDataRequest.Values = selectedList saveFDOtherDataRequest.Values = selectedList
saveFDOtherDataRequest.NiveshClientCode = saveFDOtherDataRequest.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
@ -90,7 +91,7 @@ class StepFourBajajFDFragment : BaseFragment() {
resources.getString(R.string.validTermsConditions) resources.getString(R.string.validTermsConditions)
) )
} }
}else{
} else {
// go to view order // go to view order
} }
} }
@ -101,8 +102,12 @@ class StepFourBajajFDFragment : BaseFragment() {
} }
private fun saveFDOtherData(data: SaveFDOtherDataRequest, payUrl: String, value: String) { private fun saveFDOtherData(data: SaveFDOtherDataRequest, payUrl: String, value: String) {
stepFourBajajFDViewModel.saveFDOtherData(data, token, activity as BajajFdMainActivity)
stepFourBajajFDViewModel.getFDOtherMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.saveFDOtherData(
data,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getFDOtherMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->" + response.data.toString()) Log.e("response", "-->" + response.data.toString())
@ -142,14 +147,11 @@ class StepFourBajajFDFragment : BaseFragment() {
} }
} }
fun displayReceivedData(createFDApplicationResponse: CreateFDApplicationResponse) {
uniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId
getFDDetailsApi(createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId)
fun displayReceivedData() {
getFDDetailsApi()
customerListApi() customerListApi()
} }
private fun customerListApi() { private fun customerListApi() {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -157,12 +159,14 @@ class StepFourBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.customerCategory) getCodeRequest.Category = getString(R.string.customerCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepFourBajajFDViewModel.paymentModeApi(
(activity as BajajFdMainActivity).viewModel.paymentModeApi(
getCodeRequest, getCodeRequest,
Constants.token,
token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepFourBajajFDViewModel.getPaymentModeMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getPaymentModeMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -210,19 +214,21 @@ class StepFourBajajFDFragment : BaseFragment() {
} }
private fun getFDDetailsApi(uniqueId: String) {
if (Common.isNetworkAvailable(mActivity!!)) {
private fun getFDDetailsApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getFDDetailsRequest = GetFDDetailsRequest() val getFDDetailsRequest = GetFDDetailsRequest()
getFDDetailsRequest.FDProvider = mActivity!!.getString(R.string.bajaj)
getFDDetailsRequest.FDProvider = getString(R.string.bajaj)
getFDDetailsRequest.NiveshClientCode = getFDDetailsRequest.NiveshClientCode =
(mActivity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
getFDDetailsRequest.UniqueId = uniqueId
stepFourBajajFDViewModel.getFDDetails(
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
getFDDetailsRequest.UniqueId = (activity as BajajFdMainActivity).uniqueId
(activity as BajajFdMainActivity).viewModel.getFDDetails(
getFDDetailsRequest, getFDDetailsRequest,
Constants.token,
token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepFourBajajFDViewModel.getFDDetailsMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getFDDetailsMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")


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

@ -12,32 +12,27 @@ import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.ArrayAdapter import android.widget.ArrayAdapter
import android.widget.RadioButton import android.widget.RadioButton
import androidx.lifecycle.ViewModelProvider
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.DefaultItemAnimator import androidx.recyclerview.widget.DefaultItemAnimator
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView.LayoutManager import androidx.recyclerview.widget.RecyclerView.LayoutManager
import com.google.gson.Gson import com.google.gson.Gson
import com.nivesh.production.bajajfd.R import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.HorizontalRecyclerViewAdapter 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.databinding.FragmentBajajfdStepOneBinding
import com.nivesh.production.bajajfd.model.* 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.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepOneModelProviderFactory
import com.nivesh.production.bajajfd.util.Common import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod
import com.nivesh.production.bajajfd.util.Common.Companion.removeError import com.nivesh.production.bajajfd.util.Common.Companion.removeError
import com.nivesh.production.bajajfd.util.Constants.Companion.token import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
class StepOneBajajFDFragment : BaseFragment() {
class StepOneBajajFDFragment : Fragment() {
private var _binding: FragmentBajajfdStepOneBinding? = null private var _binding: FragmentBajajfdStepOneBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
private lateinit var stepOneBajajFDViewModel: StepOneBajajFDViewModel
private lateinit var rgMaturity: RadioButton private lateinit var rgMaturity: RadioButton
private lateinit var listOfTenure: MutableList<ROIDataList> private lateinit var listOfTenure: MutableList<ROIDataList>
private lateinit var recyclerViewDropDownAdapter: HorizontalRecyclerViewAdapter private lateinit var recyclerViewDropDownAdapter: HorizontalRecyclerViewAdapter
@ -57,12 +52,8 @@ class StepOneBajajFDFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
stepOneBajajFDViewModel = ViewModelProvider(
this,
StepOneModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepOneBajajFDViewModel::class.java]
listOfTenure = ArrayList()
listOfTenure = ArrayList()
binding.edtAmount.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(8)) // upto 1 Cr binding.edtAmount.filters = arrayOf<InputFilter>(InputFilter.LengthFilter(8)) // upto 1 Cr
listOfMinAmount = ArrayList() listOfMinAmount = ArrayList()
@ -92,7 +83,6 @@ class StepOneBajajFDFragment : BaseFragment() {
} else { } else {
binding.txtCumulativeNon.text = getString(R.string.cumulativeROI) binding.txtCumulativeNon.text = getString(R.string.cumulativeROI)
} }
if (binding.edtAmount.text.toString().trim().isNotEmpty()) { if (binding.edtAmount.text.toString().trim().isNotEmpty()) {
maturityAmountApi(tenure, interest) maturityAmountApi(tenure, interest)
} }
@ -123,11 +113,6 @@ class StepOneBajajFDFragment : BaseFragment() {
Log.e("Maturity", "-->" + rgMaturity.text) Log.e("Maturity", "-->" + rgMaturity.text)
} }
// TAX Deduct
binding.rbDeductTax.setOnCheckedChangeListener { _, _ ->
Log.e("DeductTax", "-->" + binding.rbDeductTax.isChecked)
}
// Next Button // Next Button
binding.btnNext.setOnClickListener { binding.btnNext.setOnClickListener {
if (validation()) { if (validation()) {
@ -137,7 +122,8 @@ class StepOneBajajFDFragment : BaseFragment() {
binding.spInterestPayout.text.toString() binding.spInterestPayout.text.toString()
(activity as BajajFdMainActivity).fdInvestmentDetails.Tenure = tenure (activity as BajajFdMainActivity).fdInvestmentDetails.Tenure = tenure
(activity as BajajFdMainActivity).fdInvestmentDetails.Interest = interest (activity as BajajFdMainActivity).fdInvestmentDetails.Interest = interest
(activity as BajajFdMainActivity).fdInvestmentDetails.NiveshClientCode = (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
(activity as BajajFdMainActivity).fdInvestmentDetails.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
(activity as BajajFdMainActivity).fdInvestmentDetails.Provider = (activity as BajajFdMainActivity).fdInvestmentDetails.Provider =
getString(R.string.bajaj) getString(R.string.bajaj)
(activity as BajajFdMainActivity).fdInvestmentDetails.IPAddress = "192.168.1.23" (activity as BajajFdMainActivity).fdInvestmentDetails.IPAddress = "192.168.1.23"
@ -154,7 +140,8 @@ class StepOneBajajFDFragment : BaseFragment() {
} }
(activity as BajajFdMainActivity).fdInvestmentDetails.CustomerType = "" (activity as BajajFdMainActivity).fdInvestmentDetails.CustomerType = ""
(activity as BajajFdMainActivity).fdInvestmentDetails.CKYCNumber = "" (activity as BajajFdMainActivity).fdInvestmentDetails.CKYCNumber = ""
(activity as BajajFdMainActivity).fdInvestmentDetails.UniqueId = (activity as BajajFdMainActivity).UniqueId
(activity as BajajFdMainActivity).fdInvestmentDetails.UniqueId =
(activity as BajajFdMainActivity).uniqueId
(activity as BajajFdMainActivity).createFDApplicantRequest.FDInvestmentDetails = (activity as BajajFdMainActivity).createFDApplicantRequest.FDInvestmentDetails =
(activity as BajajFdMainActivity).fdInvestmentDetails (activity as BajajFdMainActivity).fdInvestmentDetails
@ -162,13 +149,12 @@ class StepOneBajajFDFragment : BaseFragment() {
"StepOneData", "StepOneData",
"-->" + Gson().toJson((activity as BajajFdMainActivity).fdInvestmentDetails) "-->" + Gson().toJson((activity as BajajFdMainActivity).fdInvestmentDetails)
) )
(activity as BajajFdMainActivity).stepOneApi("stepOneResponse")
(activity as BajajFdMainActivity).stepOneApi()
} }
} }
minAmountApi() minAmountApi()
interestPayoutApi() interestPayoutApi()
} }
private fun interestPayoutApi() { private fun interestPayoutApi() {
@ -177,11 +163,15 @@ class StepOneBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.category) getCodeRequest.Category = getString(R.string.category)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepOneBajajFDViewModel.getCode(getCodeRequest, token, activity as BajajFdMainActivity)
stepOneBajajFDViewModel.getCodeMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getCode(
getCodeRequest,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getCodeMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response")
Log.e("response", "-->${response.data.toString()}")
val getCodeResponse: GetCodeResponse = val getCodeResponse: GetCodeResponse =
Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java) Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java)
getCodeResponse.Response.StatusCode.let { code -> getCodeResponse.Response.StatusCode.let { code ->
@ -236,11 +226,17 @@ class StepOneBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.minAmountCategory) getCodeRequest.Category = getString(R.string.minAmountCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepOneBajajFDViewModel.getMinAmount(getCodeRequest, token, activity as BajajFdMainActivity)
stepOneBajajFDViewModel.getMinAmountMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getMinAmount(
getCodeRequest,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getMinAmountMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response")
Log.e("response", "-->${response.data.toString()}")
val getCodeResponse: GetCodeResponse = val getCodeResponse: GetCodeResponse =
Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java) Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java)
getCodeResponse.Response.StatusCode.let { code -> getCodeResponse.Response.StatusCode.let { code ->
@ -286,11 +282,17 @@ class StepOneBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.MaxAmountCategory) getCodeRequest.Category = getString(R.string.MaxAmountCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepOneBajajFDViewModel.getMaxAmount(getCodeRequest, token, activity as BajajFdMainActivity)
stepOneBajajFDViewModel.getMaxAmountMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getMaxAmount(
getCodeRequest,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getMaxAmountMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response")
Log.e("response", "-->${response.data.toString()}")
val getCodeResponse: GetCodeResponse = val getCodeResponse: GetCodeResponse =
Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java) Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java)
getCodeResponse.Response.StatusCode.let { code -> getCodeResponse.Response.StatusCode.let { code ->
@ -353,11 +355,13 @@ class StepOneBajajFDFragment : BaseFragment() {
maturityAmountRequest.Frequency = binding.spInterestPayout.text.toString() maturityAmountRequest.Frequency = binding.spInterestPayout.text.toString()
maturityAmountRequest.Tenure = tenure maturityAmountRequest.Tenure = tenure
maturityAmountRequest.Interest = interest maturityAmountRequest.Interest = interest
stepOneBajajFDViewModel.getMaturityAmount(
(activity as BajajFdMainActivity).viewModel.getMaturityAmount(
maturityAmountRequest, maturityAmountRequest,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepOneBajajFDViewModel.getMaturityAmountMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getMaturityAmountMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
val getMaturityAmountResponse = val getMaturityAmountResponse =
@ -452,8 +456,12 @@ class StepOneBajajFDFragment : BaseFragment() {
} else { } else {
getRatesRequest.type = getString(R.string.nonSeniorCitizen) getRatesRequest.type = getString(R.string.nonSeniorCitizen)
} }
stepOneBajajFDViewModel.getRates(getRatesRequest, token, activity as BajajFdMainActivity)
stepOneBajajFDViewModel.getRatesMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getRates(
getRatesRequest,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getRatesMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
val getRatesResponse: GetRatesResponse = val getRatesResponse: GetRatesResponse =
@ -523,6 +531,6 @@ class StepOneBajajFDFragment : BaseFragment() {
override fun onDestroyView() { override fun onDestroyView() {
super.onDestroyView() super.onDestroyView()
_binding = null
_binding = null
} }
} }

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

@ -2,7 +2,6 @@ package com.nivesh.production.bajajfd.ui.fragment
import android.Manifest import android.Manifest
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Dialog
import android.content.DialogInterface import android.content.DialogInterface
import android.content.Intent import android.content.Intent
import android.content.pm.PackageManager import android.content.pm.PackageManager
@ -24,35 +23,29 @@ import androidx.activity.result.contract.ActivityResultContracts
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.core.content.FileProvider import androidx.core.content.FileProvider
import androidx.lifecycle.ViewModelProvider
import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import com.google.gson.Gson import com.google.gson.Gson
import com.nivesh.production.bajajfd.BuildConfig import com.nivesh.production.bajajfd.BuildConfig
import com.nivesh.production.bajajfd.R 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.databinding.FragmentBajajfdStepThreeBinding
import com.nivesh.production.bajajfd.model.* 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.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepThreeModelProviderFactory
import com.nivesh.production.bajajfd.util.Common import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.getFileExtension import com.nivesh.production.bajajfd.util.Common.Companion.getFileExtension
import com.nivesh.production.bajajfd.util.Constants import com.nivesh.production.bajajfd.util.Constants
import com.nivesh.production.bajajfd.util.ImageUtil import com.nivesh.production.bajajfd.util.ImageUtil
import com.nivesh.production.bajajfd.util.Resource import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepThreeBajajFDViewModel
import java.io.* import java.io.*
class StepThreeBajajFDFragment : BaseFragment() {
class StepThreeBajajFDFragment : Fragment() {
private var bitmap: Bitmap? = null private var bitmap: Bitmap? = null
private var latestTmpUri: Uri? = null private var latestTmpUri: Uri? = null
private var _binding: FragmentBajajfdStepThreeBinding? = null private var _binding: FragmentBajajfdStepThreeBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
private lateinit var stepThreeBajajFDViewModel: StepThreeBajajFDViewModel
private lateinit var dialog: Dialog
private var takeImageResult: ActivityResultLauncher<Uri>? = null private var takeImageResult: ActivityResultLauncher<Uri>? = null
private var selectImageIntent: ActivityResultLauncher<String>? = null private var selectImageIntent: ActivityResultLauncher<String>? = null
@ -64,7 +57,6 @@ class StepThreeBajajFDFragment : BaseFragment() {
private var photoFileExt: String? = "" private var photoFileExt: String? = ""
private var doc1FileExt: String? = "" private var doc1FileExt: String? = ""
private var doc2fileExt: String? = "" private var doc2fileExt: String? = ""
private var uniqueId: String? = ""
private var docValue: String = "" private var docValue: String = ""
private val mainPANUpload: Int = 1 private val mainPANUpload: Int = 1
private val mainPhotoUpload: Int = 2 private val mainPhotoUpload: Int = 2
@ -98,10 +90,6 @@ class StepThreeBajajFDFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
stepThreeBajajFDViewModel = ViewModelProvider(
this,
StepThreeModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepThreeBajajFDViewModel::class.java]
selectImageIntent = registerForActivityResult(ActivityResultContracts.GetContent()) selectImageIntent = registerForActivityResult(ActivityResultContracts.GetContent())
{ uri: Uri? -> { uri: Uri? ->
@ -211,7 +199,7 @@ class StepThreeBajajFDFragment : BaseFragment() {
private fun selectImage() { private fun selectImage() {
val builder = AlertDialog.Builder( val builder = AlertDialog.Builder(
mActivity!!
activity as BajajFdMainActivity
) )
builder.setTitle("Add Photo!") builder.setTitle("Add Photo!")
builder.setItems( builder.setItems(
@ -415,13 +403,15 @@ class StepThreeBajajFDFragment : BaseFragment() {
du.ImageEncodeToBase64 = imageBase64 du.ImageEncodeToBase64 = imageBase64
du.NiveshClientCode = du.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
du.UniqueId = uniqueId
stepThreeBajajFDViewModel.documentsUpload(
du.UniqueId = (activity as BajajFdMainActivity).uniqueId
(activity as BajajFdMainActivity).viewModel.documentsUpload(
du, du,
Constants.token, Constants.token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepThreeBajajFDViewModel.getDocumentUploadMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getDocumentUploadMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("UploadImage", "Response-->" + response.data.toString()) Log.e("UploadImage", "Response-->" + response.data.toString())
@ -467,12 +457,14 @@ class StepThreeBajajFDFragment : BaseFragment() {
} }
private fun createFDApi(data: CreateFDRequest) { private fun createFDApi(data: CreateFDRequest) {
stepThreeBajajFDViewModel.createFDApi(
(activity as BajajFdMainActivity).viewModel.createFDApi(
data, data,
Constants.token, Constants.token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepThreeBajajFDViewModel.getFDResponseMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getFDResponseMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("createFDApi", "response--> " + response.data.toString()) Log.e("createFDApi", "response--> " + response.data.toString())
@ -484,9 +476,7 @@ class StepThreeBajajFDFragment : BaseFragment() {
createFDApplicationResponse.Response.StatusCode.let { code -> createFDApplicationResponse.Response.StatusCode.let { code ->
when (code) { when (code) {
200 -> { 200 -> {
(activity as BajajFdMainActivity).stepThreeApi(
createFDApplicationResponse
)
(activity as BajajFdMainActivity).stepThreeApi()
} }
// 650 -> refreshToken() // 650 -> refreshToken()
else -> { else -> {
@ -520,12 +510,12 @@ class StepThreeBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.docType) getCodeRequest.Category = getString(R.string.docType)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepThreeBajajFDViewModel.titleApi(
(activity as BajajFdMainActivity).viewModel.docTypeApi(
getCodeRequest, getCodeRequest,
Constants.token, Constants.token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepThreeBajajFDViewModel.getTitleMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getDocTypeMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -630,10 +620,6 @@ class StepThreeBajajFDFragment : BaseFragment() {
) )
} }
fun displayReceivedData(createFDApplicationResponse: CreateFDApplicationResponse) {
uniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId
}
private fun uriToBitmap(selectedFileUri: Uri): Bitmap? { private fun uriToBitmap(selectedFileUri: Uri): Bitmap? {
try { try {
val parcelFileDescriptor = val parcelFileDescriptor =


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

@ -17,7 +17,7 @@ import android.widget.ArrayAdapter
import android.widget.RadioButton import android.widget.RadioButton
import android.widget.TextView import android.widget.TextView
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.lifecycle.ViewModelProvider
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
@ -27,13 +27,9 @@ import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.BankListAdapter import com.nivesh.production.bajajfd.adapter.BankListAdapter
import com.nivesh.production.bajajfd.adapter.PaymentModeAdapter import com.nivesh.production.bajajfd.adapter.PaymentModeAdapter
import com.nivesh.production.bajajfd.adapter.RecommendedBankListAdapter 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.databinding.FragmentBajajfdStepTwoBinding
import com.nivesh.production.bajajfd.model.* 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.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.commonErrorAutoCompleteMethod
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod
import com.nivesh.production.bajajfd.util.Common.Companion.commonSpinnerErrorMethod import com.nivesh.production.bajajfd.util.Common.Companion.commonSpinnerErrorMethod
@ -47,11 +43,10 @@ import com.nivesh.production.bajajfd.util.Common.Companion.removeError
import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation
import com.nivesh.production.bajajfd.util.Constants.Companion.token import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
import java.util.* import java.util.*
class StepTwoBajajFDFragment : BaseFragment() {
class StepTwoBajajFDFragment : Fragment() {
private var _binding: FragmentBajajfdStepTwoBinding? = null private var _binding: FragmentBajajfdStepTwoBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
@ -71,7 +66,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
private lateinit var listOfCities: List<DataObjectX> private lateinit var listOfCities: List<DataObjectX>
private lateinit var listOfIFSC: MutableList<String> private lateinit var listOfIFSC: MutableList<String>
private lateinit var stepTwoBajajFDViewModel: StepTwoBajajFDViewModel
private lateinit var bankListAdapter: BankListAdapter private lateinit var bankListAdapter: BankListAdapter
private lateinit var paymentModeAdapter: PaymentModeAdapter private lateinit var paymentModeAdapter: PaymentModeAdapter
private lateinit var stateObject: DataObject private lateinit var stateObject: DataObject
@ -89,10 +83,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
stepTwoBajajFDViewModel = ViewModelProvider(
this,
StepTwoModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepTwoBajajFDViewModel::class.java]
listOfTitle = ArrayList() listOfTitle = ArrayList()
listOfGender = ArrayList() listOfGender = ArrayList()
listOfAnnualIncome = ArrayList() listOfAnnualIncome = ArrayList()
@ -531,7 +521,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
.plus(binding.edtLastName.text.toString()), .plus(binding.edtLastName.text.toString()),
binding.edtMobileNumber.text.toString(), binding.edtMobileNumber.text.toString(),
1 1
)
, (activity as BajajFdMainActivity).loginRole)
} }
} }
@ -547,7 +537,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
binding.addBankDetail.setOnClickListener { binding.addBankDetail.setOnClickListener {
if (bankListAdapter.itemCount == 5) { if (bankListAdapter.itemCount == 5) {
showDialogValidation(mActivity, getString(R.string.fiveAccountValidation))
showDialogValidation(activity as BajajFdMainActivity, getString(R.string.fiveAccountValidation))
} else { } else {
showHideBankDetail() showHideBankDetail()
} }
@ -728,8 +718,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
} }
private fun createFDApi(data: CreateFDRequest) { private fun createFDApi(data: CreateFDRequest) {
stepTwoBajajFDViewModel.createFDApi(data, token, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getFDResponseMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.createFDApi(data, token, activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getFDResponseMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -741,10 +731,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
createFDApplicationResponse.Response.StatusCode.let { code -> createFDApplicationResponse.Response.StatusCode.let { code ->
when (code) { when (code) {
200 -> { 200 -> {
(activity as BajajFdMainActivity).UniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId
(activity as BajajFdMainActivity).stepTwoApi(
createFDApplicationResponse
)
(activity as BajajFdMainActivity).uniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId
(activity as BajajFdMainActivity).stepTwoApi()
} }
// 650 -> refreshToken() // 650 -> refreshToken()
@ -775,8 +763,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
private fun ifscCodeCheckApi(ifsc: String) { private fun ifscCodeCheckApi(ifsc: String) {
if (ifsc.length >= 10) { if (ifsc.length >= 10) {
stepTwoBajajFDViewModel.ifscCodeApi(ifsc, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getIfscCodeCheckMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.ifscCodeApi(ifsc, activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getIfscCodeCheckMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
val getIFSCCodeListResponse = val getIFSCCodeListResponse =
@ -841,11 +829,11 @@ class StepTwoBajajFDFragment : BaseFragment() {
private fun getIFSCDetailsApi(ifscCode: String) { private fun getIFSCDetailsApi(ifscCode: String) {
stepTwoBajajFDViewModel.ifscCodeDetailsApi(
(activity as BajajFdMainActivity).viewModel.ifscCodeDetailsApi(
ifscCode, ifscCode,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getIfscCodeDetailsCheckMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getIfscCodeDetailsCheckMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
if (response.data.toString().isNotEmpty()) { if (response.data.toString().isNotEmpty()) {
@ -878,21 +866,21 @@ class StepTwoBajajFDFragment : BaseFragment() {
private fun verifyAccountNo( private fun verifyAccountNo(
bankAccount: String, Ifsc: String, name: String, phoneNumber: String, bankNo: Int bankAccount: String, Ifsc: String, name: String, phoneNumber: String, bankNo: Int
) {
,loginRole : Int) {
val bankValidationApiRequest = BankValidationApiRequest() val bankValidationApiRequest = BankValidationApiRequest()
bankValidationApiRequest.BankAccountNo = bankAccount bankValidationApiRequest.BankAccountNo = bankAccount
bankValidationApiRequest.IFSC = Ifsc bankValidationApiRequest.IFSC = Ifsc
bankValidationApiRequest.Name = name bankValidationApiRequest.Name = name
bankValidationApiRequest.PhoneNo = phoneNumber bankValidationApiRequest.PhoneNo = phoneNumber
bankValidationApiRequest.RoleId = 5
bankValidationApiRequest.RoleId = loginRole
bankValidationApiRequest.BankNo = bankNo bankValidationApiRequest.BankNo = bankNo
stepTwoBajajFDViewModel.bankValidationApi(
(activity as BajajFdMainActivity).viewModel.bankValidationApi(
bankValidationApiRequest, bankValidationApiRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.bankValidationApiMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.bankValidationApiMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
val getBankValidationApiResponse = val getBankValidationApiResponse =
@ -1006,7 +994,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
requireActivity().windowManager.defaultDisplay.getMetrics(displayMetrics) requireActivity().windowManager.defaultDisplay.getMetrics(displayMetrics)
val width = displayMetrics.widthPixels.toDouble() val width = displayMetrics.widthPixels.toDouble()
binding.rvClientBankList.layoutManager = LinearLayoutManager( binding.rvClientBankList.layoutManager = LinearLayoutManager(
mActivity,
activity as BajajFdMainActivity,
LinearLayoutManager.HORIZONTAL, LinearLayoutManager.HORIZONTAL,
false false
) )
@ -1063,8 +1051,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.sub_broker_code (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.sub_broker_code
panCheck.panNumber = binding.edtPANNumber.text.toString() panCheck.panNumber = binding.edtPANNumber.text.toString()
panCheck.mobileNumber = "" panCheck.mobileNumber = ""
stepTwoBajajFDViewModel.panCheck(panCheck, token, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getPanCheckMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.panCheck(panCheck, token, activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getPanCheckMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
val panCheckResponse = val panCheckResponse =
@ -1121,8 +1109,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.salutationCategory) getCodeRequest.Category = getString(R.string.salutationCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.titleApi(getCodeRequest, token, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getTitleMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.titleApi(getCodeRequest, token, activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getTitleMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1204,12 +1192,12 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.paymentModeCategory) getCodeRequest.Category = getString(R.string.paymentModeCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.paymentModeApi(
(activity as BajajFdMainActivity).viewModel.paymentModeApi(
getCodeRequest, getCodeRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getPaymentModeMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getPaymentModeMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1266,12 +1254,12 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.genderCategory) getCodeRequest.Category = getString(R.string.genderCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.genderApi(
(activity as BajajFdMainActivity).viewModel.genderApi(
getCodeRequest, getCodeRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getGenderMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getGenderMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1326,12 +1314,12 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.relationshipCategory) getCodeRequest.Category = getString(R.string.relationshipCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.relationShipApi(
(activity as BajajFdMainActivity).viewModel.relationShipApi(
getCodeRequest, getCodeRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getRelationShipMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getRelationShipMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1394,12 +1382,12 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.maritalCategory) getCodeRequest.Category = getString(R.string.maritalCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.maritalStatusApi(
(activity as BajajFdMainActivity).viewModel.maritalStatusApi(
getCodeRequest, getCodeRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getMaritalStatusMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getMaritalStatusMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1454,12 +1442,12 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.occupationCategory) getCodeRequest.Category = getString(R.string.occupationCategory)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.occupationApi(
(activity as BajajFdMainActivity).viewModel.occupationApi(
getCodeRequest, getCodeRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getOccupationMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getOccupationMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1514,12 +1502,12 @@ class StepTwoBajajFDFragment : BaseFragment() {
getCodeRequest.Category = getString(R.string.annualIncome) getCodeRequest.Category = getString(R.string.annualIncome)
getCodeRequest.Language = getString(R.string.language) getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = "" getCodeRequest.InputValue = ""
stepTwoBajajFDViewModel.annualIncomeApi(
(activity as BajajFdMainActivity).viewModel.annualIncomeApi(
getCodeRequest, getCodeRequest,
token, token,
activity as BajajFdMainActivity activity as BajajFdMainActivity
) )
stepTwoBajajFDViewModel.getAnnualIncomeMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.getAnnualIncomeMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1569,8 +1557,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
} }
private fun stateListApi() { private fun stateListApi() {
stepTwoBajajFDViewModel.stateApi(token, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getStateMasterMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.stateApi(token, activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getStateMasterMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1647,7 +1635,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
cityRequest.Type = "" cityRequest.Type = ""
cityRequest.ClientCode = cityRequest.ClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
cityRequest.RoleID = 5
cityRequest.RoleID = (activity as BajajFdMainActivity).loginRole
cityRequest.APIName = "" cityRequest.APIName = ""
cityRequest.UID = 19060 cityRequest.UID = 19060
cityRequest.Subbroker_Code = cityRequest.Subbroker_Code =
@ -1656,8 +1644,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
cityRequest.HOCode = "" cityRequest.HOCode = ""
cityRequest.Source = getString(R.string.source) cityRequest.Source = getString(R.string.source)
cityRequest.APP_Web = getString(R.string.app) cityRequest.APP_Web = getString(R.string.app)
stepTwoBajajFDViewModel.cityListApi(cityRequest, token, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getCityListMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.cityListApi(cityRequest, token, activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getCityListMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
@ -1719,8 +1707,8 @@ class StepTwoBajajFDFragment : BaseFragment() {
} }
private fun apiForEligibleBankList() { private fun apiForEligibleBankList() {
stepTwoBajajFDViewModel.bankListApi(token,getString(R.string.language), activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getFDBankListMutableData.observe(viewLifecycleOwner) { response ->
(activity as BajajFdMainActivity).viewModel.bankListApi(token,getString(R.string.language), activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getFDBankListMutableData.observe(viewLifecycleOwner) { response ->
when (response) { when (response) {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")


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

@ -4,7 +4,6 @@ import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.repositories.MainRepository import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
class FDModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory { class FDModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory {


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

@ -1,15 +0,0 @@
package com.nivesh.production.bajajfd.ui.providerfactory
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.viewModel.StepFiveBajajFDViewModel
class StepFiveModelProviderFactory(private val mainRepository: MainRepository) :
ViewModelProvider.Factory {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
return StepFiveBajajFDViewModel(mainRepository) as T
}
}

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

@ -1,15 +0,0 @@
package com.nivesh.production.bajajfd.ui.providerfactory
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.viewModel.StepFourBajajFDViewModel
class StepFourModelProviderFactory(private val mainRepository: MainRepository) :
ViewModelProvider.Factory {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
return StepFourBajajFDViewModel(mainRepository) as T
}
}

+ 0
- 14
app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepOneModelProviderFactory.kt View File

@ -1,14 +0,0 @@
package com.nivesh.production.bajajfd.ui.providerfactory
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
class StepOneModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
return StepOneBajajFDViewModel(mainRepository) as T
}
}

+ 0
- 17
app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepThreeModelProviderFactory.kt View File

@ -1,17 +0,0 @@
package com.nivesh.production.bajajfd.ui.providerfactory
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepThreeBajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
class StepThreeModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
return StepThreeBajajFDViewModel(mainRepository) as T
}
}

+ 0
- 16
app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepTwoModelProviderFactory.kt View File

@ -1,16 +0,0 @@
package com.nivesh.production.bajajfd.ui.providerfactory
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
class StepTwoModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
return StepTwoBajajFDViewModel(mainRepository) as T
}
}

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

@ -7,14 +7,14 @@ import androidx.lifecycle.viewModelScope
import com.google.gson.JsonObject import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.* import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.util.Common import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.handleError import com.nivesh.production.bajajfd.util.Common.Companion.handleError
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse
import com.nivesh.production.bajajfd.util.Constants
import com.nivesh.production.bajajfd.util.Resource import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
open class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
val getStepsCountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() val getStepsCountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getStepsCount( fun getStepsCount(
@ -49,7 +49,6 @@ class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel()
} }
} }
val getPaymentReQueryMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() val getPaymentReQueryMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getPaymentReQuery(requestBody: PaymentReQueryRequest, token : String, activity: Activity) = viewModelScope.launch(handleError(activity)) { fun getPaymentReQuery(requestBody: PaymentReQueryRequest, token : String, activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) { if (Common.isNetworkAvailable(activity)) {
@ -60,4 +59,317 @@ class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel()
} }
// Step 1 Api
val getMinAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getMinAmount(requestBody: GetCodeRequest, token: String, activity: Activity) =
viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMinAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody, token)
getMinAmountMutableData.postValue(handleResponse(response))
}
}
val getMaxAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getMaxAmount(requestBody: GetCodeRequest, token: String, activity: Activity) =
viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMaxAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody, token)
getMaxAmountMutableData.postValue(handleResponse(response))
}
}
val getMaturityAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getMaturityAmount(requestBody: GetMaturityAmountRequest, activity: Activity) =
viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMaturityAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.createCalculateFDMaturityAmount(requestBody,
Constants.token
)
getMaturityAmountMutableData.postValue(handleResponse(response))
}
}
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getRates(getRatesRequest: GetRatesRequest, token: String, activity: Activity) =
viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.getRatesResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
val getCodeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getCode(requestBody: GetCodeRequest, token: String, activity: Activity) =
viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getCodeMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody, token)
getCodeMutableData.postValue(handleResponse(response))
}
}
// Step 2
val getPanCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun panCheck(panCheck: PanCheckRequest, token: String, activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getPanCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.panCheck(panCheck, token)
getPanCheckMutableData.postValue(handleResponse(response))
}
}
val getTitleMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun titleApi(getCodeRequest: GetCodeRequest, token: String, activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getTitleMutableData.postValue(Resource.Loading())
val response = mainRepository.titleCheck(getCodeRequest, token)
getTitleMutableData.postValue(handleResponse(response))
}
}
val getGenderMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun genderApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getGenderMutableData.postValue(Resource.Loading())
val response = mainRepository.genderCheck(getCodeRequest, token)
getGenderMutableData.postValue(handleResponse(response))
}
}
val getAnnualIncomeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun annualIncomeApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getAnnualIncomeMutableData.postValue(Resource.Loading())
val response = mainRepository.annualIncomeCheck(getCodeRequest, token)
getAnnualIncomeMutableData.postValue(handleResponse(response))
}
}
val getRelationShipMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun relationShipApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getRelationShipMutableData.postValue(Resource.Loading())
val response = mainRepository.relationShipCheck(getCodeRequest, token)
getRelationShipMutableData.postValue(handleResponse(response))
}
}
val getMaritalStatusMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun maritalStatusApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMaritalStatusMutableData.postValue(Resource.Loading())
val response = mainRepository.maritalStatusCheck(getCodeRequest, token)
getMaritalStatusMutableData.postValue(handleResponse(response))
}
}
val getOccupationMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun occupationApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getOccupationMutableData.postValue(Resource.Loading())
val response = mainRepository.occupationCheck(getCodeRequest, token)
getOccupationMutableData.postValue(handleResponse(response))
}
}
val getStateMasterMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun stateApi(token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getStateMasterMutableData.postValue(Resource.Loading())
val response = mainRepository.stateCheck(token)
getStateMasterMutableData.postValue(handleResponse(response))
}
}
val getCityListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun cityListApi(cityRequest: CityRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getCityListMutableData.postValue(Resource.Loading())
val response = mainRepository.cityCheck(cityRequest, token)
getCityListMutableData.postValue(handleResponse(response))
}
}
val getFDBankListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun bankListApi( token: String,language: String, activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getFDBankListMutableData.postValue(Resource.Loading())
val response = mainRepository.bankListCheck(token, language)
getFDBankListMutableData.postValue(handleResponse(response))
}
}
val getIfscCodeCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun ifscCodeApi(ifsc : String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getIfscCodeCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.ifscCodeCheck(ifsc)
getIfscCodeCheckMutableData.postValue(handleResponse(response))
}
}
val getIfscCodeDetailsCheckMutableData: MutableLiveData<Resource<String>> = MutableLiveData()
fun ifscCodeDetailsApi(ifsc : String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getIfscCodeDetailsCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.ifscCodeBankDetailsCheck(ifsc, Constants.token)
getIfscCodeDetailsCheckMutableData.postValue(Common.handleResponse1(response))
}
}
val getPaymentModeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun paymentModeApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getPaymentModeMutableData.postValue(Resource.Loading())
val response = mainRepository.payModeCheck(getCodeRequest, token)
getPaymentModeMutableData.postValue(handleResponse(response))
}
}
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun createFDApi(getRatesRequest: CreateFDRequest, token: String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getFDResponseMutableData.postValue(Resource.Loading())
val response = mainRepository.createFDKYCResponse(getRatesRequest, token)
getFDResponseMutableData.postValue(handleResponse(response))
}
}
val bankValidationApiMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun bankValidationApi(bankValidationApiRequest : BankValidationApiRequest,token:String,activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
bankValidationApiMutableData.postValue(Resource.Loading())
val response = mainRepository.bankValidationApiRequest(bankValidationApiRequest,token)
bankValidationApiMutableData.postValue(handleResponse(response))
}
}
// Step 3
val getDocTypeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun docTypeApi(getCodeRequest: GetCodeRequest, token: String, activity : Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getDocTypeMutableData.postValue(Resource.Loading())
val response = mainRepository.titleCheck(getCodeRequest, token)
getDocTypeMutableData.postValue(handleResponse(response))
}
}
val getDocumentUploadMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun documentsUpload(documentUpload: DocumentUpload, token: String, activity: Activity) = viewModelScope.launch(
handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getDocumentUploadMutableData.postValue(Resource.Loading())
val response = mainRepository.documentsUploadResponse(documentUpload, token)
getDocumentUploadMutableData.postValue(handleResponse(response))
}
}
// Step 4
val getFDDetailsMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getFDDetails(getRatesRequest: GetFDDetailsRequest, token: String,
activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getFDDetailsMutableData.postValue(Resource.Loading())
val response = mainRepository.getFDDetailsResponse(getRatesRequest, token)
getFDDetailsMutableData.postValue(handleResponse(response))
}
}
val getFDOtherMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun saveFDOtherData(getRatesRequest: SaveFDOtherDataRequest, token: String,
activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getFDOtherMutableData.postValue(Resource.Loading())
val response = mainRepository.saveFDOtherDataResponse(getRatesRequest, token)
getFDOtherMutableData.postValue(handleResponse(response))
}
}
fun updateFDPaymentStatus(getRatesRequest: GetRatesRequest, token: String,
activity: Activity
) =
viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.updateFDPaymentStatusResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
fun finaliseFD(getRatesRequest: GetRatesRequest, token: String,
activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.finaliseFDResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
fun finaliseKYC(getRatesRequest: GetRatesRequest, token: String,
activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.finaliseKYCResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
fun paymentReQuery(getRatesRequest: PaymentReQueryRequest, token: String,
activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.paymentReQueryResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
} }

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

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.viewModel
import androidx.lifecycle.ViewModel
import com.nivesh.production.bajajfd.repositories.MainRepository
class StepFiveBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
}

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

@ -1,85 +0,0 @@
package com.nivesh.production.bajajfd.viewModel
import android.app.Activity
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse
import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch
class StepFourBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
val getPaymentModeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun paymentModeApi(getCodeRequest: GetCodeRequest, token: String,
activity: Activity
) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getPaymentModeMutableData.postValue(Resource.Loading())
val response = mainRepository.payModeCheck(getCodeRequest, token)
getPaymentModeMutableData.postValue(handleResponse(response))
}
}
val getFDDetailsMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getFDDetails(getRatesRequest: GetFDDetailsRequest, token: String,
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getFDDetailsMutableData.postValue(Resource.Loading())
val response = mainRepository.getFDDetailsResponse(getRatesRequest, token)
getFDDetailsMutableData.postValue(handleResponse(response))
}
}
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun updateFDPaymentStatus(getRatesRequest: GetRatesRequest, token: String,
activity: Activity) =
viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.updateFDPaymentStatusResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
fun finaliseFD(getRatesRequest: GetRatesRequest, token: String,
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.finaliseFDResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
fun finaliseKYC(getRatesRequest: GetRatesRequest, token: String,
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.finaliseKYCResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
fun paymentReQuery(getRatesRequest: PaymentReQueryRequest, token: String,
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.paymentReQueryResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
val getFDOtherMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun saveFDOtherData(getRatesRequest: SaveFDOtherDataRequest, token: String,
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getFDOtherMutableData.postValue(Resource.Loading())
val response = mainRepository.saveFDOtherDataResponse(getRatesRequest, token)
getFDOtherMutableData.postValue(handleResponse(response))
}
}
}

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

@ -1,79 +0,0 @@
package com.nivesh.production.bajajfd.viewModel
import android.app.Activity
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.GetCodeRequest
import com.nivesh.production.bajajfd.model.GetMaturityAmountRequest
import com.nivesh.production.bajajfd.model.GetRatesRequest
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch
class StepOneBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
val getCodeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getCode(requestBody: GetCodeRequest, token: String, activity: Activity) =
viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getCodeMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody, token)
getCodeMutableData.postValue(handleResponse(response))
}
}
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getRates(getRatesRequest: GetRatesRequest, token: String, activity: Activity) =
viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.getRatesResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleResponse(response))
}
}
val getMaturityAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getMaturityAmount(requestBody: GetMaturityAmountRequest, activity: Activity) =
viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMaturityAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.createCalculateFDMaturityAmount(requestBody, token)
getMaturityAmountMutableData.postValue(handleResponse(response))
}
}
val getMinAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getMinAmount(requestBody: GetCodeRequest, token: String, activity: Activity) =
viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMinAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody, token)
getMinAmountMutableData.postValue(handleResponse(response))
}
}
val getMaxAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getMaxAmount(requestBody: GetCodeRequest, token: String, activity: Activity) =
viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMaxAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody, token)
getMaxAmountMutableData.postValue(handleResponse(response))
}
}
}

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

@ -1,53 +0,0 @@
package com.nivesh.production.bajajfd.viewModel
import android.app.Activity
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
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse
import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch
class StepThreeBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
val getTitleMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun titleApi(getCodeRequest: GetCodeRequest, token: String, activity: Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getTitleMutableData.postValue(Resource.Loading())
val response = mainRepository.titleCheck(getCodeRequest, token)
getTitleMutableData.postValue(handleResponse(response))
}
}
val getDocumentUploadMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun documentsUpload(documentUpload: DocumentUpload, token: String, activity: Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getDocumentUploadMutableData.postValue(Resource.Loading())
val response = mainRepository.documentsUploadResponse(documentUpload, token)
getDocumentUploadMutableData.postValue(handleResponse(response))
}
}
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun createFDApi(getRatesRequest: CreateFDRequest, token: String, activity: Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getFDResponseMutableData.postValue(Resource.Loading())
val response = mainRepository.createFDKYCResponse(getRatesRequest, token)
getFDResponseMutableData.postValue(handleResponse(response))
}
}
}

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

@ -1,191 +0,0 @@
package com.nivesh.production.bajajfd.viewModel
import android.app.Activity
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse1
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch
import org.intellij.lang.annotations.Language
class StepTwoBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
val getPanCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun panCheck(panCheck: PanCheckRequest, token: String, activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getPanCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.panCheck(panCheck, token)
getPanCheckMutableData.postValue(handleResponse(response))
}
}
val getTitleMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun titleApi(getCodeRequest: GetCodeRequest, token: String, activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getTitleMutableData.postValue(Resource.Loading())
val response = mainRepository.titleCheck(getCodeRequest, token)
getTitleMutableData.postValue(handleResponse(response))
}
}
val getGenderMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun genderApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getGenderMutableData.postValue(Resource.Loading())
val response = mainRepository.genderCheck(getCodeRequest, token)
getGenderMutableData.postValue(handleResponse(response))
}
}
val getAnnualIncomeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun annualIncomeApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getAnnualIncomeMutableData.postValue(Resource.Loading())
val response = mainRepository.annualIncomeCheck(getCodeRequest, token)
getAnnualIncomeMutableData.postValue(handleResponse(response))
}
}
val getRelationShipMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun relationShipApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getRelationShipMutableData.postValue(Resource.Loading())
val response = mainRepository.relationShipCheck(getCodeRequest, token)
getRelationShipMutableData.postValue(handleResponse(response))
}
}
val getMaritalStatusMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun maritalStatusApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getMaritalStatusMutableData.postValue(Resource.Loading())
val response = mainRepository.maritalStatusCheck(getCodeRequest, token)
getMaritalStatusMutableData.postValue(handleResponse(response))
}
}
val getOccupationMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun occupationApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getOccupationMutableData.postValue(Resource.Loading())
val response = mainRepository.occupationCheck(getCodeRequest, token)
getOccupationMutableData.postValue(handleResponse(response))
}
}
val getStateMasterMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun stateApi(token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getStateMasterMutableData.postValue(Resource.Loading())
val response = mainRepository.stateCheck(token)
getStateMasterMutableData.postValue(handleResponse(response))
}
}
val getCityListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun cityListApi(cityRequest: CityRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getCityListMutableData.postValue(Resource.Loading())
val response = mainRepository.cityCheck(cityRequest, token)
getCityListMutableData.postValue(handleResponse(response))
}
}
val getFDBankListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun bankListApi( token: String,language: String, activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getFDBankListMutableData.postValue(Resource.Loading())
val response = mainRepository.bankListCheck(token, language)
getFDBankListMutableData.postValue(handleResponse(response))
}
}
val getIfscCodeCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun ifscCodeApi(ifsc : String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getIfscCodeCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.ifscCodeCheck(ifsc)
getIfscCodeCheckMutableData.postValue(handleResponse(response))
}
}
val getIfscCodeDetailsCheckMutableData: MutableLiveData<Resource<String>> = MutableLiveData()
fun ifscCodeDetailsApi(ifsc : String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getIfscCodeDetailsCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.ifscCodeBankDetailsCheck(ifsc, token)
getIfscCodeDetailsCheckMutableData.postValue(handleResponse1(response))
}
}
val getPaymentModeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun paymentModeApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getPaymentModeMutableData.postValue(Resource.Loading())
val response = mainRepository.payModeCheck(getCodeRequest, token)
getPaymentModeMutableData.postValue(handleResponse(response))
}
}
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun createFDApi(getRatesRequest: CreateFDRequest, token: String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
getFDResponseMutableData.postValue(Resource.Loading())
val response = mainRepository.createFDKYCResponse(getRatesRequest, token)
getFDResponseMutableData.postValue(handleResponse(response))
}
}
val bankValidationApiMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun bankValidationApi(bankValidationApiRequest : BankValidationApiRequest,token:String,activity : Activity) = viewModelScope.launch(
Common.handleError(activity)
) {
if (Common.isNetworkAvailable(activity)) {
bankValidationApiMutableData.postValue(Resource.Loading())
val response = mainRepository.bankValidationApiRequest(bankValidationApiRequest,token)
bankValidationApiMutableData.postValue(handleResponse(response))
}
}
}

Loading…
Cancel
Save

Powered by TurnKey Linux.