Bind specific invoice when paid via Banklink / EveryPay

Fix styling issues

Move redundant logic to shared base
This commit is contained in:
Karl Erik Õunapuu 2020-01-31 12:56:58 +02:00
parent cbbfbae99e
commit 0cf2ff92a3
7 changed files with 50 additions and 14 deletions

View file

@ -26,6 +26,32 @@ module PaymentOrders
transaction.save!
end
def compose_or_find_transaction
transaction = BankTransaction.find_by(base_transaction_params)
# Transaction already autobinded (possibly) invalid invoice
if transaction.binded?
Rails.logger.info("Transaction #{transaction.id} is already binded")
Rails.logger.info('Creating new BankTransaction record.')
transaction = new_base_transaction
end
transaction
end
def new_base_transaction
BankTransaction.new(base_transaction_params)
end
def base_transaction_params
{
description: invoice.order,
currency: invoice.currency,
iban: invoice.seller_iban,
}
end
def form_url
ENV["payments_#{type}_url"]
end