Browse Source

added code for citylist

PankajBranch
Hemant Khadase 2 years ago
parent
commit
3a0a972b9e
21 changed files with 333 additions and 43 deletions
  1. +5
    -1
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/ApiInterface.kt
  2. +0
    -2
      app/src/main/java/com/nivesh/production/bajajfd/model/CityListResponse.kt
  3. +1
    -1
      app/src/main/java/com/nivesh/production/bajajfd/model/CityRequest.kt
  4. +22
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/ClientDetails.kt
  5. +40
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/ClientMasterMFD.kt
  6. +7
    -1
      app/src/main/java/com/nivesh/production/bajajfd/model/DataObject.kt
  7. +5
    -1
      app/src/main/java/com/nivesh/production/bajajfd/model/DataObjectX.kt
  8. +11
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/DeviceInfo.kt
  9. +12
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/Nominee.kt
  10. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/ObjectResponse.kt
  11. +7
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXX.kt
  12. +10
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/UserRequest.kt
  13. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/getClientDetailsRequest.kt
  14. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/getClientDetailsResponse.kt
  15. +3
    -0
      app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt
  16. +85
    -15
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  17. +1
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepOneBajajFDFragment.kt
  18. +74
    -16
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt
  19. +11
    -2
      app/src/main/java/com/nivesh/production/bajajfd/util/Common.kt
  20. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt
  21. +7
    -4
      app/src/main/res/layout/fragment_bajajfd_step_two.xml

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

