Updated on 2026-08-14
This commit is contained in:
parent
3b1e642150
commit
27820ec8ad
24 changed files with 356 additions and 142 deletions
|
|
@ -1,8 +1,14 @@
|
|||
package com.tangem.domain.pay.flow
|
||||
|
||||
import arrow.core.Either
|
||||
import com.tangem.domain.core.flow.FlowFetcher
|
||||
import com.tangem.domain.models.wallet.UserWalletId
|
||||
|
||||
interface PaymentAccountStatusFetcher : FlowFetcher<PaymentAccountStatusFetcher.Params> {
|
||||
|
||||
suspend operator fun invoke(userWalletId: UserWalletId): Either<Throwable, Unit> {
|
||||
return invoke(Params(userWalletId))
|
||||
}
|
||||
|
||||
data class Params(val userWalletId: UserWalletId)
|
||||
}
|
||||
|
|
@ -17,9 +17,6 @@ class SetTangemPayCardLimitUseCase(
|
|||
amount: BigDecimal,
|
||||
): Either<UniversalError, Unit> {
|
||||
return cardDetailsRepository.updateCardLimit(cardId, userWalletId, amount.toPlainString())
|
||||
.onRight {
|
||||
val params = PaymentAccountStatusFetcher.Params(userWalletId)
|
||||
paymentAccountStatusFetcher.invoke(params)
|
||||
}
|
||||
.onRight { paymentAccountStatusFetcher.invoke(userWalletId) }
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
package com.tangem.domain.pay.usecase
|
||||
|
||||
import arrow.core.Either
|
||||
import com.tangem.core.error.UniversalError
|
||||
import com.tangem.domain.models.account.CardDisplayName
|
||||
import com.tangem.domain.models.wallet.UserWalletId
|
||||
import com.tangem.domain.pay.flow.PaymentAccountStatusFetcher
|
||||
import com.tangem.domain.pay.repository.TangemPayCardDetailsRepository
|
||||
|
||||
class UpdateTangemPayCardNameUseCase(
|
||||
private val cardDetailsRepository: TangemPayCardDetailsRepository,
|
||||
private val paymentAccountStatusFetcher: PaymentAccountStatusFetcher,
|
||||
) {
|
||||
suspend operator fun invoke(
|
||||
cardId: String,
|
||||
userWalletId: UserWalletId,
|
||||
displayName: CardDisplayName,
|
||||
): Either<UniversalError, Unit> {
|
||||
return cardDetailsRepository.updateCardDisplayName(cardId, userWalletId, displayName)
|
||||
.onRight { paymentAccountStatusFetcher(userWalletId) }
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue