fix: Deduplicate accounts.

This commit is contained in:
Elisiário Couto
2024-02-29 17:15:52 +00:00
parent d8fde49da4
commit facf6ac94e
4 changed files with 8 additions and 9 deletions

View File

@@ -13,9 +13,9 @@ def balances(ctx: click.Context):
""" """
res = get(ctx, "/requisitions/") res = get(ctx, "/requisitions/")
accounts = [] accounts = set()
for r in res.get("results", []): for r in res.get("results", []):
accounts += r.get("accounts", []) accounts.update(r.get("accounts", []))
all_balances = [] all_balances = []
for account in accounts: for account in accounts:

View File

@@ -15,7 +15,7 @@ def status(ctx: click.Context):
res = get(ctx, "/requisitions/") res = get(ctx, "/requisitions/")
requisitions = [] requisitions = []
accounts = [] accounts = set()
for r in res["results"]: for r in res["results"]:
requisitions.append( requisitions.append(
{ {
@@ -24,7 +24,7 @@ def status(ctx: click.Context):
"Created at": datefmt(r["created"]), "Created at": datefmt(r["created"]),
} }
) )
accounts += r.get("accounts", []) accounts.update(r.get("accounts", []))
info("Banks") info("Banks")
print_table(requisitions) print_table(requisitions)

View File

@@ -104,10 +104,9 @@ def sync(ctx: click.Context):
""" """
info("Getting accounts details") info("Getting accounts details")
res = get(ctx, "/requisitions/") res = get(ctx, "/requisitions/")
accounts = [] accounts = set()
for r in res.get("results", []): for r in res.get("results", []):
accounts += r.get("accounts", []) accounts.update(r.get("accounts", []))
accounts = list(set(accounts))
info(f"Syncing transactions for {len(accounts)} accounts") info(f"Syncing transactions for {len(accounts)} accounts")

View File

@@ -41,9 +41,9 @@ def transactions(ctx: click.Context, account: str):
print_transactions(ctx, account_info, account_transactions) print_transactions(ctx, account_info, account_transactions)
else: else:
res = get(ctx, "/requisitions/") res = get(ctx, "/requisitions/")
accounts = [] accounts = set()
for r in res["results"]: for r in res["results"]:
accounts += r.get("accounts", []) accounts.update(r.get("accounts", []))
for account in accounts: for account in accounts:
account_details = get(ctx, f"/accounts/{account}") account_details = get(ctx, f"/accounts/{account}")
account_transactions = get(ctx, f"/accounts/{account}/transactions/").get( account_transactions = get(ctx, f"/accounts/{account}/transactions/").get(