summaryrefslogtreecommitdiff
path: root/ledger_process.py
diff options
context:
space:
mode:
authoruvok2025-04-18 18:13:42 +0200
committeruvok2025-04-18 18:13:42 +0200
commitd90a4c73483b67d5f47305a3f4e2df8f9c1d9412 (patch)
tree472f20f1d1683b99185d27e7b0f3330972331013 /ledger_process.py
parent4585acd7035ba3b228fe06b8fb5bb3a3eb26c679 (diff)
Continue implement deposit
Diffstat (limited to 'ledger_process.py')
-rw-r--r--ledger_process.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/ledger_process.py b/ledger_process.py
index 8f766be..d5199a6 100644
--- a/ledger_process.py
+++ b/ledger_process.py
@@ -48,7 +48,7 @@ class LedgerProcess:
assert len(actions) == 1
self._process_withdrawal(action)
- def _process_deposit(self, action):
+ def _process_deposit(self, action: LedgerAction):
assert action.amount > 0
assert action.fee >= 0
@@ -56,11 +56,18 @@ class LedgerProcess:
self.external_wallet.setdefault(currency, FIFOQueue())
self.fifo_queues.setdefault(currency, FIFOQueue())
- self.external_wallet[currency].remove(lambda t: t.amount == action.amount)
+ t = self.external_wallet[currency].remove(lambda t: t.amount == action.amount)
+
+ # TODO: Fee handling
+ assert action.fee == 0
+ wallet = self.fifo_queues[currency]
+ wallet.add_trade(t)
+
+ # TODO: Sort
logger.error("Don't know how do handle deposits yet.")
- def _process_withdrawal(self, action):
+ def _process_withdrawal(self, action: LedgerAction):
assert action.amount < 0
assert action.fee >= 0