Browse Source

Merge branch 'HemantBranch' of https://git.nivesh.com:443/hemant.khadase/BajajFDLib into PankajBranch

# Conflicts:
#	app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
#	app/src/main/res/values-hi-rIN/strings.xml
pankaj 2 years ago
parent
commit
0d00dc80a8
20 changed files with 220 additions and 206 deletions
  1. +2
    -2
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/ApiInterface.kt
  2. +1
    -3
      app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDApplicationRequest.kt
  3. +3
    -1
      app/src/main/java/com/nivesh/production/bajajfd/model/FDInvestmentDetails.kt
  4. +6
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryRequest.kt
  5. +5
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryResponse.kt
  6. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXXX.kt
  7. +4
    -4
      app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt
  8. +86
    -127
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  9. +12
    -13
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt
  10. +35
    -24
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt
  11. +1
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepOneBajajFDFragment.kt
  12. +2
    -2
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt
  13. +32
    -10
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt
  14. +11
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt
  15. +2
    -5
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFourBajajFDViewModel.kt
  16. +3
    -2
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepTwoBajajFDViewModel.kt
  17. +1
    -1
      app/src/main/res/layout/fragment_bajajfd_step_five.xml
  18. +0
    -2
      app/src/main/res/layout/fragment_bajajfd_step_four.xml
  19. +5
    -9
      app/src/main/res/layout/fragment_bajajfd_step_two.xml
  20. +1
    -1
      app/src/main/res/values-hi-rIN/strings.xml

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

