parent
888674b776
commit
ac7124a7e6
|
@ -36,6 +36,12 @@ interface CanApi {
|
||||||
@Header("Authorization") authHeader: String
|
@Header("Authorization") authHeader: String
|
||||||
): Single<ApiResponse<Any>>
|
): Single<ApiResponse<Any>>
|
||||||
|
|
||||||
|
@POST("/charge/verify/hecto")
|
||||||
|
fun verifyChargeHecto(
|
||||||
|
@Body request: VerifyRequest,
|
||||||
|
@Header("Authorization") authHeader: String
|
||||||
|
): Single<ApiResponse<Any>>
|
||||||
|
|
||||||
@GET("/can")
|
@GET("/can")
|
||||||
fun getCans(
|
fun getCans(
|
||||||
@Header("Authorization") authHeader: String
|
@Header("Authorization") authHeader: String
|
||||||
|
|
|
@ -22,6 +22,11 @@ class CanRepository(private val api: CanApi) {
|
||||||
token: String
|
token: String
|
||||||
) = api.verifyCharge(request, authHeader = token)
|
) = 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 getCans(token: String) = api.getCans(authHeader = token)
|
||||||
|
|
||||||
fun getCanStatus(token: String) = api.getCanStatus(authHeader = token)
|
fun getCanStatus(token: String) = api.getCanStatus(authHeader = token)
|
||||||
|
|
|
@ -219,6 +219,7 @@ class CanPaymentActivity : BaseActivity<ActivityCanPaymentBinding>(
|
||||||
val bootpayResponse = Gson().fromJson(data, BootpayResponse::class.java)
|
val bootpayResponse = Gson().fromJson(data, BootpayResponse::class.java)
|
||||||
val request = VerifyRequest(bootpayResponse.data.receiptId, bootpayResponse.data.orderId)
|
val request = VerifyRequest(bootpayResponse.data.receiptId, bootpayResponse.data.orderId)
|
||||||
|
|
||||||
|
if (viewModel.paymentMethodLiveData.value!! == PaymentMethod.PHONE) {
|
||||||
viewModel.verify(
|
viewModel.verify(
|
||||||
request,
|
request,
|
||||||
onSuccess = {
|
onSuccess = {
|
||||||
|
@ -236,5 +237,24 @@ class CanPaymentActivity : BaseActivity<ActivityCanPaymentBinding>(
|
||||||
Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show()
|
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) {
|
fun setPaymentMethod(paymentMethod: CanPaymentActivity.PaymentMethod) {
|
||||||
_paymentMethodLiveData.value = paymentMethod
|
_paymentMethodLiveData.value = paymentMethod
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue