diff options
Diffstat (limited to 'merchant-terminal/src/main/java/net/taler/merchantpos/payment')
-rw-r--r-- | merchant-terminal/src/main/java/net/taler/merchantpos/payment/PaymentManager.kt | 9 | ||||
-rw-r--r-- | merchant-terminal/src/main/java/net/taler/merchantpos/payment/ProcessPaymentFragment.kt | 5 |
2 files changed, 13 insertions, 1 deletions
diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/payment/PaymentManager.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/payment/PaymentManager.kt index fc4f642..bc1e35f 100644 --- a/merchant-terminal/src/main/java/net/taler/merchantpos/payment/PaymentManager.kt +++ b/merchant-terminal/src/main/java/net/taler/merchantpos/payment/PaymentManager.kt @@ -25,13 +25,16 @@ import androidx.lifecycle.MutableLiveData import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch +import net.taler.common.Duration import net.taler.merchantlib.CheckPaymentResponse import net.taler.merchantlib.MerchantApi +import net.taler.merchantlib.PostOrderRequest import net.taler.merchantlib.PostOrderResponse import net.taler.merchantpos.MainActivity.Companion.TAG import net.taler.merchantpos.R import net.taler.merchantpos.config.ConfigManager import net.taler.merchantpos.order.Order +import java.util.concurrent.TimeUnit.HOURS import java.util.concurrent.TimeUnit.MINUTES import java.util.concurrent.TimeUnit.SECONDS @@ -65,7 +68,11 @@ class PaymentManager( val merchantConfig = configManager.merchantConfig!! mPayment.value = Payment(order, order.summary, configManager.currency!!) scope.launch(Dispatchers.IO) { - val response = api.postOrder(merchantConfig, order.toContractTerms()) + val request = PostOrderRequest( + contractTerms = order.toContractTerms(), + refundDelay = Duration(HOURS.toMillis(1)) + ) + val response = api.postOrder(merchantConfig, request) response.handle(::onNetworkError, ::onOrderCreated) } } diff --git a/merchant-terminal/src/main/java/net/taler/merchantpos/payment/ProcessPaymentFragment.kt b/merchant-terminal/src/main/java/net/taler/merchantpos/payment/ProcessPaymentFragment.kt index 5278a03..27ef366 100644 --- a/merchant-terminal/src/main/java/net/taler/merchantpos/payment/ProcessPaymentFragment.kt +++ b/merchant-terminal/src/main/java/net/taler/merchantpos/payment/ProcessPaymentFragment.kt @@ -60,6 +60,11 @@ class ProcessPaymentFragment : Fragment() { } } + override fun onDestroy() { + super.onDestroy() + paymentManager.cancelPayment(getString(R.string.error_cancelled)) + } + private fun onPaymentStateChanged(payment: Payment) { if (payment.error != null) { topSnackbar(requireView(), payment.error, LENGTH_LONG) |