@ -64,7 +64,7 @@ interface ApiInterface {
@POST("PaymentRequery")
suspend fun paymentReQuery(
@Body requestBody: RequestBody,
@Body requestBody: PaymentReQueryRequest,
@Header("token") token: String
): Response<JsonObject>
@ -146,7 +146,7 @@ interface ApiInterface {
): Response<JsonObject>
@GET("GetFDBankList?FDProvider=Bajaj")
suspend fun bankListApi(@Header("token") token: String): Response<JsonObject>
suspend fun bankListApi(@Header("token") token: String, @Query("Language") language : String): Response<JsonObject>
@GET("GetIFSC_Autofill?")
suspend fun getIFSCApi(@Query("prefix") ifsc : String): Response<JsonObject>


+ 1
- 3
app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDApplicationRequest.kt View File

@ -6,7 +6,5 @@ data class CreateFDApplicationRequest(
var FDInvestmentDetails: FDInvestmentDetails? = null,
var FdBankDetails: FdBankDetails? = null,
var NomineeDetails: NomineeDetails? = null,
var NomineeGuardianDetails: NomineeGuardianDetails ? = null,
var UniqueId: String? = ""
var NomineeGuardianDetails: NomineeGuardianDetails ? = null
)

+ 3
- 1
app/src/main/java/com/nivesh/production/bajajfd/model/FDInvestmentDetails.kt View File

@ -12,5 +12,7 @@ data class FDInvestmentDetails(
var NiveshClientCode: String? = null,
var Provider: String? = null,
var Source: String? = null,
var Tenure: Int? = 0
var Tenure: Int? = 0,
var UniqueId: String? = ""
)

+ 6
- 0
app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryRequest.kt View File

@ -0,0 +1,6 @@
package com.nivesh.production.bajajfd.model
data class PaymentReQueryRequest(
var NiveshClientCode: String? = "",
var UniqueId: String? = ""
)

+ 5
- 0
app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryResponse.kt View File

@ -0,0 +1,5 @@
package com.nivesh.production.bajajfd.model
data class PaymentReQueryResponse(
val Response: ResponseXXXXXXXXXXXXXXX
)

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

@ -0,0 +1,8 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXXXXXXX(
val Errors: List<Errors>,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 4
- 4
app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt View File

@ -44,8 +44,8 @@ class MainRepository constructor(private val apiInterface: ApiInterface) {
suspend fun finaliseKYCResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun paymentReQueryResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun paymentReQueryResponse(getRatesRequest: PaymentReQueryRequest, token: String) =
apiInterface.paymentReQuery(getRatesRequest, token)
suspend fun panCheck(panCheck: PanCheckRequest, token: String) =
apiInterface.panCheckApi(panCheck, token)
@ -74,8 +74,8 @@ class MainRepository constructor(private val apiInterface: ApiInterface) {
suspend fun cityCheck(cityRequest: CityRequest, token: String) =
apiInterface.cityApi(cityRequest, token)
suspend fun bankListCheck(token: String) =
apiInterface.bankListApi(token)
suspend fun bankListCheck(token: String, language: String) =
apiInterface.bankListApi(token, language)
suspend fun ifscCodeCheck(str: String) =
apiInterface.getIFSCApi(str)


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

@ -31,9 +31,6 @@ import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.*
import java.io.BufferedReader
import java.io.InputStream
import java.io.InputStreamReader
class BajajFdMainActivity : BaseActivity() {
@ -55,12 +52,12 @@ class BajajFdMainActivity : BaseActivity() {
var nomineeDetails: NomineeDetails = NomineeDetails()
var nomineeGuardianDetails: NomineeGuardianDetails = NomineeGuardianDetails()
var getClientDetailsResponse: getClientDetailsResponse = getClientDetailsResponse()
var UniqueId: String = ""
private var stepCount: Int = 0
private lateinit var sectionsPagerAdapter: SectionsPagerAdapter
private lateinit var fragments: Array<Fragment>
var valur:String=""
var dialogWebView: Dialog? = null
var LoginRole: Int = 0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -78,6 +75,7 @@ class BajajFdMainActivity : BaseActivity() {
FDModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[BajajFDViewModel::class.java]
LoginRole = 5
if (Common.isNetworkAvailable(this)) {
getStepsCountApi()
}
@ -92,8 +90,7 @@ class BajajFdMainActivity : BaseActivity() {
val fdStepsCount = FDStepsCountRequest()
fdStepsCount.FDProvider = getString(R.string.bajaj)
fdStepsCount.NiveshClientCode = "8872"
//hemant client code =8872 /60476
// client code =8872 /60476
viewModel.getStepsCount(fdStepsCount, token, this)
viewModel.getStepsCountMutableData.observe(this) { response ->
when (response) {
@ -110,7 +107,7 @@ class BajajFdMainActivity : BaseActivity() {
stepCount = stepsCountResponse.Response.StepsCount
getClientDetailsApi(stepsCountResponse.Response.StepsCount)
}
650 -> refreshToken(fdStepsCount)
650 -> refreshToken("")
else -> {
showDialogValidation(
this@BajajFdMainActivity,
@ -136,10 +133,10 @@ class BajajFdMainActivity : BaseActivity() {
}
}
private fun refreshToken(fdStepsCount: FDStepsCountRequest) {
}
private fun refreshToken(fdStepsCount: String) {
}
private fun getClientDetailsApi(stepsCount: Int) {
if (Common.isNetworkAvailable(this@BajajFdMainActivity)) {
@ -147,16 +144,13 @@ class BajajFdMainActivity : BaseActivity() {
getClientDetailsRequest.client_code = "8872"
getClientDetailsRequest.AppOrWeb = getString(R.string.app)
getClientDetailsRequest.sub_broker_code = "1038"
//hemant 8872/1038//
// 8872/1038
val userRequest = UserRequest()
userRequest.UID = 0
userRequest.IPAddress = ""
userRequest.Source = getString(R.string.source)
userRequest.AppOrWeb = getString(R.string.app)
userRequest.LoggedInRoleId = 5
userRequest.LoggedInRoleId = LoginRole
val deviceInfo = DeviceInfo()
deviceInfo.device_id = ""
@ -210,7 +204,6 @@ class BajajFdMainActivity : BaseActivity() {
}
}
private fun setViewPager(stepsCount: Int) {
// steps setting
setBackground(selectedShape(), defaultShape(), defaultShape(), defaultShape())
@ -356,7 +349,6 @@ class BajajFdMainActivity : BaseActivity() {
}
// set background for selected/ default step
private fun setBackground(
drawable: Drawable?,
@ -371,21 +363,20 @@ class BajajFdMainActivity : BaseActivity() {
}
// step 1 response
fun stepOneApi(data: String?) {
fun stepOneApi(data: String?) {
Log.e("stepOneApi", " response ---> $data")
binding.viewPager.currentItem = 1
}
// step 2 response
fun stepTwoApi(data: CreateFDApplicationResponse) {
fun stepTwoApi(data: CreateFDApplicationResponse) {
Log.e("stepTwoApi", " response ---> " + Gson().toJson(data))
binding.viewPager.currentItem = 2
stepThreeBajajFDFragment.displayReceivedData(data)
}
// step 3 response
fun stepThreeApi(data: CreateFDApplicationResponse) {
fun stepThreeApi(data: CreateFDApplicationResponse) {
Log.e("stepThreeApi", " response --->" + Gson().toJson(data))
// call create fd api
binding.viewPager.currentItem = 3
@ -393,10 +384,7 @@ class BajajFdMainActivity : BaseActivity() {
}
// step 4 response
fun stepFourApi(payUrl: String, value: String) {
valur=value
fun stepFourApi(payUrl: String, value: String) {
paymentDialog(payUrl, value)
}
@ -404,121 +392,92 @@ class BajajFdMainActivity : BaseActivity() {
fun paymentDialog(payUrl: String, value: String) {
Log.e("payUrl", "-->$payUrl")
Log.e("value", "-->$value")
val dialogWebView = Dialog(this@BajajFdMainActivity)
dialogWebView.setContentView(R.layout.row_fd_pay)
dialogWebView.setCancelable(true)
val tvCancel = dialogWebView.findViewById<TextView>(R.id.tvCancel)
dialogWebView = Dialog(this@BajajFdMainActivity)
dialogWebView!!.setContentView(R.layout.row_fd_pay)
dialogWebView!!.setCancelable(true)
val tvCancel = dialogWebView!!.findViewById<TextView>(R.id.tvCancel)
tvCancel.setOnClickListener {
dialogWebView.dismiss()
dialogWebView!!.dismiss()
}
val lp = WindowManager.LayoutParams()
lp.copyFrom(dialogWebView.window?.attributes)
lp.copyFrom(dialogWebView!!.window?.attributes)
lp.width = WindowManager.LayoutParams.MATCH_PARENT
lp.height = WindowManager.LayoutParams.MATCH_PARENT
dialogWebView.window?.attributes = lp
val wVPay = dialogWebView.findViewById<WebView>(R.id.wVPay)
// wVPay.webViewClient = MyWebViewClient()
dialogWebView!!.window?.attributes = lp
val wVPay = dialogWebView!!.findViewById<WebView>(R.id.wVPay)
wVPay.settings.javaScriptEnabled = true
wVPay.settings.domStorageEnabled = true
// val postData = "name=${URLEncoder.encode("msg", "UTF-8")}" +
// "&value=${URLEncoder.encode(value, "UTF-8")}"
// wVPay.postUrl(payUrl, postData.toByteArray())
// val webView = WebView(this@BajajFdMainActivity)
// setContentView(webView)
// val postData = "msg=${URLEncoder.encode(value, "UTF-8")}"
//
// Log.e("valueee", "-->$postData")
//
//
// webView.postUrl(payUrl, postData.toByteArray())
//
//
//
val iss: InputStream = assets.open("paymentpageform.html")
val size: Int = iss.available()
val buffer = ByteArray(size)
iss.read(buffer)
var str = String(buffer)
str = str.replace("cus", value)
// val br = BufferedReader(
// InputStreamReader(
// iss.getInputStream()
// )
// )
//
// while ((str = br.readLine()) != null) {
// response += line;
// }
iss.close()
wVPay.loadUrl("file:///android_asset/paymentpageform.html")
wVPay.setWebViewClient(object : WebViewClient() {
wVPay.loadData(
"<form name=\"frm\" action=\"$payUrl\" method=\"post\"> \n" + " <input type=\"hidden\" name=\"msg\" value=\"$value\"> \n" + " </form> \n" +
"<script type=\"text/javascript\"> \n" + "document.forms[\"frm\"].submit(); \n" + "</script>",
"text/html",
"UTF-8"
)
wVPay.webViewClient = object : WebViewClient() {
override fun onPageStarted(view: WebView, url: String, favicon: Bitmap?) {
super.onPageStarted(view, url, favicon)
Log.e("onPageStarted", "-->$url")
wVPay.loadUrl("file:///android_asset/paymentpageform.html")
val link1 = "pp"
val link2 = valur
view.loadUrl("javascript:(function(){document.body.innerHTML = document.body.innerHTML.replace('$link1', '$link2')})()")
if (url.isNotEmpty() && url.contains("CustomerPaymentResponse")) {
if (url.isNotEmpty() && url.contains("https://uat.nivesh.com/bajajFD/OrderStatus")) {
if (dialogWebView != null && dialogWebView!!.isShowing) {
dialogWebView!!.dismiss()
paymentReQueryApi()
}
}
}
})
// wVPay.loadUrl("file:///android_asset/paymentpageform.html")
// wVPay.loadDataWithBaseURL("file:///android_asset/", str,"text/html", "UTF-8",null);
// wVPay.loadData(str, "text/html; charset=utf-8", "UTF-8");
// dialogWebView.show()
}
// class MyWebViewClient : WebViewClient() {
// override fun onPageStarted(view: WebView, url: String, favicon: Bitmap?) {
// super.onPageStarted(view, url, favicon)
// Log.e("onPageStarted", "-->$url")
//
// val link1 = "pp"
// val link2 = valur
// view.loadUrl("javascript:(function(){document.body.innerHTML = document.body.innerHTML.replace('$link1', '$link2')})()")
//
// if (url.isNotEmpty() && url.contains("CustomerPaymentResponse")) {
//
// }
// }
//
// override fun onPageFinished(view: WebView, url: String) {
// super.onPageFinished(view, url)
// }
}
dialogWebView!!.show()
}
fun paymentReQueryApi() {
if (Common.isNetworkAvailable(this)) {
val paymentReQueryRequest = PaymentReQueryRequest()
paymentReQueryRequest.UniqueId = UniqueId
paymentReQueryRequest.NiveshClientCode =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
viewModel.getPaymentReQuery(paymentReQueryRequest, token, this)
viewModel.getPaymentReQueryMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->$response")
val paymentReQueryResponse: PaymentReQueryResponse =
Gson().fromJson(
response.data?.toString(),
PaymentReQueryResponse::class.java
)
paymentReQueryResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
if (stepCount == 4) {
binding.viewPager.currentItem = 4
} else {
binding.viewPager.currentItem = 3
}
stepFiveBajajFDFragment.getData(paymentReQueryResponse)
}
650 -> refreshToken("")
else -> {
showDialogValidation(
this@BajajFdMainActivity,
paymentReQueryResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
is Resource.DataError -> {
}
}
}
}
}
}

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

@ -8,6 +8,7 @@ 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.model.PaymentReQueryResponse
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.providerfactory.StepFiveModelProviderFactory
import com.nivesh.production.bajajfd.viewModel.StepFiveBajajFDViewModel
@ -22,28 +23,26 @@ class StepFiveBajajFDFragment : Fragment() {
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View {
_binding = FragmentBajajfdStepFiveBinding.inflate(inflater, container, false)
val root = binding.root
// val textView: TextView = binding.sectionLabel
// stepFourViewModel.text.observe(viewLifecycleOwner) {
// textView.text = it
// }
//
// binding.btnClick.setOnClickListener {
// bajajFDInterface.stepFourApi("stepFourResponse")
// }
return root
return binding.root
}
fun getData(paymentReQueryResponse: PaymentReQueryResponse) {
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepFiveBajajFDViewModel = ViewModelProvider(
this,
StepFiveModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[StepFiveBajajFDViewModel::class.java]
binding.btnViewOrder.setOnClickListener {
}
}
override fun onDestroyView() {


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

@ -5,6 +5,7 @@ import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.res.ResourcesCompat
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.gson.Gson
@ -54,32 +55,43 @@ class StepFourBajajFDFragment : BaseFragment() {
}
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.setBackgroundColor(ResourcesCompat.getColor(resources, R.color.red, null))
}
binding.btnNext.setOnClickListener {
selectedList = ""
for (getCodes in listOfCustomer) {
if (getCodes.isSelected) {
selectedList = if (selectedList.isEmpty()) {
getCodes.Value
} else {
selectedList.plus(",").plus(getCodes.Value)
if ((activity as BajajFdMainActivity).LoginRole == 5) {
selectedList = ""
for (getCodes in listOfCustomer) {
if (getCodes.isSelected) {
selectedList = if (selectedList.isEmpty()) {
getCodes.Value
} else {
selectedList.plus(",").plus(getCodes.Value)
}
}
}
}
Log.e("selectedList", "-->$selectedList")
if (binding.checkBox.isChecked) {
val saveFDOtherDataRequest = SaveFDOtherDataRequest()
saveFDOtherDataRequest.FDProvider = getString(R.string.bajaj)
saveFDOtherDataRequest.UniqueId = uniqueId
saveFDOtherDataRequest.Values = selectedList
saveFDOtherDataRequest.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
// bajajFDInterface.stepFourApi(saveFDOtherDataRequest, payUrl, Value)
saveFDOtherData(saveFDOtherDataRequest, payUrl, value)
} else {
showDialogValidation(
activity as BajajFdMainActivity,
resources.getString(R.string.validTermsConditions)
)
if (binding.checkBox.isChecked && selectedList.isNotEmpty()) {
val saveFDOtherDataRequest = SaveFDOtherDataRequest()
saveFDOtherDataRequest.FDProvider = getString(R.string.bajaj)
saveFDOtherDataRequest.UniqueId = uniqueId
saveFDOtherDataRequest.Values = selectedList
saveFDOtherDataRequest.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
// bajajFDInterface.stepFourApi(saveFDOtherDataRequest, payUrl, Value)
saveFDOtherData(saveFDOtherDataRequest, payUrl, value)
} else {
showDialogValidation(
activity as BajajFdMainActivity,
resources.getString(R.string.validTermsConditions)
)
}
}else{
// go to view order
}
}
@ -103,7 +115,6 @@ class StepFourBajajFDFragment : BaseFragment() {
when (code) {
200 -> {
(activity as BajajFdMainActivity).stepFourApi(payUrl, value)
// paymentDialog(payUrl, value)
}
// 650 -> refreshToken()
else -> {


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

@ -154,6 +154,7 @@ class StepOneBajajFDFragment : BaseFragment() {
}
(activity as BajajFdMainActivity).fdInvestmentDetails.CustomerType = ""
(activity as BajajFdMainActivity).fdInvestmentDetails.CKYCNumber = ""
(activity as BajajFdMainActivity).fdInvestmentDetails.UniqueId = (activity as BajajFdMainActivity).UniqueId
(activity as BajajFdMainActivity).createFDApplicantRequest.FDInvestmentDetails =
(activity as BajajFdMainActivity).fdInvestmentDetails


+ 2
- 2
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.annotation.SuppressLint
import android.app.ActionBar.LayoutParams
import android.app.Dialog
import android.content.DialogInterface
import android.content.Intent
@ -215,7 +214,8 @@ class StepThreeBajajFDFragment : BaseFragment() {
mActivity!!
)
builder.setTitle("Add Photo!")
builder.setItems(check
builder.setItems(
check
) { dialog: DialogInterface, item: Int ->
if (check[item] == "Take Photo") {
val permission = ContextCompat.checkSelfPermission(


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

@ -33,6 +33,7 @@ import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.ui.providerfactory.StepTwoModelProviderFactory
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorAutoCompleteMethod
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod
import com.nivesh.production.bajajfd.util.Common.Companion.commonSpinnerErrorMethod
@ -132,7 +133,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
}
binding.edtDOB.setOnClickListener {
removeError(binding.tlDOB)
datePicker(binding.edtDOB)
datePicker(binding.edtDOB, 1)
}
@ -390,7 +391,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
}
binding.edtNomineeDOB.setOnClickListener {
removeError(binding.tlNomineeDOB)
datePicker(binding.edtNomineeDOB)
datePicker(binding.edtNomineeDOB, 2)
}
binding.spNomineeRelation.setText(
@ -401,9 +402,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
binding.spNomineeRelation.setOnItemClickListener { _, _, _, _ ->
removeError(binding.tlNomineeRelation)
}
binding.cbNomineeSameAddress.setOnCheckedChangeListener { _, _ ->
}
// Guardian Details
binding.edtGuardianName.addTextChangedListener(object : TextWatcher {
@ -663,7 +661,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
(activity as BajajFdMainActivity).nomineeDetails.NomineePincode = 0
// Applicant Nominee Guardian Details
(activity as BajajFdMainActivity).nomineeGuardianDetails.GuardianSalutation = ""
(activity as BajajFdMainActivity).nomineeGuardianDetails.GuardianSalutation = binding.spGuardianRelation.text.toString()
(activity as BajajFdMainActivity).nomineeGuardianDetails.GuardianName =
binding.edtGuardianName.text.toString()
if (binding.edtGuardianAge.text.toString().isEmpty()) {
@ -712,7 +710,6 @@ class StepTwoBajajFDFragment : BaseFragment() {
(activity as BajajFdMainActivity).createFDApplicantRequest.NomineeGuardianDetails =
(activity as BajajFdMainActivity).nomineeGuardianDetails
(activity as BajajFdMainActivity).createFDApplicantRequest.UniqueId = ""
(activity as BajajFdMainActivity).createFDRequest.CreateFDApplicationRequest =
(activity as BajajFdMainActivity).createFDApplicantRequest
@ -744,6 +741,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
createFDApplicationResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
(activity as BajajFdMainActivity).UniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId
(activity as BajajFdMainActivity).stepTwoApi(
createFDApplicationResponse
)
@ -929,6 +927,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
clientBankList.AccountNumber.toString()
)
showHideBankDetail()
} else {
showDialogValidation(
activity as BajajFdMainActivity,
@ -1015,7 +1014,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
binding.rvClientBankList.adapter = bankListAdapter
}
private fun datePicker(edtDOB: TextInputEditText) {
private fun datePicker(edtDOB: TextInputEditText, number : Int) {
val year = cal.get(Calendar.YEAR)
val month = cal.get(Calendar.MONTH)
val day = cal.get(Calendar.DAY_OF_MONTH)
@ -1029,6 +1028,15 @@ class StepTwoBajajFDFragment : BaseFragment() {
.plus(dayOfMonth.toString())
)
edtDOB.setSelection(edtDOB.text.toString().length)
if (number == 2){
if (isMinor(years.toString().plus("-").plus(monthOfYear + 1).plus("-")
.plus(dayOfMonth.toString()))
){
guardianCodeVisibility(View.VISIBLE)
}else{
guardianCodeVisibility(View.GONE)
}
}
}, year, month, day
)
datePickerDialog.datePicker.maxDate = cal.timeInMillis
@ -1038,6 +1046,15 @@ class StepTwoBajajFDFragment : BaseFragment() {
datePickerDialog.show()
}
private fun guardianCodeVisibility(visibility: Int) {
binding.tlGuardianName.visibility = visibility
binding.tlGuardianName.visibility = visibility
binding.tlGuardianName.visibility = visibility
binding.tlGuardianName.visibility = visibility
binding.tlGuardianName.visibility = visibility
}
private fun panCheckApi() {
val panCheck = PanCheckRequest()
panCheck.clientCode =
@ -1702,7 +1719,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
}
private fun apiForEligibleBankList() {
stepTwoBajajFDViewModel.bankListApi(token, activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.bankListApi(token,getString(R.string.language), activity as BajajFdMainActivity)
stepTwoBajajFDViewModel.getFDBankListMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
@ -1719,7 +1736,7 @@ class StepTwoBajajFDFragment : BaseFragment() {
dialogForBankList(getFDBankListResponse.Response.BankList)
}
}
// 650 -> refreshToken()
650 -> refreshToken()
else -> {
showDialogValidation(
activity as BajajFdMainActivity,
@ -1745,6 +1762,11 @@ class StepTwoBajajFDFragment : BaseFragment() {
}
}
private fun refreshToken() {
}
private fun dialogForBankList(bankList: List<Bank>) {
val dialog = Dialog(activity as BajajFdMainActivity)
dialog.setContentView(R.layout.layout_bank_list)


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

@ -49,4 +49,15 @@ class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel()
}
}
val getPaymentReQueryMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getPaymentReQuery(requestBody: PaymentReQueryRequest, token : String, activity: Activity) = viewModelScope.launch(handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getPaymentReQueryMutableData.postValue(Resource.Loading())
val response = mainRepository.paymentReQueryResponse(requestBody, token)
getPaymentReQueryMutableData.postValue(handleResponse(response))
}
}
}

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

@ -5,10 +5,7 @@ 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.GetFDDetailsRequest
import com.nivesh.production.bajajfd.model.GetRatesRequest
import com.nivesh.production.bajajfd.model.SaveFDOtherDataRequest
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
@ -67,7 +64,7 @@ class StepFourBajajFDViewModel(private val mainRepository: MainRepository) : Vie
}
}
fun paymentReQuery(getRatesRequest: GetRatesRequest, token: String,
fun paymentReQuery(getRatesRequest: PaymentReQueryRequest, token: String,
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) {
if (Common.isNetworkAvailable(activity)) {
getRatesMutableData.postValue(Resource.Loading())


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

@ -13,6 +13,7 @@ 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() {
@ -117,12 +118,12 @@ class StepTwoBajajFDViewModel(private val mainRepository: MainRepository) : View
}
val getFDBankListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun bankListApi( token: String,activity : Activity) = viewModelScope.launch(
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)
val response = mainRepository.bankListCheck(token, language)
getFDBankListMutableData.postValue(handleResponse(response))
}
}


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

@ -156,7 +156,7 @@
<!-- app:layout_constraintStart_toStartOf="parent" />-->
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:id="@+id/btnViewOrder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"


+ 0
- 2
app/src/main/res/layout/fragment_bajajfd_step_four.xml View File

@ -290,8 +290,6 @@
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_5"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/green"
android:text="@string/pay"
android:textColor="@color/white"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"


+ 5
- 9
app/src/main/res/layout/fragment_bajajfd_step_two.xml View File

@ -705,16 +705,9 @@
</com.google.android.material.textfield.TextInputLayout>
<CheckBox
android:id="@+id/cbNomineeSameAddress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin_5"
android:text="@string/nomineeAddressSameAsPrimaryApplicantAddress"
android:textSize="@dimen/text_size_10" />
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlGuardianName"
android:visibility="gone"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -735,6 +728,7 @@
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlGuardianAge"
android:visibility="gone"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -755,6 +749,7 @@
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlGuardianRelation"
android:visibility="gone"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -780,9 +775,9 @@
android:textSize="@dimen/text_size_14" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlGuardianAddress"
android:visibility="gone"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -803,6 +798,7 @@
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tlGuardianPinCode"
android:visibility="gone"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"


+ 1
- 1
app/src/main/res/values-hi-rIN/strings.xml View File

@ -244,7 +244,7 @@
<string name="uploadPhotoDoc">Upload Photo Document</string>
<string name="uploadAadharBackDoc">Upload Aadhar Back Document</string>
<string name="fiveAccountValidation">You can not add more than five accounts</string>
<string name="panLabel">PAN</string>
</resources>

Loading…
Cancel
Save

Powered by TurnKey Linux.