parent
888674b776
commit
ac7124a7e6
|
@ -36,6 +36,12 @@ interface CanApi {
|
|||
@Header("Authorization") authHeader: String
|
||||
): Single<ApiResponse<Any>>
|
||||
|
||||
@POST("/charge/verify/hecto")
|
||||
fun verifyChargeHecto(
|
||||
@Body request: VerifyRequest,
|
||||
@Header("Authorization") authHeader: String
|
||||
): Single<ApiResponse<Any>>
|
||||
|
||||
@GET("/can")
|
||||
fun getCans(
|
||||
@Header("Authorization") authHeader: String
|
||||
|
|
|
@ -22,6 +22,11 @@ class CanRepository(private val api: CanApi) {
|
|||
token: String
|
||||
) = api.verifyCharge(request, authHeader = token)
|
||||
|
||||
fun verifyHecto(
|
||||
request: VerifyRequest,
|
||||
token: String
|
||||
) = api.verifyChargeHecto(request, authHeader = token)
|
||||
|
||||
fun getCans(token: String) = api.getCans(authHeader = token)
|
||||
|
||||
fun getCanStatus(token: String) = api.getCanStatus(authHeader = token)
|
||||
|
|
|
@ -219,22 +219,42 @@ class CanPaymentActivity : BaseActivity<ActivityCanPaymentBinding>(
|
|||
val bootpayResponse = Gson().fromJson(data, BootpayResponse::class.java)
|
||||
val request = VerifyRequest(bootpayResponse.data.receiptId, bootpayResponse.data.orderId)
|
||||
|
||||
viewModel.verify(
|
||||
request,
|
||||
onSuccess = {
|
||||
Toast.makeText(applicationContext, "캔이 충전되었습니다", Toast.LENGTH_LONG).show()
|
||||
SharedPreferenceManager.can += (canResponse!!.rewardCan + canResponse!!.can)
|
||||
if (gotoPrevPage) {
|
||||
setResult(RESULT_OK)
|
||||
} else {
|
||||
val intent = Intent(applicationContext, CanStatusActivity::class.java)
|
||||
startActivity(intent)
|
||||
if (viewModel.paymentMethodLiveData.value!! == PaymentMethod.PHONE) {
|
||||
viewModel.verify(
|
||||
request,
|
||||
onSuccess = {
|
||||
Toast.makeText(applicationContext, "캔이 충전되었습니다", Toast.LENGTH_LONG).show()
|
||||
SharedPreferenceManager.can += (canResponse!!.rewardCan + canResponse!!.can)
|
||||
if (gotoPrevPage) {
|
||||
setResult(RESULT_OK)
|
||||
} else {
|
||||
val intent = Intent(applicationContext, CanStatusActivity::class.java)
|
||||
startActivity(intent)
|
||||
}
|
||||
finish()
|
||||
},
|
||||
onFailure = {
|
||||
Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show()
|
||||
}
|
||||
finish()
|
||||
},
|
||||
onFailure = {
|
||||
Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show()
|
||||
}
|
||||
)
|
||||
)
|
||||
} else {
|
||||
viewModel.verifyHecto(
|
||||
request,
|
||||
onSuccess = {
|
||||
Toast.makeText(applicationContext, "캔이 충전되었습니다", Toast.LENGTH_LONG).show()
|
||||
SharedPreferenceManager.can += (canResponse!!.rewardCan + canResponse!!.can)
|
||||
if (gotoPrevPage) {
|
||||
setResult(RESULT_OK)
|
||||
} else {
|
||||
val intent = Intent(applicationContext, CanStatusActivity::class.java)
|
||||
startActivity(intent)
|
||||
}
|
||||
finish()
|
||||
},
|
||||
onFailure = {
|
||||
Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show()
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -87,6 +87,36 @@ class CanPaymentViewModel(private val repository: CanRepository) : BaseViewModel
|
|||
)
|
||||
}
|
||||
|
||||
fun verifyHecto(request: VerifyRequest, onSuccess: () -> Unit, onFailure: (String) -> Unit) {
|
||||
_isLoading.value = true
|
||||
compositeDisposable.add(
|
||||
repository.verifyHecto(
|
||||
request = request,
|
||||
"Bearer ${SharedPreferenceManager.token}"
|
||||
).subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(
|
||||
{
|
||||
_isLoading.value = false
|
||||
if (it.success) {
|
||||
onSuccess()
|
||||
} else {
|
||||
if (it.message != null) {
|
||||
onFailure(it.message)
|
||||
} else {
|
||||
onFailure("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
_isLoading.value = false
|
||||
it.message?.let { message -> Logger.e(message) }
|
||||
onFailure("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
||||
}
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
fun setPaymentMethod(paymentMethod: CanPaymentActivity.PaymentMethod) {
|
||||
_paymentMethodLiveData.value = paymentMethod
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue