Browse Source

added paymentrequery api after trasaction

PankajBranch
Hemant Khadase 2 years ago
parent
commit
9f7f6a4b40
8 changed files with 98 additions and 25 deletions
  1. +1
    -1
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/ApiInterface.kt
  2. +6
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryRequest.kt
  3. +5
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryResponse.kt
  4. +8
    -0
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXXX.kt
  5. +2
    -2
      app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt
  6. +61
    -22
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  7. +4
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt
  8. +11
    -0
      app/src/main/java/com/nivesh/production/bajajfd/viewModel/BajajFDViewModel.kt

+ 1
- 1
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>


+ 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
)

+ 2
- 2
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)


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

@ -1,15 +1,12 @@
package com.nivesh.production.bajajfd.ui.activity
import android.annotation.SuppressLint
import android.app.Dialog
import android.graphics.Bitmap
import android.graphics.drawable.Drawable
import android.os.Bundle
import android.util.Log
import android.view.WindowManager
import android.webkit.WebView
import android.webkit.WebViewClient
import android.widget.TextView
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import androidx.viewpager.widget.ViewPager
@ -88,8 +85,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) {
@ -106,7 +102,7 @@ class BajajFdMainActivity : BaseActivity() {
stepCount = stepsCountResponse.Response.StepsCount
getClientDetailsApi(stepsCountResponse.Response.StepsCount)
}
650 -> refreshToken(fdStepsCount)
650 -> refreshToken("")
else -> {
showDialogValidation(
this@BajajFdMainActivity,
@ -132,10 +128,63 @@ class BajajFdMainActivity : BaseActivity() {
}
}
private fun refreshToken(fdStepsCount: FDStepsCountRequest) {
private fun paymentReQueryApi() {
if (Common.isNetworkAvailable(this)) {
val paymentReQueryRequest = PaymentReQueryRequest()
paymentReQueryRequest.UniqueId = ""
paymentReQueryRequest.NiveshClientCode =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
// client code =8872 /60476
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()
}
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 -> {
}
}
}
}
}
private fun refreshToken(fdStepsCount: String) {
}
private fun getClientDetailsApi(stepsCount: Int) {
if (Common.isNetworkAvailable(this@BajajFdMainActivity)) {
@ -143,10 +192,7 @@ 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 = ""
@ -206,7 +252,6 @@ class BajajFdMainActivity : BaseActivity() {
}
}
private fun setViewPager(stepsCount: Int) {
// steps setting
setBackground(selectedShape(), defaultShape(), defaultShape(), defaultShape())
@ -352,7 +397,6 @@ class BajajFdMainActivity : BaseActivity() {
}
// set background for selected/ default step
private fun setBackground(
drawable: Drawable?,
@ -367,13 +411,13 @@ 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)
@ -381,7 +425,7 @@ class BajajFdMainActivity : BaseActivity() {
// 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
@ -389,7 +433,7 @@ class BajajFdMainActivity : BaseActivity() {
}
// step 4 response
fun stepFourApi(payUrl: String, value: String) {
fun stepFourApi(payUrl: String, value: String) {
paymentDialog(payUrl, value)
}
@ -431,15 +475,10 @@ class BajajFdMainActivity : BaseActivity() {
override fun onPageStarted(view: WebView, url: String, favicon: Bitmap?) {
super.onPageStarted(view, url, favicon)
Log.e("onPageStarted", "-->$url")
if (url.isNotEmpty() && url.contains("CustomerPaymentResponse")) {
}
}
override fun onPageFinished(view: WebView, url: String) {
super.onPageFinished(view, url)
}
}
}

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

@ -38,6 +38,10 @@ class StepFiveBajajFDFragment : Fragment() {
return root
}
fun getData(){
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
stepFiveBajajFDViewModel = ViewModelProvider(


+ 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))
}
}
}

Loading…
Cancel
Save

Powered by TurnKey Linux.