From b9b325d2c8265448bde198fe2dd2ba0b252bfd01 Mon Sep 17 00:00:00 2001 From: yksolanki9 Date: Wed, 4 Jan 2023 20:25:49 +0530 Subject: [PATCH] Update savingsRate based on group --- .../investment-chart/investment-chart.component.ts | 9 +++++++++ .../pages/portfolio/analysis/analysis-page.component.ts | 9 +++++++++ .../src/app/pages/portfolio/analysis/analysis-page.html | 4 ++-- .../common/src/lib/interfaces/user-settings.interface.ts | 1 + 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/apps/client/src/app/components/investment-chart/investment-chart.component.ts b/apps/client/src/app/components/investment-chart/investment-chart.component.ts index 249b9cdb6..bfce434e8 100644 --- a/apps/client/src/app/components/investment-chart/investment-chart.component.ts +++ b/apps/client/src/app/components/investment-chart/investment-chart.component.ts @@ -198,6 +198,15 @@ export class InvestmentChartComponent implements OnChanges, OnDestroy { this.chart.options.scales.x.min = this.daysInMarket ? subDays(new Date(), this.daysInMarket).toISOString() : undefined; + + if ( + this.savingsRate && + this.chart.options.plugins.annotation.annotations.savingsRate + ) { + this.chart.options.plugins.annotation.annotations.savingsRate.value = + this.savingsRate; + } + this.chart.update(); } else { this.chart = new Chart(this.chartCanvas.nativeElement, { diff --git a/apps/client/src/app/pages/portfolio/analysis/analysis-page.component.ts b/apps/client/src/app/pages/portfolio/analysis/analysis-page.component.ts index c1294bda7..2f2b7ae47 100644 --- a/apps/client/src/app/pages/portfolio/analysis/analysis-page.component.ts +++ b/apps/client/src/app/pages/portfolio/analysis/analysis-page.component.ts @@ -92,6 +92,15 @@ export class AnalysisPageComponent implements OnDestroy, OnInit { }); } + get savingsRate() { + const savingsRate = + this.hasImpersonationId || this.user.settings.isRestrictedView + ? undefined + : this.user?.settings?.savingsRate; + + return this.mode === 'year' ? savingsRate * 12 : savingsRate; + } + public ngOnInit() { this.deviceType = this.deviceService.getDeviceInfo().deviceType; diff --git a/apps/client/src/app/pages/portfolio/analysis/analysis-page.html b/apps/client/src/app/pages/portfolio/analysis/analysis-page.html index b830727fa..20cf9e0d0 100644 --- a/apps/client/src/app/pages/portfolio/analysis/analysis-page.html +++ b/apps/client/src/app/pages/portfolio/analysis/analysis-page.html @@ -180,15 +180,15 @@
diff --git a/libs/common/src/lib/interfaces/user-settings.interface.ts b/libs/common/src/lib/interfaces/user-settings.interface.ts index f39ba20eb..1dedc6277 100644 --- a/libs/common/src/lib/interfaces/user-settings.interface.ts +++ b/libs/common/src/lib/interfaces/user-settings.interface.ts @@ -10,5 +10,6 @@ export interface UserSettings { isRestrictedView?: boolean; language?: string; locale?: string; + savingsRate?: number; viewMode?: ViewMode; }