|
@ -1,6 +1,7 @@ |
|
|
package com.nivesh.production.bajajfd.ui.fragment |
|
|
package com.nivesh.production.bajajfd.ui.fragment |
|
|
|
|
|
|
|
|
import GetRatesResponse |
|
|
import GetRatesResponse |
|
|
|
|
|
import ROIDatalist |
|
|
import android.os.Bundle |
|
|
import android.os.Bundle |
|
|
import android.text.Editable |
|
|
import android.text.Editable |
|
|
import android.text.TextWatcher |
|
|
import android.text.TextWatcher |
|
@ -15,6 +16,9 @@ import com.google.gson.Gson |
|
|
import com.nivesh.production.bajajfd.R |
|
|
import com.nivesh.production.bajajfd.R |
|
|
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepOneBinding |
|
|
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepOneBinding |
|
|
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface |
|
|
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface |
|
|
|
|
|
import com.nivesh.production.bajajfd.model.GetCodeRequest |
|
|
|
|
|
import com.nivesh.production.bajajfd.model.GetCodeResponse |
|
|
|
|
|
import com.nivesh.production.bajajfd.model.GetCodes |
|
|
import com.nivesh.production.bajajfd.model.GetRatesRequest |
|
|
import com.nivesh.production.bajajfd.model.GetRatesRequest |
|
|
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity |
|
|
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity |
|
|
import com.nivesh.production.bajajfd.util.Common |
|
|
import com.nivesh.production.bajajfd.util.Common |
|
@ -28,6 +32,7 @@ class StepOneBajajFDFragment : Fragment() { |
|
|
private lateinit var bajajFDInterface: BajajFDInterface |
|
|
private lateinit var bajajFDInterface: BajajFDInterface |
|
|
private lateinit var stepOneBajajFDViewModel: StepOneBajajFDViewModel |
|
|
private lateinit var stepOneBajajFDViewModel: StepOneBajajFDViewModel |
|
|
private lateinit var rgMaturity: RadioButton |
|
|
private lateinit var rgMaturity: RadioButton |
|
|
|
|
|
public lateinit var listOfTenure : List<ROIDatalist> |
|
|
|
|
|
|
|
|
companion object { |
|
|
companion object { |
|
|
fun getInstance(fdInterface: BajajFDInterface): StepOneBajajFDFragment { |
|
|
fun getInstance(fdInterface: BajajFDInterface): StepOneBajajFDFragment { |
|
@ -49,6 +54,8 @@ class StepOneBajajFDFragment : Fragment() { |
|
|
|
|
|
|
|
|
stepOneBajajFDViewModel = (activity as BajajFdMainActivity).stepOneBajajFDViewModel |
|
|
stepOneBajajFDViewModel = (activity as BajajFdMainActivity).stepOneBajajFDViewModel |
|
|
|
|
|
|
|
|
|
|
|
listOfTenure = ArrayList() |
|
|
|
|
|
|
|
|
// Amount |
|
|
// Amount |
|
|
binding.edtAmount.addTextChangedListener(object : TextWatcher { |
|
|
binding.edtAmount.addTextChangedListener(object : TextWatcher { |
|
|
override fun afterTextChanged(s: Editable?) { |
|
|
override fun afterTextChanged(s: Editable?) { |
|
@ -63,23 +70,21 @@ class StepOneBajajFDFragment : Fragment() { |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
// Frequency |
|
|
// Frequency |
|
|
val adapter = ArrayAdapter( |
|
|
|
|
|
activity as BajajFdMainActivity, |
|
|
|
|
|
R.layout.spinner_dropdown, |
|
|
|
|
|
resources.getStringArray( |
|
|
|
|
|
R.array.interestPayoutList |
|
|
|
|
|
) |
|
|
|
|
|
) |
|
|
|
|
|
binding.spInterestPayout.setAdapter(adapter) |
|
|
|
|
|
binding.spInterestPayout.setOnItemClickListener { parent, view, position, id -> |
|
|
|
|
|
binding.spInterestPayout.error = null |
|
|
|
|
|
binding.tvFrequency.text = binding.spInterestPayout.text |
|
|
|
|
|
|
|
|
if ((activity as BajajFdMainActivity).listOfFrequency.isNotEmpty()) { |
|
|
|
|
|
val adapter = ArrayAdapter(activity as BajajFdMainActivity, R.layout.spinner_dropdown, (activity as BajajFdMainActivity).listOfFrequency) |
|
|
|
|
|
binding.spInterestPayout.setAdapter(adapter) |
|
|
|
|
|
binding.spInterestPayout.setOnItemClickListener { parent, view, position, id -> |
|
|
|
|
|
binding.tlInterestPayout.error = null |
|
|
|
|
|
binding.tvFrequency.text = (activity as BajajFdMainActivity).listOfFrequency[position].Label |
|
|
|
|
|
getRatesApi() |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// Tenure |
|
|
// Tenure |
|
|
binding.spTenure.setAdapter(adapter) |
|
|
|
|
|
binding.spTenure.setOnItemClickListener { parent, view, position, id -> |
|
|
|
|
|
// getRatesApi() |
|
|
|
|
|
|
|
|
if (listOfTenure.isNotEmpty()) { |
|
|
|
|
|
binding.spTenure.setOnItemClickListener { parent, view, position, id -> |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -127,12 +132,52 @@ class StepOneBajajFDFragment : Fragment() { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private fun getCodeApi() { |
|
|
|
|
|
val getCodeRequest = GetCodeRequest() |
|
|
|
|
|
getCodeRequest.ProductName = "BajajFD" |
|
|
|
|
|
getCodeRequest.Category = "InterestPayoutFreq" |
|
|
|
|
|
getCodeRequest.Language = "EN" |
|
|
|
|
|
getCodeRequest.InputValue = "" |
|
|
|
|
|
stepOneBajajFDViewModel.getCode(getCodeRequest) |
|
|
|
|
|
stepOneBajajFDViewModel.getRatesMutableData.observe(this) { response -> |
|
|
|
|
|
when (response) { |
|
|
|
|
|
is Resource.Success -> { |
|
|
|
|
|
val getCodeResponse: GetCodeResponse = |
|
|
|
|
|
Gson().fromJson(response.toString(), GetCodeResponse::class.java) |
|
|
|
|
|
getCodeResponse.Response.StatusCode.let { code -> |
|
|
|
|
|
when (code) { |
|
|
|
|
|
200 -> { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
// 650 -> refreshToken() |
|
|
|
|
|
else -> {} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
is Resource.Error -> { |
|
|
|
|
|
response.message?.let { message -> |
|
|
|
|
|
Log.e(" ", "An error occurred:$message") |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
is Resource.Loading -> { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private fun getRatesApi() { |
|
|
private fun getRatesApi() { |
|
|
val getRatesRequest = GetRatesRequest() |
|
|
val getRatesRequest = GetRatesRequest() |
|
|
getRatesRequest.fdProvider = "Bajaj" |
|
|
getRatesRequest.fdProvider = "Bajaj" |
|
|
getRatesRequest.frequency = "" |
|
|
|
|
|
getRatesRequest.type = "" |
|
|
|
|
|
|
|
|
getRatesRequest.frequency = binding.spInterestPayout.text.toString() |
|
|
|
|
|
if (binding.swSeniorCitizen.isChecked){ |
|
|
|
|
|
getRatesRequest.type = "Non Senior Citizen" |
|
|
|
|
|
}else{ |
|
|
|
|
|
getRatesRequest.type = "Senior Citizen" |
|
|
|
|
|
} |
|
|
stepOneBajajFDViewModel.getRates(getRatesRequest) |
|
|
stepOneBajajFDViewModel.getRates(getRatesRequest) |
|
|
stepOneBajajFDViewModel.getRatesMutableData.observe(viewLifecycleOwner) { response -> |
|
|
stepOneBajajFDViewModel.getRatesMutableData.observe(viewLifecycleOwner) { response -> |
|
|
when (response) { |
|
|
when (response) { |
|
@ -142,7 +187,7 @@ class StepOneBajajFDFragment : Fragment() { |
|
|
getRatesResponse.Response.StatusCode.let { code -> |
|
|
getRatesResponse.Response.StatusCode.let { code -> |
|
|
when (code) { |
|
|
when (code) { |
|
|
200 -> getRatesData(getRatesResponse) |
|
|
200 -> getRatesData(getRatesResponse) |
|
|
650 -> refreshToken() |
|
|
|
|
|
|
|
|
// 650 -> refreshToken() |
|
|
else -> {} |
|
|
else -> {} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
@ -168,7 +213,9 @@ class StepOneBajajFDFragment : Fragment() { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private fun getRatesData(getRatesResponse: GetRatesResponse) { |
|
|
private fun getRatesData(getRatesResponse: GetRatesResponse) { |
|
|
|
|
|
|
|
|
|
|
|
listOfTenure = getRatesResponse.Response.ROIDatalist |
|
|
|
|
|
val adapter = ArrayAdapter(activity as BajajFdMainActivity, R.layout.spinner_dropdown, listOfTenure) |
|
|
|
|
|
binding.spTenure.setAdapter(adapter) |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|