fix(sync): Continue on account deactivation.

This commit is contained in:
Elisiário Couto
2024-07-05 10:54:24 +01:00
parent 6f5b5dc679
commit 758a3a2257

View File

@@ -41,30 +41,28 @@ def sync(ctx: click.Context):
info(f"Syncing balances for {len(accounts)} accounts") info(f"Syncing balances for {len(accounts)} accounts")
for account in accounts: for account in accounts:
account_details = get(ctx, f"/accounts/{account}") try:
account_balances = get(ctx, f"/accounts/{account}/balances/").get( account_details = get(ctx, f"/accounts/{account}")
"balances", [] account_balances = get(ctx, f"/accounts/{account}/balances/").get(
) "balances", []
for balance in account_balances: )
balance_amount = balance["balanceAmount"] for balance in account_balances:
amount = round(float(balance_amount["amount"]), 2) balance_amount = balance["balanceAmount"]
balance_document = { amount = round(float(balance_amount["amount"]), 2)
"account_id": account, balance_document = {
"bank": account_details["institution_id"], "account_id": account,
"status": account_details["status"], "bank": account_details["institution_id"],
"iban": account_details.get("iban", "N/A"), "status": account_details["status"],
"amount": amount, "iban": account_details.get("iban", "N/A"),
"currency": balance_amount["currency"], "amount": amount,
"type": balance["balanceType"], "currency": balance_amount["currency"],
"timestamp": datetime.datetime.now().timestamp(), "type": balance["balanceType"],
} "timestamp": datetime.datetime.now().timestamp(),
try: }
persist_balance(ctx, account, balance_document) persist_balance(ctx, account, balance_document)
except Exception as e: except Exception as e:
error( error(f"[{account}] Error: Sync failed, skipping account, exception: {e}")
f"[{account}] Error: Sync failed, skipping account, exception: {e}" continue
)
continue
info(f"Syncing transactions for {len(accounts)} accounts") info(f"Syncing transactions for {len(accounts)} accounts")