From 556be61fffe3a03cf9d09d8d36fa96097c60e4b6 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Wed, 19 Jan 2022 21:28:15 +0100 Subject: [PATCH] Bugfix/fix unresolved account names in reports (#636) * Fix unresolved account names * Update changelog --- CHANGELOG.md | 6 +++++ .../current-investment.ts | 12 +++++----- .../initial-investment.ts | 22 +++++++++---------- 3 files changed, 23 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 40b44b9d2..c1ff0c73d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased + +### Fixed + +- Fixed the unresolved account names in the _X-ray_ section + ## 1.104.0 - 16.01.2022 ### Fixed diff --git a/apps/api/src/models/rules/account-cluster-risk/current-investment.ts b/apps/api/src/models/rules/account-cluster-risk/current-investment.ts index bff51aabe..3893efd44 100644 --- a/apps/api/src/models/rules/account-cluster-risk/current-investment.ts +++ b/apps/api/src/models/rules/account-cluster-risk/current-investment.ts @@ -25,17 +25,17 @@ export class AccountClusterRiskCurrentInvestment extends Rule { }; } = {}; - for (const account of Object.keys(this.accounts)) { - accounts[account] = { - name: account, - investment: this.accounts[account].current + for (const [accountId, account] of Object.entries(this.accounts)) { + accounts[accountId] = { + name: account.name, + investment: account.current }; } let maxItem; let totalInvestment = 0; - Object.values(accounts).forEach((account) => { + for (const account of Object.values(accounts)) { if (!maxItem) { maxItem = account; } @@ -47,7 +47,7 @@ export class AccountClusterRiskCurrentInvestment extends Rule { if (account.investment > maxItem?.investment) { maxItem = account; } - }); + } const maxInvestmentRatio = maxItem.investment / totalInvestment; diff --git a/apps/api/src/models/rules/account-cluster-risk/initial-investment.ts b/apps/api/src/models/rules/account-cluster-risk/initial-investment.ts index 13da575dd..0eed098cc 100644 --- a/apps/api/src/models/rules/account-cluster-risk/initial-investment.ts +++ b/apps/api/src/models/rules/account-cluster-risk/initial-investment.ts @@ -19,35 +19,35 @@ export class AccountClusterRiskInitialInvestment extends Rule { } public evaluate(ruleSettings?: Settings) { - const platforms: { + const accounts: { [symbol: string]: Pick & { investment: number; }; } = {}; - for (const account of Object.keys(this.accounts)) { - platforms[account] = { - name: account, - investment: this.accounts[account].original + for (const [accountId, account] of Object.entries(this.accounts)) { + accounts[accountId] = { + name: account.name, + investment: account.original }; } let maxItem; let totalInvestment = 0; - Object.values(platforms).forEach((platform) => { + for (const account of Object.values(accounts)) { if (!maxItem) { - maxItem = platform; + maxItem = account; } // Calculate total investment - totalInvestment += platform.investment; + totalInvestment += account.investment; // Find maximum - if (platform.investment > maxItem?.investment) { - maxItem = platform; + if (account.investment > maxItem?.investment) { + maxItem = account; } - }); + } const maxInvestmentRatio = maxItem.investment / totalInvestment;