Skip to content

Commit 63ec975

Browse files
committed
feat: Admin.mark_credit_as_paid/1
1 parent f99af62 commit 63ec975

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

lib/algora/admin/admin.ex

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -147,18 +147,25 @@ defmodule Algora.Admin do
147147
end
148148
end
149149

150-
def mark_as_paid(tx_id) do
150+
def mark_as_paid(transfer_id) do
151151
Repo.transact(fn ->
152-
with {:ok, transfer} <- Repo.fetch_by(Transaction, id: tx_id, type: :transfer),
152+
with {:ok, transfer} <- Repo.fetch_by(Transaction, id: transfer_id, type: :transfer),
153153
{:ok, _transfer} <-
154154
transfer
155155
|> change(%{status: :succeeded, succeeded_at: DateTime.utc_now()})
156156
|> Repo.update() do
157-
notify_transfer(tx_id)
157+
notify_transfer(transfer_id)
158158
end
159159
end)
160160
end
161161

162+
def mark_credit_as_paid(credit_id) do
163+
with {:ok, credit} <- Repo.fetch_by(Transaction, id: credit_id, type: :credit),
164+
{:ok, transfer} <- Payments.fetch_or_create_transfer(credit) do
165+
mark_as_paid(transfer.id)
166+
end
167+
end
168+
162169
def release_payment(tx_id) do
163170
Repo.transact(fn ->
164171
{_, [tx]} =

0 commit comments

Comments
 (0)