Browse Source

working on 4th step

PankajBranch
Hemant Khadase 2 years ago
parent
commit
cceedf2d2c
20 changed files with 276 additions and 294 deletions
  1. +14
    -68
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/ApiInterface.kt
  2. +24
    -24
      app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt
  3. +10
    -9
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  4. +3
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt
  5. +5
    -2
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepOneBajajFDFragment.kt
  6. +2
    -4
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt
  7. +15
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepFiveModelProviderFactory.kt
  8. +15
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepFourModelProviderFactory.kt
  9. +17
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/StepThreeModelProviderFactory.kt
  10. +1
    -1
      app/src/main/java/com/nivesh/production/bajajfd/util/Constants.kt
  11. +2
    -2
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt
  12. +2
    -11
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFiveBajajFDViewModel.kt
  13. +12
    -12
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepFourBajajFDViewModel.kt
  14. +4
    -5
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepOneBajajFDViewModel.kt
  15. +2
    -2
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepThreeBajajFDViewModel.kt
  16. +4
    -4
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/StepTwoBajajFDViewModel.kt
  17. +126
    -131
      app/src/main/res/layout/fragment_bajajfd_step_five.xml
  18. +11
    -13
      app/src/main/res/layout/fragment_bajajfd_step_four.xml
  19. +5
    -4
      app/src/main/res/layout/fragment_bajajfd_step_three.xml
  20. +2
    -2
      app/src/main/res/layout/fragment_bajajfd_step_two.xml

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

