diff --git a/app/src/main/java/com/nivesh/production/bajajfd/adapter/CustomerListAdapter.kt b/app/src/main/java/com/nivesh/production/bajajfd/adapter/CustomerListAdapter.kt index 3681c93..1083c34 100644 --- a/app/src/main/java/com/nivesh/production/bajajfd/adapter/CustomerListAdapter.kt +++ b/app/src/main/java/com/nivesh/production/bajajfd/adapter/CustomerListAdapter.kt @@ -1,21 +1,24 @@ package com.nivesh.production.bajajfd.adapter +import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.TextView import androidx.recyclerview.widget.RecyclerView import com.google.android.material.switchmaterial.SwitchMaterial import com.nivesh.production.bajajfd.R import com.nivesh.production.bajajfd.model.GetCodes class CustomerListAdapter( - private val customerList: List? + private val customerList: MutableList? ) : RecyclerView.Adapter() { inner class BankListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { val tvCustomerName: SwitchMaterial = itemView.findViewById(R.id.tvCustomerName) + val txtLabel: TextView = itemView.findViewById(R.id.txtLabel) } - private var checkedPosition: Int = -2 + var mExpandedPosition = -1 override fun onCreateViewHolder( @@ -34,18 +37,10 @@ class CustomerListAdapter( override fun onBindViewHolder(holder: BankListViewHolder, position: Int) { val cList = customerList?.get(position) if (cList != null) { - holder.itemView.apply { - holder.tvCustomerName.text = cList.Label - setOnClickListener { - onItemClickListener?.let { - it(cList) - if (checkedPosition != holder.adapterPosition) { - notifyItemChanged(checkedPosition) - checkedPosition = holder.adapterPosition - - } - } - } + holder.txtLabel.text = cList.Label + holder.tvCustomerName.setOnCheckedChangeListener { _, isChecked -> + cList.isSelected = isChecked + Log.e("isSelected","-->"+cList.isSelected) } } } @@ -54,17 +49,4 @@ class CustomerListAdapter( return customerList?.size!! } - private var onItemClickListener: ((GetCodes) -> Unit)? = null - - fun setOnItemClickListener(listener: (GetCodes) -> Unit) { - onItemClickListener = listener - } - - - fun getSelected(): GetCodes? { - return if (checkedPosition != -1) { - customerList?.get(checkedPosition) - } else null - } - } \ No newline at end of file diff --git a/app/src/main/java/com/nivesh/production/bajajfd/model/GetCodes.kt b/app/src/main/java/com/nivesh/production/bajajfd/model/GetCodes.kt index e8c7329..6741a5c 100644 --- a/app/src/main/java/com/nivesh/production/bajajfd/model/GetCodes.kt +++ b/app/src/main/java/com/nivesh/production/bajajfd/model/GetCodes.kt @@ -2,7 +2,8 @@ package com.nivesh.production.bajajfd.model data class GetCodes( val Label: String, - val Value: String + val Value: String, + var isSelected : Boolean ) { override fun toString(): String { return Label diff --git a/app/src/main/java/com/nivesh/production/bajajfd/model/ResponseX.kt b/app/src/main/java/com/nivesh/production/bajajfd/model/ResponseX.kt index 0d08d82..06a1cde 100644 --- a/app/src/main/java/com/nivesh/production/bajajfd/model/ResponseX.kt +++ b/app/src/main/java/com/nivesh/production/bajajfd/model/ResponseX.kt @@ -2,7 +2,7 @@ package com.nivesh.production.bajajfd.model data class ResponseX( val Errors: List, - val GetCodesList: List, + val GetCodesList: MutableList, val Message: String, val Status: String, val StatusCode: Int diff --git a/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt b/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt index 74f02dd..a6489fc 100644 --- a/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt +++ b/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt @@ -25,6 +25,9 @@ class StepFourBajajFDFragment : BaseFragment() { private var _binding: FragmentBajajfdStepFourBinding? = null private val binding get() = _binding!! private var uniqueId: String? = "" + private lateinit var listOfCustomer: MutableList + var selectedList : String = "" + private lateinit var bajajFDInterface: BajajFDInterface @@ -55,11 +58,22 @@ class StepFourBajajFDFragment : BaseFragment() { } binding.btnNext.setOnClickListener { + for (getCodes in listOfCustomer){ + if (getCodes.isSelected){ + if (selectedList.isEmpty()){ + selectedList = getCodes.Value + }else{ + selectedList = 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 = "" + saveFDOtherDataRequest.Values = selectedList saveFDOtherDataRequest.NiveshClientCode = (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE bajajFDInterface.stepFourApi(saveFDOtherDataRequest) } else { @@ -103,7 +117,8 @@ class StepFourBajajFDFragment : BaseFragment() { when (code) { 200 -> { if (getCodeResponse.Response.GetCodesList.isNotEmpty()) { - setUpRecyclerView(getCodeResponse.Response.GetCodesList) + listOfCustomer = getCodeResponse.Response.GetCodesList + setUpRecyclerView(listOfCustomer) } } // 650 -> refreshToken() @@ -132,7 +147,7 @@ class StepFourBajajFDFragment : BaseFragment() { } - private fun setUpRecyclerView(getCustomerList: List) { + private fun setUpRecyclerView(getCustomerList: MutableList) { binding.rvTerms.layoutManager = LinearLayoutManager(activity as BajajFdMainActivity) val customerListAdapter = CustomerListAdapter(getCustomerList) diff --git a/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt b/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt index b368669..e6dcb59 100644 --- a/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt +++ b/app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt @@ -108,9 +108,9 @@ class StepThreeBajajFDFragment : BaseFragment() { binding.btnNext.setOnClickListener { if (validate()) { - uploadDocApi() + // uploadDocApi() // - // bajajFDInterface.stepThreeApi((activity as BajajFdMainActivity).createFDRequest) + bajajFDInterface.stepThreeApi((activity as BajajFdMainActivity).createFDRequest) } } binding.btnBack.setOnClickListener { diff --git a/app/src/main/java/com/nivesh/production/bajajfd/util/Common.kt b/app/src/main/java/com/nivesh/production/bajajfd/util/Common.kt index 8f27b88..7716ed0 100644 --- a/app/src/main/java/com/nivesh/production/bajajfd/util/Common.kt +++ b/app/src/main/java/com/nivesh/production/bajajfd/util/Common.kt @@ -111,6 +111,7 @@ class Common { fun showDialogValidation(activity: Activity?, message: CharSequence?) { val builder = AlertDialog.Builder(activity) builder.setMessage(message) + builder.setCancelable(false) if (activity != null) { builder.setPositiveButton(activity.getString(R.string.ok)) { dialogInterface, _ -> dialogInterface.dismiss() diff --git a/app/src/main/res/layout/item_customer_list_preview.xml b/app/src/main/res/layout/item_customer_list_preview.xml index 2fff86b..ea3e1ab 100644 --- a/app/src/main/res/layout/item_customer_list_preview.xml +++ b/app/src/main/res/layout/item_customer_list_preview.xml @@ -1,20 +1,21 @@ - + + + + + + + + + + + - + - + diff --git a/app/src/main/res/values-hi-rIN/strings.xml b/app/src/main/res/values-hi-rIN/strings.xml index 8d1dde6..53064ea 100644 --- a/app/src/main/res/values-hi-rIN/strings.xml +++ b/app/src/main/res/values-hi-rIN/strings.xml @@ -237,9 +237,11 @@ Non Senior Citizen Add New Account - OK + OK Cancel Aadhar + + Select Option Gallery Camera PaymentMode diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d4243c5..0027640 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -237,7 +237,7 @@ Non Senior Citizen Add New Account - OK + OK Cancel Aadhar