diff --git a/apps/api/src/app/portfolio/portfolio.controller.ts b/apps/api/src/app/portfolio/portfolio.controller.ts index 79d0f8259..d20e3bf87 100644 --- a/apps/api/src/app/portfolio/portfolio.controller.ts +++ b/apps/api/src/app/portfolio/portfolio.controller.ts @@ -137,7 +137,7 @@ export class PortfolioController { } for (const [name, { valueInBaseCurrency }] of Object.entries(accounts)) { - accounts[name].valueInBaseCurrency = valueInBaseCurrency / totalValue; + accounts[name].valueInPercentage = valueInBaseCurrency / totalValue; } } diff --git a/apps/client/src/app/pages/portfolio/allocations/allocations-page.component.ts b/apps/client/src/app/pages/portfolio/allocations/allocations-page.component.ts index e7e771f36..6b5baa3ef 100644 --- a/apps/client/src/app/pages/portfolio/allocations/allocations-page.component.ts +++ b/apps/client/src/app/pages/portfolio/allocations/allocations-page.component.ts @@ -249,13 +249,22 @@ export class AllocationsPageComponent implements OnDestroy, OnInit { public initializeAnalysisData() { this.initialize(); - for (const [id, { name, valueInBaseCurrency }] of Object.entries( - this.portfolioDetails.accounts - )) { + for (const [ + id, + { name, valueInBaseCurrency, valueInPercentage } + ] of Object.entries(this.portfolioDetails.accounts)) { + let value = 0; + + if (this.hasImpersonationId) { + value = valueInPercentage; + } else { + value = valueInBaseCurrency; + } + this.accounts[id] = { id, name, - value: valueInBaseCurrency + value }; } diff --git a/libs/common/src/lib/interfaces/portfolio-details.interface.ts b/libs/common/src/lib/interfaces/portfolio-details.interface.ts index 56fadf9c5..2fd07dc71 100644 --- a/libs/common/src/lib/interfaces/portfolio-details.interface.ts +++ b/libs/common/src/lib/interfaces/portfolio-details.interface.ts @@ -10,6 +10,7 @@ export interface PortfolioDetails { currency: string; name: string; valueInBaseCurrency: number; + valueInPercentage?: number; }; }; filteredValueInBaseCurrency?: number;