@ -11,97 +11,43 @@ import retrofit2.http.*
interface ApiInterface {
// @FormUrlEncoded
@POST("GetRates")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun getRates(@Body getRatesRequest: GetRatesRequest): Response<JsonObject>
suspend fun getRates(@Body getRatesRequest: GetRatesRequest, @Header("token") token: String): Response<JsonObject>
@POST("CheckFDCKYC")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun checkFDKYC(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun checkFDKYC(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("CreateFDApplication")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun createFDApp(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun createFDApp(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("DocumentsUpload")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun documentsUpload(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun documentsUpload(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("SaveFDOtherData")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun saveFDOtherData(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun saveFDOtherData(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("GetFDDetails")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun getFDDetails(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun getFDDetails(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("UpdateFDPaymentStatus")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun updateFDPaymentStatus(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun updateFDPaymentStatus(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("FinaliseFD")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun finaliseFD(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun finaliseFD(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("FinaliseKYC")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun finaliseKYC(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun finaliseKYC(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
@POST("PaymentRequery")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun paymentReQuery(@Body requestBody: RequestBody): Response<JsonObject>
suspend fun paymentReQuery(@Body requestBody: RequestBody, @Header("token") token: String): Response<JsonObject>
// @FormUrlEncoded
@POST("GetCodes")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun getCodes(@Body requestBody: GetCodeRequest): Response<JsonObject>
suspend fun getCodes(@Body requestBody: GetCodeRequest, @Header("token") token: String): Response<JsonObject>
@POST("CalculateFDMaturityAmount")
@Headers(
"token: 636F8F63-06C4-4D95-8562-392B34025FB0",
"Content-Type: application/json", "charset: UTF-8"
)
suspend fun getCalculateFDMaturityAmount(@Body requestBody: GetMaturityAmountRequest): Response<JsonObject>
suspend fun getCalculateFDMaturityAmount(@Body requestBody: GetMaturityAmountRequest, @Header("token") token: String): Response<JsonObject>
@POST("PanCheck_S")
// @Headers(
// "token: 636F8F63-06C4-4D95-8562-392B34025FB0",
// "Content-Type: application/json", "charset: UTF-8"
// )
@Headers("token: 636F8F63-06C4-4D95-8562-392B34025FB0")
suspend fun panCheckApi(@Body panCheck: PanCheckRequest): Response<JsonObject>
@POST("api/PanCheck_S")
suspend fun panCheckApi(@Body panCheck: PanCheckRequest, @Header("token") token: String): Response<JsonObject>
}

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

@ -7,41 +7,41 @@ import com.nivesh.production.bajajfd.model.GetRatesRequest
import com.nivesh.production.bajajfd.model.PanCheckRequest
class MainRepository constructor(private val apiInterface: ApiInterface) {
suspend fun getRatesResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun getRatesResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun getCodesResponse(requestBody: GetCodeRequest) =
apiInterface.getCodes(requestBody)
suspend fun getCodesResponse(requestBody: GetCodeRequest , token: String) =
apiInterface.getCodes(requestBody, token)
suspend fun createCalculateFDMaturityAmount(requestBody: GetMaturityAmountRequest) =
apiInterface.getCalculateFDMaturityAmount(requestBody)
suspend fun createCalculateFDMaturityAmount(requestBody: GetMaturityAmountRequest, token: String) =
apiInterface.getCalculateFDMaturityAmount(requestBody, token)
suspend fun checkFDKYCResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun checkFDKYCResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun documentsUploadResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun documentsUploadResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun saveFDOtherDataResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun saveFDOtherDataResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun getFDDetailsResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun getFDDetailsResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun updateFDPaymentStatusResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun updateFDPaymentStatusResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun finaliseFDResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun finaliseFDResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun finaliseKYCResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun finaliseKYCResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun paymentReQueryResponse(getRatesRequest: GetRatesRequest) =
apiInterface.getRates(getRatesRequest)
suspend fun paymentReQueryResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun panCheck(panCheck: PanCheckRequest) =
apiInterface.panCheckApi(panCheck)
suspend fun panCheck(panCheck: PanCheckRequest, token: String) =
apiInterface.panCheckApi(panCheck, token)
}

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

@ -15,16 +15,13 @@ import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.fragment.*
import com.nivesh.production.bajajfd.ui.providerfactory.FDModelProviderFactory
import com.nivesh.production.bajajfd.ui.providerfactory.StepOneModelProviderFactory
import com.nivesh.production.bajajfd.ui.providerfactory.StepTwoModelProviderFactory
import com.nivesh.production.bajajfd.ui.providerfactory.*
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.defaultShape
import com.nivesh.production.bajajfd.util.Common.Companion.selectedShape
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
import com.nivesh.production.bajajfd.viewModel.*
class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
lateinit var binding: ActivityBajajFdBinding
@ -32,6 +29,9 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
lateinit var stepOneBajajFDViewModel: StepOneBajajFDViewModel
lateinit var stepTwoBajajFDViewModel: StepTwoBajajFDViewModel
lateinit var stepThreeBajajFDViewModel: StepThreeBajajFDViewModel
lateinit var stepFourBajajFDViewModel: StepFourBajajFDViewModel
lateinit var stepFiveBajajFDViewModel: StepFiveBajajFDViewModel
lateinit var listOfFrequency: List<GetCodes>
lateinit var createFDRequest: CreateFDRequest
@ -42,7 +42,6 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
lateinit var fdBankDetails: FdBankDetails
lateinit var nomineeDetails: NomineeDetails
lateinit var nomineeGuardianDetails: NomineeGuardianDetails
// lateinit var viewModelProviderFactory
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -68,7 +67,9 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
viewModel = ViewModelProvider(this, FDModelProviderFactory(MainRepository(ApiClient.getApiClient)))[BajajFDViewModel::class.java]
stepOneBajajFDViewModel = ViewModelProvider(this, StepOneModelProviderFactory(MainRepository(ApiClient.getApiClient)))[StepOneBajajFDViewModel::class.java]
stepTwoBajajFDViewModel = ViewModelProvider(this, StepTwoModelProviderFactory(MainRepository(ApiClient.getApiClient)))[StepTwoBajajFDViewModel::class.java]
stepThreeBajajFDViewModel = ViewModelProvider(this, StepThreeModelProviderFactory(MainRepository(ApiClient.getApiClient)))[StepThreeBajajFDViewModel::class.java]
stepFourBajajFDViewModel = ViewModelProvider(this, StepFourModelProviderFactory(MainRepository(ApiClient.getApiClient)))[StepFourBajajFDViewModel::class.java]
stepFiveBajajFDViewModel = ViewModelProvider(this, StepFiveModelProviderFactory(MainRepository(ApiClient.getApiClient)))[StepFiveBajajFDViewModel::class.java]
listOfFrequency = ArrayList()
if (Common.isNetworkAvailable(this)) {
@ -86,7 +87,7 @@ class BajajFdMainActivity : AppCompatActivity(), BajajFDInterface {
getCodeRequest.Category = getString(R.string.category)
getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = ""
viewModel.getCode(getCodeRequest)
viewModel.getCode(getCodeRequest, token)
viewModel.getRatesMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {


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

@ -7,6 +7,7 @@ import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFourBinding
import com.nivesh.production.bajajfd.interfaces.BajajFDInterface
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.viewModel.StepFourBajajFDViewModel
class StepFourBajajFDFragment : Fragment() {
@ -38,6 +39,8 @@ class StepFourBajajFDFragment : Fragment() {
_binding = FragmentBajajfdStepFourBinding.inflate(inflater, container, false)
val root = binding.root
stepFourBajajFDViewModel = (activity as BajajFdMainActivity).stepFourBajajFDViewModel
binding.btnNext.setOnClickListener {
if (validate()) {


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

@ -28,6 +28,7 @@ import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.commonErrorMethod
import com.nivesh.production.bajajfd.util.Common.Companion.removeError
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel
@ -222,7 +223,9 @@ class StepOneBajajFDFragment : Fragment() {
)
}
// 650 -> refreshToken()
else -> {}
else -> {
}
}
}
}
@ -289,7 +292,7 @@ class StepOneBajajFDFragment : Fragment() {
} else {
getRatesRequest.type = getString(R.string.nonSeniorCitizen)
}
stepOneBajajFDViewModel.getRates(getRatesRequest)
stepOneBajajFDViewModel.getRates(getRatesRequest, token)
stepOneBajajFDViewModel.getRatesMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {


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

@ -28,6 +28,7 @@ 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.isValidPan
import com.nivesh.production.bajajfd.util.Common.Companion.removeError
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel
@ -619,10 +620,7 @@ class StepTwoBajajFDFragment : Fragment() {
panCheck.subBrokerCode = "0"
panCheck.panNumber = binding.edtPANNumber.text.toString()
panCheck.mobileNumber = ""
// val string :String = Gson().toJson(panCheck)
// val requestBody = string.toRequestBody("application/json".toMediaTypeOrNull())
// stepTwoBajajFDViewModel.panCheck(requestBody)
stepTwoBajajFDViewModel.panCheck(panCheck)
stepTwoBajajFDViewModel.panCheck(panCheck, token)
stepTwoBajajFDViewModel.getPanCheckMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {


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

@ -0,0 +1,15 @@
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
}
}

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

@ -0,0 +1,15 @@
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
}
}

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

@ -0,0 +1,17 @@
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
}
}

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

@ -4,6 +4,6 @@ class Constants() {
companion object {
const val BASE_URL = "https://providential.in/WebApi_Bajaj/"
const val token = "636F8F63-06C4-4D95-8562-392B34025FB0"
}
}

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

@ -14,9 +14,9 @@ class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel()
// TODO: Implement the ViewModel
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getCode(requestBody: GetCodeRequest) = viewModelScope.launch {
fun getCode(requestBody: GetCodeRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.getCodesResponse(requestBody)
val response = mainRepository.getCodesResponse(requestBody, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}


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

@ -1,18 +1,9 @@
package com.nivesh.production.bajajfd.viewModel
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Transformations
import androidx.lifecycle.ViewModel
import com.nivesh.production.bajajfd.repositories.MainRepository
class StepFiveBajajFDViewModel : ViewModel() {
class StepFiveBajajFDViewModel (private val mainRepository: MainRepository) : ViewModel() {
private val _index = MutableLiveData<Int>()
val text: LiveData<String> = Transformations.map(_index) {
"Step : $it"
}
fun setIndex(index: Int) {
_index.value = index
}
}

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

@ -13,9 +13,9 @@ class StepFourBajajFDViewModel(private val mainRepository: MainRepository) : Vie
private val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun saveFDOtherData(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun saveFDOtherData(getRatesRequest: GetRatesRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.saveFDOtherDataResponse(getRatesRequest)
val response = mainRepository.saveFDOtherDataResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
@ -29,33 +29,33 @@ class StepFourBajajFDViewModel(private val mainRepository: MainRepository) : Vie
}
fun getFDDetails(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun getFDDetails(getRatesRequest: GetRatesRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.getFDDetailsResponse(getRatesRequest)
val response = mainRepository.getFDDetailsResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
fun updateFDPaymentStatus(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun updateFDPaymentStatus(getRatesRequest: GetRatesRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.updateFDPaymentStatusResponse(getRatesRequest)
val response = mainRepository.updateFDPaymentStatusResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
fun finaliseFD(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun finaliseFD(getRatesRequest: GetRatesRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.finaliseFDResponse(getRatesRequest)
val response = mainRepository.finaliseFDResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
fun finaliseKYC(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun finaliseKYC(getRatesRequest: GetRatesRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.finaliseKYCResponse(getRatesRequest)
val response = mainRepository.finaliseKYCResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
fun paymentReQuery(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun paymentReQuery(getRatesRequest: GetRatesRequest, token: String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.paymentReQueryResponse(getRatesRequest)
val response = mainRepository.paymentReQueryResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
}

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

@ -4,28 +4,27 @@ 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.Constants.Companion.token
import com.nivesh.production.bajajfd.util.Resource
import kotlinx.coroutines.launch
import okhttp3.RequestBody
class StepOneBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() {
// TODO: Implement the ViewModel
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
val getMaturityAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun getRates(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun getRates(getRatesRequest: GetRatesRequest, token: String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.getRatesResponse(getRatesRequest)
val response = mainRepository.getRatesResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
fun getMaturityAmount(requestBody: GetMaturityAmountRequest) = viewModelScope.launch {
getMaturityAmountMutableData.postValue(Resource.Loading())
val response = mainRepository.createCalculateFDMaturityAmount(requestBody)
val response = mainRepository.createCalculateFDMaturityAmount(requestBody, token)
getMaturityAmountMutableData.postValue(handleRatesResponse(response))
}


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

@ -11,9 +11,9 @@ class StepThreeBajajFDViewModel(private val mainRepository: MainRepository) : Vi
private val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun documentsUpload(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun documentsUpload(getRatesRequest: GetRatesRequest, token: String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.documentsUploadResponse(getRatesRequest)
val response = mainRepository.documentsUploadResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}


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

@ -17,9 +17,9 @@ class StepTwoBajajFDViewModel(private val mainRepository: MainRepository) : View
val getPanCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData()
fun checkFDKYC(getRatesRequest: GetRatesRequest) = viewModelScope.launch {
fun checkFDKYC(getRatesRequest: GetRatesRequest, token : String) = viewModelScope.launch {
getRatesMutableData.postValue(Resource.Loading())
val response = mainRepository.checkFDKYCResponse(getRatesRequest)
val response = mainRepository.checkFDKYCResponse(getRatesRequest, token)
getRatesMutableData.postValue(handleRatesResponse(response))
}
@ -39,9 +39,9 @@ class StepTwoBajajFDViewModel(private val mainRepository: MainRepository) : View
// getRatesMutableData.postValue(handleRatesResponse(response))
// }
fun panCheck(panCheck: PanCheckRequest) = viewModelScope.launch {
fun panCheck(panCheck: PanCheckRequest, token: String) = viewModelScope.launch {
getPanCheckMutableData.postValue(Resource.Loading())
val response = mainRepository.panCheck(panCheck)
val response = mainRepository.panCheck(panCheck, token)
getPanCheckMutableData.postValue(handleRatesResponse(response))
}

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

@ -5,179 +5,174 @@
android:id="@+id/constraintLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="@dimen/margin_10"
android:background="@color/greyColor4"
android:background="@color/NiveshColorAppBg"
tools:context="com.nivesh.production.bajajfd.ui.fragment.StepFiveBajajFDFragment">
<LinearLayout
<androidx.core.widget.NestedScrollView
android:id="@+id/linearLayoutTwo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:layout_marginBottom="@dimen/margin_70"
android:background="@color/NiveshColorAppBg"
android:fillViewport="true"
android:orientation="vertical"
app:layout_constraintBottom_toTopOf="@+id/btnNext"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.card.MaterialCardView
android:id="@+id/cardViewOne"
style="@style/CustomCardViewTopStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/margin_5"
android:layout_marginRight="@dimen/margin_5"
android:padding="@dimen/margin_10">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_marginBottom="12dp"
android:background="@color/white"
android:layout_marginStart="@dimen/margin_5"
android:padding="@dimen/margin_5"
app:layout_constraintBottom_toTopOf="@+id/tvCongrats"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="1.0">
<ImageView
android:id="@+id/logo"
android:layout_width="@dimen/margin_150"
android:layout_height="18dp"
android:contentDescription="@string/contentDescription"
android:src="@drawable/bajaj_logo"
app:layout_constraintBottom_toTopOf="@+id/tvFdRating"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tvFdRating"
style="@style/regularStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/schemeRating"
android:textColor="@color/greyColor2"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/logo"
app:layout_constraintVertical_bias="0.0" />
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.card.MaterialCardView
android:id="@+id/cardViewTwo"
style="@style/CustomCardViewBottomStyle"
style="@style/CustomCardViewStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/margin_5"
android:layout_marginRight="@dimen/margin_5"
android:layout_marginBottom="@dimen/margin_5"
android:foreground="?android:attr/selectableItemBackground"
android:padding="@dimen/margin_10"
app:cardBackgroundColor="@color/greyColor4"
app:layout_constraintBottom_toBottomOf="parent"
app:cardElevation="@dimen/margin_1"
app:cardUseCompatPadding="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/cardViewOne"
app:layout_constraintVertical_bias="0.0">
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/margin_10"
app:layout_constraintBottom_toBottomOf="parent">
<TextView
android:id="@+id/tvCongrats"
style="@style/semiBoldStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:text="@string/congratulations"
android:textColor="@color/black"
android:textSize="@dimen/text_size_17"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.437"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tvSuccessMessage"
style="@style/regularStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="@string/transactionIsSuccessful"
android:textColor="@color/black"
android:textSize="@dimen/text_size_16"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.419"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tvCongrats" />
<TextView
android:id="@+id/tvSuccessMsgDetail"
style="@style/regularStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center"
android:text="@string/certificateOnEmail"
android:textColor="@color/black"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.393"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tvSuccessMessage" />
android:layout_height="match_parent"
android:paddingBottom="@dimen/margin_10">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/topLayout"
android:layout_width="match_parent"
android:layout_height="@dimen/margin_70"
android:layout_marginStart="@dimen/margin_5"
android:layout_marginBottom="@dimen/margin_12"
android:background="@color/white"
android:padding="@dimen/margin_5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/logo"
android:layout_width="@dimen/margin_150"
android:layout_height="18dp"
android:contentDescription="@string/contentDescription"
android:src="@drawable/bajaj_logo"
app:layout_constraintBottom_toTopOf="@+id/tvFdRating"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tvFdRating"
style="@style/regularStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/schemeRating"
android:textColor="@color/greyColor2"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/logo"
app:layout_constraintVertical_bias="0.0" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_15"
android:background="@color/greyColor4"
android:paddingBottom="@dimen/margin_10"
app:layout_constraintTop_toBottomOf="@+id/topLayout">
<TextView
android:id="@+id/tvCongrats"
style="@style/semiBoldStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:text="@string/congratulations"
android:textColor="@color/black"
android:textSize="@dimen/text_size_17"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.437"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tvSuccessMessage"
style="@style/regularStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="@string/transactionIsSuccessful"
android:textColor="@color/black"
android:textSize="@dimen/text_size_16"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.419"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tvCongrats" />
<TextView
android:id="@+id/tvSuccessMsgDetail"
style="@style/regularStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center"
android:text="@string/certificateOnEmail"
android:textColor="@color/black"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.393"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tvSuccessMessage" />
</androidx.constraintlayout.widget.ConstraintLayout>
<!-- </com.google.android.material.card.MaterialCardView>-->
<include
android:id="@+id/fragmentStepFail"
layout="@layout/fragment_step_fail"
android:visibility="gone" />
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
<include
android:id="@+id/fragmentStepFail"
layout="@layout/fragment_step_fail"
android:visibility="gone" />
</androidx.core.widget.NestedScrollView>
</LinearLayout>
<TextView
android:id="@+id/tvDownloadInvoice"
style="@style/semiBoldStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_20"
android:backgroundTint="@color/blue"
android:text="@string/downloadInvoice"
android:textColor="@color/blue"
android:textSize="@dimen/text_size_16"
app:layout_constraintBottom_toBottomOf="@+id/btnNext"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.152"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/btnNext" />
app:layout_constraintTop_toBottomOf="@+id/linearLayoutTwo"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/btnNext"
app:layout_constraintStart_toStartOf="parent" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="16dp"
android:layout_marginTop="@dimen/margin_10"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/colorPrimary"
android:text="@string/viewOrder"
android:textColor="@color/white"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.545"
app:layout_constraintStart_toEndOf="@+id/tvDownloadInvoice"
app:layout_constraintTop_toBottomOf="@+id/linearLayoutTwo"
app:layout_constraintVertical_bias="0.951" />
app:layout_constraintStart_toEndOf="@+id/tvDownloadInvoice" />
<com.google.android.material.button.MaterialButton
android:id="@+id/tvRetry"


+ 11
- 13
app/src/main/res/layout/fragment_bajajfd_step_four.xml View File

@ -13,12 +13,12 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="70dp"
android:background="@color/transparent"
android:background="@color/NiveshColorAppBg"
android:fillViewport="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintBottom_toTopOf="@+id/btnNext"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/btnNext">
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.card.MaterialCardView
style="@style/CustomCardViewStyle"
@ -314,32 +314,30 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:layout_marginTop="@dimen/margin_15"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/blue"
android:text="@string/back"
android:textColor="@color/white"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/btnNext"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintVertical_bias="0.812" />
app:layout_constraintStart_toStartOf="parent"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/btnNext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="16dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:layout_marginBottom="@dimen/margin_15"
android:layout_marginTop="@dimen/margin_10"
android:backgroundTint="@color/colorPrimary"
android:text="@string/viewOrder"
android:textSize="@dimen/text_size_14"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/btnBack"
app:layout_constraintTop_toBottomOf="@+id/scrollView"
app:layout_constraintVertical_bias="0.812" />
app:layout_constraintStart_toEndOf="@+id/btnBack" />
<TextView
android:id="@+id/tvOnceClick"


+ 5
- 4
app/src/main/res/layout/fragment_bajajfd_step_three.xml View File

@ -12,7 +12,7 @@
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="@dimen/margin_80"
android:layout_marginBottom="@dimen/margin_70"
android:background="@color/NiveshColorAppBg"
android:fillViewport="true"
android:visibility="visible"
@ -251,11 +251,12 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_20"
android:layout_marginTop="@dimen/margin_15"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/blue"
android:text="@string/back"
android:textColor="@color/white"
android:textSize="@dimen/text_size_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/btnNext"
app:layout_constraintStart_toStartOf="parent"/>
@ -265,11 +266,11 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="@dimen/margin_16"
android:layout_marginTop="@dimen/margin_20"
android:layout_marginBottom="@dimen/margin_15"
android:layout_marginTop="@dimen/margin_10"
android:backgroundTint="@color/colorPrimary"
android:text="@string/next"
android:textSize="@dimen/text_size_14"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"


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

@ -13,7 +13,7 @@
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="@dimen/margin_80"
android:layout_marginBottom="@dimen/margin_70"
android:background="@color/NiveshColorAppBg"
android:fillViewport="true"
android:visibility="visible"
@ -968,7 +968,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="@dimen/margin_20"
android:layout_marginTop="@dimen/margin_15"
android:layout_marginBottom="@dimen/margin_15"
android:backgroundTint="@color/blue"
android:text="@string/back"


Loading…
Cancel
Save

Powered by TurnKey Linux.