From 9769498c9d204a1998396a677f4c5b72276e093e Mon Sep 17 00:00:00 2001 From: Luke Van Seters Date: Mon, 30 Aug 2021 13:49:40 -0400 Subject: [PATCH] Add crud for miner payments --- mev_inspect/crud/miner_payments.py | 31 ++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 mev_inspect/crud/miner_payments.py diff --git a/mev_inspect/crud/miner_payments.py b/mev_inspect/crud/miner_payments.py new file mode 100644 index 0000000..e82bf96 --- /dev/null +++ b/mev_inspect/crud/miner_payments.py @@ -0,0 +1,31 @@ +import json +from typing import List + +from mev_inspect.models.miner_payments import MinerPaymentModel +from mev_inspect.schemas.miner_payments import MinerPayment + + +def delete_miner_payments_for_block( + db_session, + block_number: int, +) -> None: + ( + db_session.query(MinerPaymentModel) + .filter(MinerPaymentModel.block_number == block_number) + .delete() + ) + + db_session.commit() + + +def write_miner_payments( + db_session, + miner_payments: List[MinerPayment], +) -> None: + models = [ + MinerPaymentModel(**json.loads(miner_payment.json())) + for miner_payment in miner_payments + ] + + db_session.bulk_save_objects(models) + db_session.commit()