@ -51,6 +51,10 @@ interface ApiInterface {
@POST("getFDStepsCount") @POST("getFDStepsCount")
suspend fun getFDStepsCount(@Body fdStepsCountRequest: FDStepsCountRequest, @Header("token") token: String): Response<JsonObject> suspend fun getFDStepsCount(@Body fdStepsCountRequest: FDStepsCountRequest, @Header("token") token: String): Response<JsonObject>
@POST("api/GetClientDetailV2_S")
suspend fun getClientDetails(@Body getClientDetailsRequest: getClientDetailsRequest, @Header("token") token: String): Response<JsonObject>
@POST("GetCodes") @POST("GetCodes")
suspend fun titleApi(@Body getCodeRequest: GetCodeRequest, @Header("token") token: String): Response<JsonObject> suspend fun titleApi(@Body getCodeRequest: GetCodeRequest, @Header("token") token: String): Response<JsonObject>
@ -69,7 +73,7 @@ interface ApiInterface {
@POST("GetCodes") @POST("GetCodes")
suspend fun occupationApi(@Body getCodeRequest: GetCodeRequest, @Header("token") token: String): Response<JsonObject> suspend fun occupationApi(@Body getCodeRequest: GetCodeRequest, @Header("token") token: String): Response<JsonObject>
@POST("GetStateMaster")
@POST("api/GetStateMaster")
suspend fun stateApi( @Header("token") token: String): Response<JsonObject> suspend fun stateApi( @Header("token") token: String): Response<JsonObject>
@POST("api/GetCity") @POST("api/GetCity")


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

@ -2,7 +2,5 @@ package com.nivesh.production.bajajfd.model
data class CityListResponse( data class CityListResponse(
val DataObject: List<DataObjectX>, val DataObject: List<DataObjectX>,
val Message: Any,
val ObjectResponse: Any,
val response: ResponseXXXXXX val response: ResponseXXXXXX
) )

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

@ -8,7 +8,7 @@ data class CityRequest(
var RMCode: String?="", var RMCode: String?="",
var RoleID: Int = 0, var RoleID: Int = 0,
var Source: String? = "", var Source: String? = "",
var StateCode: Int = 0,
var StateCode: Int? = 0,
var Subbroker_Code: String? = "", var Subbroker_Code: String? = "",
var Type: String?= "", var Type: String?= "",
var UID: Int = 0 var UID: Int = 0

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

@ -0,0 +1,22 @@
package com.nivesh.production.bajajfd.model
data class ClientDetails(
val ARNexpiredFlag: Boolean,
val EditProfileMessage: String,
val IsPartiallyFilled: Boolean,
val KYCstatus: String,
val ProfileMessage: String,
val ProfileStatus: String,
val UnifiedMessage: String,
val appliaction1_image_name: String,
val city_of_birth: String,
val clientMasterMFD: ClientMasterMFD,
val country_of_birth: String,
val created_by: String,
val created_date: String,
val email: String,
val mobile: String,
val modified_by: String,
val modified_date: String,
val sub_broker_code: String
)

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

@ -0,0 +1,40 @@
package com.nivesh.production.bajajfd.model
data class ClientMasterMFD(
val CLIENT_ACCNO1: String,
val CLIENT_ACCTYPE1: String,
val CLIENT_ADD1: String,
val CLIENT_ADD2: String,
val CLIENT_ADD3: String,
val CLIENT_APPNAME1: String,
val CLIENT_CITY: String,
val CLIENT_CODE: String,
val CLIENT_COMMMODE: String,
val CLIENT_COUNTRY: String,
val CLIENT_DIVPAYMODE: String,
val CLIENT_DOB: String,
val CLIENT_EMAIL: String,
val CLIENT_FATHER_HUSBAND_GUARDIAN: String,
val CLIENT_GENDER: String,
val CLIENT_GUARDIANPAN: String,
val CLIENT_HOLDING: String,
val CLIENT_NEFT_IFSCCODE1: String,
val CLIENT_OCCUPATION_CODE: String,
val CLIENT_PAN: String,
val CLIENT_PINCODE: String,
val CLIENT_STATE: String,
val CLIENT_TAXSTATUS: String,
val CLIENT_TYPE: String,
val CM_MOBILE: String,
val Client_Title: String,
val DEFAULT_BLANK_FLAG1: String,
val Filler1: String,
val Filler2: String,
val Filler3: Any,
val NominationAuthMode: String,
val NominationOptFlag: String,
val Nominee_Title: String,
val Nominees: List<Nominee>,
val ParentName: String,
val ums_id: String
)

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

@ -1,5 +1,7 @@
package com.nivesh.production.bajajfd.model package com.nivesh.production.bajajfd.model
import java.io.Serializable
data class DataObject( data class DataObject(
val BSE_State_Code: String, val BSE_State_Code: String,
val CAMS_statecode: String, val CAMS_statecode: String,
@ -8,4 +10,8 @@ data class DataObject(
val State_Id: Int, val State_Id: Int,
val State_Name: String, val State_Name: String,
val signzyCode: String val signzyCode: String
)
): Serializable {
override fun toString(): String {
return State_Name
}
}

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

@ -3,4 +3,8 @@ package com.nivesh.production.bajajfd.model
data class DataObjectX( data class DataObjectX(
val city_id: Int, val city_id: Int,
val city_name: String val city_name: String
)
) {
override fun toString(): String {
return city_name
}
}

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

@ -0,0 +1,11 @@
package com.nivesh.production.bajajfd.model
data class DeviceInfo(
var app_version: String? = "",
var device_id: String? = "",
var device_model: String? = "",
var device_name: String? ="",
var device_os_version: String? = "",
var device_token: String? = "",
var device_type: String? = ""
)

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

@ -0,0 +1,12 @@
package com.nivesh.production.bajajfd.model
data class Nominee(
val NomineeApplicablePercent: Double,
val NomineeDOB: String,
val NomineeGuardian: String,
val NomineeGuardianPAN: String,
val NomineeMinorFlag: String,
val NomineeName: String,
val NomineePAN: String,
val NomineeRelationship: String
)

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

@ -0,0 +1,8 @@
package com.nivesh.production.bajajfd.model
data class ObjectResponse(
val TransactionCount: Int,
val clientDetails: ClientDetails,
val languageid: Int,
val membersList: List<Any>
)

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

@ -0,0 +1,7 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXX(
val message: String,
val status: String,
val status_code: Int
)

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

@ -0,0 +1,10 @@
package com.nivesh.production.bajajfd.model
data class UserRequest(
var AppOrWeb: String? = "",
var IPAddress: String? = "",
var LoggedInRoleId: Int = 0,
var Source: String? = "",
var UID: String? = "",
var deviceInfo: DeviceInfo? = null
)

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

@ -0,0 +1,8 @@
package com.nivesh.production.bajajfd.model
data class getClientDetailsRequest(
var AppOrWeb: String? = "",
var UserRequest: UserRequest? = null,
var client_code: String? = "",
var sub_broker_code: String? = ""
)

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

@ -0,0 +1,8 @@
package com.nivesh.production.bajajfd.model
data class getClientDetailsResponse(
val DataObject: Any ? = "",
val Message: Any = "",
var ObjectResponse: ObjectResponse? = null,
var response: ResponseXXXXXXX? = null
)

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

@ -12,6 +12,9 @@ class MainRepository constructor(private val apiInterface: ApiInterface) {
suspend fun getStepsCountResponse(requestBody: FDStepsCountRequest , token: String) = suspend fun getStepsCountResponse(requestBody: FDStepsCountRequest , token: String) =
apiInterface.getFDStepsCount(requestBody, token) apiInterface.getFDStepsCount(requestBody, token)
suspend fun getClientDetailsResponse(getClientDetails: getClientDetailsRequest , token: String) =
apiInterface.getClientDetails(getClientDetails, token)
suspend fun createCalculateFDMaturityAmount(requestBody: GetMaturityAmountRequest, token: String) = suspend fun createCalculateFDMaturityAmount(requestBody: GetMaturityAmountRequest, token: String) =
apiInterface.getCalculateFDMaturityAmount(requestBody, token) apiInterface.getCalculateFDMaturityAmount(requestBody, token)


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

@ -33,25 +33,22 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
lateinit var stepFourBajajFDViewModel: StepFourBajajFDViewModel lateinit var stepFourBajajFDViewModel: StepFourBajajFDViewModel
lateinit var stepFiveBajajFDViewModel: StepFiveBajajFDViewModel lateinit var stepFiveBajajFDViewModel: StepFiveBajajFDViewModel
lateinit var createFDRequest: CreateFDRequest
lateinit var createFDApplicantRequest: CreateFDApplicationRequest
lateinit var applicantDetails: ApplicantDetails
lateinit var fdInvestmentDetails: FDInvestmentDetails
lateinit var applicantRelationDetails: ApplicantRelationDetails
lateinit var fdBankDetails: FdBankDetails
lateinit var nomineeDetails: NomineeDetails
lateinit var nomineeGuardianDetails: NomineeGuardianDetails
var createFDRequest: CreateFDRequest
var createFDApplicantRequest: CreateFDApplicationRequest
var applicantDetails: ApplicantDetails
var fdInvestmentDetails: FDInvestmentDetails
var applicantRelationDetails: ApplicantRelationDetails
var fdBankDetails: FdBankDetails
var nomineeDetails: NomineeDetails
var nomineeGuardianDetails: NomineeGuardianDetails
var getClientDetailsResponse : getClientDetailsResponse
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
init() init()
} }
private fun init() {
binding = ActivityBajajFdBinding.inflate(layoutInflater)
setContentView(binding.root)
init {
getClientDetailsResponse = getClientDetailsResponse()
createFDRequest = CreateFDRequest() createFDRequest = CreateFDRequest()
createFDApplicantRequest = CreateFDApplicationRequest() createFDApplicantRequest = CreateFDApplicationRequest()
@ -61,6 +58,23 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
fdBankDetails = FdBankDetails() fdBankDetails = FdBankDetails()
nomineeDetails = NomineeDetails() nomineeDetails = NomineeDetails()
nomineeGuardianDetails = NomineeGuardianDetails() nomineeGuardianDetails = NomineeGuardianDetails()
}
private fun init() {
binding = ActivityBajajFdBinding.inflate(layoutInflater)
setContentView(binding.root)
// createFDRequest = CreateFDRequest()
// createFDApplicantRequest = CreateFDApplicationRequest()
//
// fdInvestmentDetails = FDInvestmentDetails()
// applicantDetails = ApplicantDetails()
// applicantRelationDetails = ApplicantRelationDetails()
// fdBankDetails = FdBankDetails()
// nomineeDetails = NomineeDetails()
// nomineeGuardianDetails = NomineeGuardianDetails()
//start Repository //start Repository
viewModel = ViewModelProvider(this, FDModelProviderFactory(MainRepository(ApiClient.getApiClient)))[BajajFDViewModel::class.java] viewModel = ViewModelProvider(this, FDModelProviderFactory(MainRepository(ApiClient.getApiClient)))[BajajFDViewModel::class.java]
@ -93,7 +107,8 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
stepsCountResponse.Response.StatusCode.let { code -> stepsCountResponse.Response.StatusCode.let { code ->
when (code) { when (code) {
200 -> { 200 -> {
setViewPager(stepsCountResponse.Response.StepsCount)
getClientDetailsApi(stepsCountResponse.Response.StepsCount)
// setViewPager(stepsCountResponse.Response.StepsCount)
} }
// 650 -> refreshToken() // 650 -> refreshToken()
else -> {} else -> {}
@ -113,6 +128,61 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
} }
} }
private fun getClientDetailsApi(stepsCount: Int) {
if (Common.isNetworkAvailable(this@BajajFdMainActivity)){
val getClientDetailsRequest = getClientDetailsRequest()
getClientDetailsRequest.client_code = "8872"
getClientDetailsRequest.AppOrWeb = "App"
getClientDetailsRequest.sub_broker_code = "1014"
val userRequest = UserRequest()
userRequest.UID = "19060"
userRequest.IPAddress = ""
userRequest.Source = "Nivesh"
userRequest.AppOrWeb = "App"
userRequest.LoggedInRoleId = 5
val deviceInfo = DeviceInfo()
deviceInfo.device_id = ""
deviceInfo.device_model = ""
deviceInfo.device_token = ""
deviceInfo.device_name = ""
deviceInfo.app_version = "2.44.13"
deviceInfo.device_os_version = "Android 11"
userRequest.deviceInfo = deviceInfo
getClientDetailsRequest.UserRequest = userRequest
Log.e("getClientDetailRequest","-->"+Gson().toJson(getClientDetailsRequest))
viewModel.getClientDetails(getClientDetailsRequest, token)
viewModel.getClientDetailsMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->$response")
getClientDetailsResponse =
Gson().fromJson(response.data?.toString(), getClientDetailsResponse::class.java)
getClientDetailsResponse.response?.status_code.let { code ->
when (code) {
200 -> {
setViewPager(stepsCount)
}
// 650 -> refreshToken()
else -> {}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
Log.e(" ", "An error occurred:$message")
}
}
is Resource.Loading -> {
}
}
}
}
}
private fun setViewPager(stepsCount: Int) { private fun setViewPager(stepsCount: Int) {
// steps setting // steps setting


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

@ -160,6 +160,7 @@ class StepOneBajajFDFragment : Fragment() {
(activity as BajajFdMainActivity).fdInvestmentDetails.CustomerType = "" (activity as BajajFdMainActivity).fdInvestmentDetails.CustomerType = ""
(activity as BajajFdMainActivity).fdInvestmentDetails.CKYCNumber = "" (activity as BajajFdMainActivity).fdInvestmentDetails.CKYCNumber = ""
(activity as BajajFdMainActivity).createFDApplicantRequest.FDInvestmentDetails
bajajFDInterface.stepOneApi("stepOneResponse") bajajFDInterface.stepOneApi("stepOneResponse")
} }
} }


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

@ -1,10 +1,12 @@
package com.nivesh.production.bajajfd.ui.fragment package com.nivesh.production.bajajfd.ui.fragment
import android.app.DatePickerDialog
import android.os.Bundle import android.os.Bundle
import android.text.Editable import android.text.Editable
import android.text.InputFilter import android.text.InputFilter
import android.text.InputFilter.LengthFilter import android.text.InputFilter.LengthFilter
import android.text.TextWatcher import android.text.TextWatcher
import android.transition.Fade.IN
import android.util.Log import android.util.Log
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
@ -13,6 +15,7 @@ import android.widget.ArrayAdapter
import android.widget.RadioButton import android.widget.RadioButton
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.google.android.material.textfield.TextInputEditText
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.databinding.FragmentBajajfdStepTwoBinding import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepTwoBinding
@ -22,6 +25,7 @@ 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.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
import com.nivesh.production.bajajfd.util.Common.Companion.getDate
import com.nivesh.production.bajajfd.util.Common.Companion.isIndianMobileNo import com.nivesh.production.bajajfd.util.Common.Companion.isIndianMobileNo
import com.nivesh.production.bajajfd.util.Common.Companion.isValidEmail import com.nivesh.production.bajajfd.util.Common.Companion.isValidEmail
import com.nivesh.production.bajajfd.util.Common.Companion.isValidName import com.nivesh.production.bajajfd.util.Common.Companion.isValidName
@ -30,6 +34,8 @@ 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.StepTwoBajajFDViewModel import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
import java.text.SimpleDateFormat
import java.util.*
class StepTwoBajajFDFragment : Fragment() { class StepTwoBajajFDFragment : Fragment() {
@ -40,6 +46,7 @@ class StepTwoBajajFDFragment : Fragment() {
private lateinit var bajajFDInterface: BajajFDInterface private lateinit var bajajFDInterface: BajajFDInterface
private lateinit var rbBank: RadioButton private lateinit var rbBank: RadioButton
private lateinit var rbPaymentMode: RadioButton private lateinit var rbPaymentMode: RadioButton
private var cal = Calendar.getInstance()
private lateinit var listOfTitle: List<GetCodes> private lateinit var listOfTitle: List<GetCodes>
private lateinit var listOfGender: List<GetCodes> private lateinit var listOfGender: List<GetCodes>
@ -98,9 +105,16 @@ class StepTwoBajajFDFragment : Fragment() {
removeError(binding.tlMobileNumber) removeError(binding.tlMobileNumber)
} }
}) })
// create an OnDateSetListener
binding.edtDOB.setOnClickListener { binding.edtDOB.setOnClickListener {
removeError(binding.tlDOB) removeError(binding.tlDOB)
datePicker(binding.edtDOB)
} }
binding.edtPANNumber.addTextChangedListener(object : TextWatcher { binding.edtPANNumber.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) { override fun afterTextChanged(s: Editable?) {
@ -305,6 +319,7 @@ class StepTwoBajajFDFragment : Fragment() {
}) })
binding.edtNomineeDOB.setOnClickListener { binding.edtNomineeDOB.setOnClickListener {
removeError(binding.tlNomineeDOB) removeError(binding.tlNomineeDOB)
datePicker(binding.edtNomineeDOB)
} }
binding.spNomineeRelation.setOnItemClickListener { _, _, _, _ -> binding.spNomineeRelation.setOnItemClickListener { _, _, _, _ ->
removeError(binding.tlNomineeRelation) removeError(binding.tlNomineeRelation)
@ -483,7 +498,8 @@ class StepTwoBajajFDFragment : Fragment() {
binding.edtAddressLine1.text.toString() binding.edtAddressLine1.text.toString()
(activity as BajajFdMainActivity).applicantDetails.ApplicantAddress2 = (activity as BajajFdMainActivity).applicantDetails.ApplicantAddress2 =
binding.edtAddressLine2.text.toString() binding.edtAddressLine2.text.toString()
(activity as BajajFdMainActivity).applicantDetails.ApplicantAddress3 = binding.edtAddressLine3.text.toString()
(activity as BajajFdMainActivity).applicantDetails.ApplicantAddress3 =
binding.edtAddressLine3.text.toString()
(activity as BajajFdMainActivity).applicantDetails.ApplicantCity = (activity as BajajFdMainActivity).applicantDetails.ApplicantCity =
binding.spCity.text.toString() binding.spCity.text.toString()
(activity as BajajFdMainActivity).applicantDetails.ApplicantState = (activity as BajajFdMainActivity).applicantDetails.ApplicantState =
@ -559,6 +575,13 @@ class StepTwoBajajFDFragment : Fragment() {
(activity as BajajFdMainActivity).fdBankDetails.PaymentMode = (activity as BajajFdMainActivity).fdBankDetails.PaymentMode =
rbPaymentMode.text.toString() rbPaymentMode.text.toString()
(activity as BajajFdMainActivity).createFDApplicantRequest.ApplicantDetails
(activity as BajajFdMainActivity).createFDApplicantRequest.ApplicantRelationDetails
(activity as BajajFdMainActivity).createFDApplicantRequest.FdBankDetails
(activity as BajajFdMainActivity).createFDApplicantRequest.NomineeDetails
(activity as BajajFdMainActivity).createFDApplicantRequest.NomineeGuardianDetails
Log.e("CreateFDRequest","-->"+Gson().toJson((activity as BajajFdMainActivity).createFDApplicantRequest))
bajajFDInterface.stepTwoApi("stepTwoResponse") bajajFDInterface.stepTwoApi("stepTwoResponse")
} }
} }
@ -570,6 +593,26 @@ class StepTwoBajajFDFragment : Fragment() {
return root return root
} }
private fun datePicker(edtDOB: TextInputEditText) {
val year = cal.get(Calendar.YEAR)
val month = cal.get(Calendar.MONTH)
val day = cal.get(Calendar.DAY_OF_MONTH)
val datePickerDialog = DatePickerDialog(
activity as BajajFdMainActivity, { _, year, monthOfYear, dayOfMonth ->
if (monthOfYear.toString().length == 1){
"0".plus(monthOfYear)
}
edtDOB.setText(getDate(dayOfMonth.toString() +"-" + (monthOfYear + 1) +"-" + year))
}, year, month, day
)
datePickerDialog.datePicker.maxDate = cal.timeInMillis
val c = Calendar.getInstance()
c.add(Calendar.YEAR, -140)
datePickerDialog.datePicker.minDate = c.timeInMillis
datePickerDialog.show()
}
private fun panCheckApi() { private fun panCheckApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val panCheck = PanCheckRequest() val panCheck = PanCheckRequest()
@ -628,6 +671,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun titleApi() { private fun titleApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -691,6 +735,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun genderApi() { private fun genderApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -742,6 +787,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun relationShipApi() { private fun relationShipApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -805,6 +851,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun maritalStatusApi() { private fun maritalStatusApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -856,6 +903,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun occupationApi() { private fun occupationApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -907,6 +955,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun annualIncomeApi() { private fun annualIncomeApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getCodeRequest = GetCodeRequest() val getCodeRequest = GetCodeRequest()
@ -958,6 +1007,7 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun stateListApi() { private fun stateListApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
stepTwoBajajFDViewModel.stateApi(token) stepTwoBajajFDViewModel.stateApi(token)
@ -966,7 +1016,10 @@ class StepTwoBajajFDFragment : Fragment() {
is Resource.Success -> { is Resource.Success -> {
Log.e("response", "-->$response") Log.e("response", "-->$response")
val stateListResponse: StateListResponse = val stateListResponse: StateListResponse =
Gson().fromJson(response.data?.toString(), StateListResponse::class.java)
Gson().fromJson(
response.data?.toString(),
StateListResponse::class.java
)
stateListResponse.response.status_code.let { code -> stateListResponse.response.status_code.let { code ->
when (code) { when (code) {
200 -> { 200 -> {
@ -982,7 +1035,7 @@ class StepTwoBajajFDFragment : Fragment() {
adapter.getItem(0)?.State_Name, adapter.getItem(0)?.State_Name,
false false
) )
cityListApi(adapter.getItem(0)?.State_Code)
cityListApi(adapter.getItem(0)?.State_Id)
} }
} }
// 650 -> refreshToken() // 650 -> refreshToken()
@ -1004,12 +1057,11 @@ class StepTwoBajajFDFragment : Fragment() {
} }
} }
private fun cityListApi(stateCode: String?) {
private fun cityListApi(stateCode: Int?) {
val cityRequest = CityRequest() val cityRequest = CityRequest()
if (stateCode != null) {
cityRequest.StateCode = stateCode.toInt()
}
cityRequest.StateCode = stateCode
cityRequest.Type = "" cityRequest.Type = ""
cityRequest.ClientCode = "8872" cityRequest.ClientCode = "8872"
cityRequest.RoleID = 5 cityRequest.RoleID = 5
@ -1037,8 +1089,8 @@ class StepTwoBajajFDFragment : Fragment() {
R.layout.spinner_dropdown, R.layout.spinner_dropdown,
listOfCities listOfCities
) )
binding.spIncome.setAdapter(adapter)
binding.spIncome.setText(
binding.spCity.setAdapter(adapter)
binding.spCity.setText(
adapter.getItem(0)?.city_name, adapter.getItem(0)?.city_name,
false false
) )
@ -1091,7 +1143,7 @@ class StepTwoBajajFDFragment : Fragment() {
binding.tlPanNumber, binding.tlPanNumber,
getString(R.string.emptyPAN) getString(R.string.emptyPAN)
) )
} else if (isValidPan(binding.edtPANNumber.text.toString())) { // EditText
} else if (!isValidPan(binding.edtPANNumber.text.toString())) { // EditText
commonErrorMethod( commonErrorMethod(
binding.edtPANNumber, binding.edtPANNumber,
binding.tlPanNumber, binding.tlPanNumber,
@ -1109,7 +1161,7 @@ class StepTwoBajajFDFragment : Fragment() {
binding.tlFirstName, binding.tlFirstName,
getString(R.string.emptyFirstName) getString(R.string.emptyFirstName)
) )
} else if (isValidName(binding.edtFirstName.text.toString())) { // EditText
} else if (!isValidName(binding.edtFirstName.text.toString())) { // EditText
commonErrorMethod( commonErrorMethod(
binding.edtFirstName, binding.edtFirstName,
binding.tlFirstName, binding.tlFirstName,
@ -1121,7 +1173,7 @@ class StepTwoBajajFDFragment : Fragment() {
binding.tlMiddleName, binding.tlMiddleName,
getString(R.string.emptyMiddleName) getString(R.string.emptyMiddleName)
) )
} else if (isValidName(binding.edtMiddleName.text.toString())) { // EditText
} else if (!isValidName(binding.edtMiddleName.text.toString())) { // EditText
commonErrorMethod( commonErrorMethod(
binding.edtMiddleName, binding.edtMiddleName,
binding.tlMiddleName, binding.tlMiddleName,
@ -1133,7 +1185,7 @@ class StepTwoBajajFDFragment : Fragment() {
binding.tlLastName, binding.tlLastName,
getString(R.string.emptyLastName) getString(R.string.emptyLastName)
) )
} else if (isValidName(binding.edtLastName.text.toString())) { // EditText
} else if (!isValidName(binding.edtLastName.text.toString())) { // EditText
commonErrorMethod( commonErrorMethod(
binding.edtLastName, binding.edtLastName,
binding.tlLastName, binding.tlLastName,
@ -1191,14 +1243,18 @@ class StepTwoBajajFDFragment : Fragment() {
binding.tlAddressLine2, binding.tlAddressLine2,
getString(R.string.emptyAddressLine2) getString(R.string.emptyAddressLine2)
) )
}else if (binding.edtAddressLine3.text.toString().isEmpty()) { // EditText
} else if (binding.edtAddressLine3.text.toString().isEmpty()) { // EditText
commonErrorMethod( commonErrorMethod(
binding.edtAddressLine3, binding.edtAddressLine3,
binding.tlAddressLine3, binding.tlAddressLine3,
getString(R.string.emptyAddressLine3) getString(R.string.emptyAddressLine3)
) )
} else if (binding.spState.text.toString().isEmpty()) { // EditText } else if (binding.spState.text.toString().isEmpty()) { // EditText
commonSpinnerErrorMethod(binding.spState, binding.tlState, getString(R.string.emptyState))
commonSpinnerErrorMethod(
binding.spState,
binding.tlState,
getString(R.string.emptyState)
)
} else if (binding.spCity.text.toString().isEmpty()) { // EditText } else if (binding.spCity.text.toString().isEmpty()) { // EditText
commonSpinnerErrorMethod(binding.spCity, binding.tlCity, getString(R.string.emptyCity)) commonSpinnerErrorMethod(binding.spCity, binding.tlCity, getString(R.string.emptyCity))
} else if (binding.edtPinCode.text.toString().isEmpty()) { // EditText } else if (binding.edtPinCode.text.toString().isEmpty()) { // EditText
@ -1244,4 +1300,6 @@ class StepTwoBajajFDFragment : Fragment() {
super.onDestroyView() super.onDestroyView()
_binding = null _binding = null
} }
}
}

+ 11
- 2
app/src/main/java/com/nivesh/production/bajajfd/util/Common.kt View File

@ -1,5 +1,6 @@
package com.nivesh.production.bajajfd.util package com.nivesh.production.bajajfd.util
import android.annotation.SuppressLint
import android.app.Activity import android.app.Activity
import android.app.AlertDialog import android.app.AlertDialog
import android.content.Context import android.content.Context
@ -13,9 +14,11 @@ import android.util.Patterns
import com.google.android.material.textfield.MaterialAutoCompleteTextView import com.google.android.material.textfield.MaterialAutoCompleteTextView
import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputEditText
import com.google.android.material.textfield.TextInputLayout import com.google.android.material.textfield.TextInputLayout
import com.nivesh.production.bajajfd.BajajApplication
import com.nivesh.production.bajajfd.R import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import java.text.SimpleDateFormat
import java.time.LocalDate
import java.time.format.DateTimeFormatter
import java.util.*
import java.util.regex.Matcher import java.util.regex.Matcher
import java.util.regex.Pattern import java.util.regex.Pattern
@ -161,5 +164,11 @@ class Common {
return false return false
} }
fun getDate(string :String): String {
val input = SimpleDateFormat("dd-MM-yyyy", Locale.US)
val mDate : Date? = input.parse(string)
val simpleDateFormat = SimpleDateFormat("dd MMM, yyyy", Locale.US)
return simpleDateFormat.format(mDate as Date)
}
} }
} }

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

@ -6,6 +6,7 @@ import androidx.lifecycle.viewModelScope
import com.google.gson.JsonObject import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.FDStepsCountRequest import com.nivesh.production.bajajfd.model.FDStepsCountRequest
import com.nivesh.production.bajajfd.model.GetCodeRequest import com.nivesh.production.bajajfd.model.GetCodeRequest
import com.nivesh.production.bajajfd.model.getClientDetailsRequest
import com.nivesh.production.bajajfd.repositories.MainRepository import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.util.Resource import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
@ -28,6 +29,13 @@ class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel()
getStepsCountMutableData.postValue(handleRatesResponse(response)) getStepsCountMutableData.postValue(handleRatesResponse(response))
} }
val getClientDetailsMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getClientDetails(getClientDetailsRequest: getClientDetailsRequest, token : String) = viewModelScope.launch {
getClientDetailsMutableData.postValue(Resource.Loading())
val response = mainRepository.getClientDetailsResponse(getClientDetailsRequest, token)
getClientDetailsMutableData.postValue(handleRatesResponse(response))
}
private fun handleRatesResponse(response: retrofit2.Response<JsonObject>): Resource<JsonObject> { private fun handleRatesResponse(response: retrofit2.Response<JsonObject>): Resource<JsonObject> {


+ 7
- 4
app/src/main/res/layout/fragment_bajajfd_step_two.xml View File

@ -137,7 +137,8 @@
android:paddingTop="@dimen/margin_15" android:paddingTop="@dimen/margin_15"
android:paddingBottom="@dimen/margin_15" android:paddingBottom="@dimen/margin_15"
android:drawableEnd="@drawable/svg_cal" android:drawableEnd="@drawable/svg_cal"
android:inputType="date"
android:inputType="none"
android:focusable="false"
android:textSize="@dimen/text_size_14" /> android:textSize="@dimen/text_size_14" />
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
@ -156,6 +157,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingTop="@dimen/margin_15" android:paddingTop="@dimen/margin_15"
android:paddingBottom="@dimen/margin_15" android:paddingBottom="@dimen/margin_15"
android:inputType="textCapCharacters"
android:maxEms="10" android:maxEms="10"
android:textSize="@dimen/text_size_14" /> android:textSize="@dimen/text_size_14" />
@ -563,7 +565,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingTop="@dimen/margin_15" android:paddingTop="@dimen/margin_15"
android:paddingBottom="@dimen/margin_15" android:paddingBottom="@dimen/margin_15"
android:inputType="text"
android:inputType="number"
android:textSize="@dimen/text_size_14" android:textSize="@dimen/text_size_14"
android:maxEms="6" /> android:maxEms="6" />
@ -696,7 +698,8 @@
android:drawableEnd="@drawable/svg_cal" android:drawableEnd="@drawable/svg_cal"
android:paddingTop="@dimen/margin_15" android:paddingTop="@dimen/margin_15"
android:paddingBottom="@dimen/margin_15" android:paddingBottom="@dimen/margin_15"
android:inputType="date"
android:inputType="none"
android:focusable="false"
android:textSize="@dimen/text_size_14" /> android:textSize="@dimen/text_size_14" />
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
@ -837,7 +840,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingTop="@dimen/margin_15" android:paddingTop="@dimen/margin_15"
android:paddingBottom="@dimen/margin_15" android:paddingBottom="@dimen/margin_15"
android:inputType="text"
android:inputType="number"
android:maxEms="60" android:maxEms="60"
android:textSize="@dimen/text_size_14" /> android:textSize="@dimen/text_size_14" />


Loading…
Cancel
Save

Powered by TurnKey Linux.