Browse Source

Add date range support

pull/3303/head
Thomas Kaul 1 year ago
parent
commit
158b4a1aed
  1. 2
      apps/api/src/app/portfolio/portfolio.controller.ts
  2. 3
      apps/client/src/app/components/account-detail-dialog/account-detail-dialog.component.ts
  3. 3
      apps/client/src/app/pages/portfolio/holdings/holdings-page.component.ts
  4. 11
      apps/client/src/app/services/data.service.ts

2
apps/api/src/app/portfolio/portfolio.controller.ts

@ -290,6 +290,7 @@ export class PortfolioController {
@Query('assetClasses') filterByAssetClasses?: string,
@Query('holdingType') filterByHoldingType?: string,
@Query('query') filterBySearchQuery?: string,
@Query('range') dateRange: DateRange = 'max',
@Query('tags') filterByTags?: string
): Promise<PortfolioHoldingsResponse> {
const filters = this.apiService.buildFiltersFromQueryParams({
@ -301,6 +302,7 @@ export class PortfolioController {
});
const { holdings } = await this.portfolioService.getDetails({
dateRange,
filters,
impersonationId,
userId: this.request.user.id

3
apps/client/src/app/components/account-detail-dialog/account-detail-dialog.component.ts

@ -122,7 +122,8 @@ export class AccountDetailDialog implements OnDestroy, OnInit {
type: 'ACCOUNT',
id: this.data.accountId
}
]
],
range: 'max'
})
.pipe(takeUntil(this.unsubscribeSubject))
.subscribe(({ holdings }) => {

3
apps/client/src/app/pages/portfolio/holdings/holdings-page.component.ts

@ -123,7 +123,8 @@ export class HoldingsPageComponent implements OnDestroy, OnInit {
}
return this.dataService.fetchPortfolioHoldings({
filters
filters,
range: this.user?.settings?.dateRange
});
}

11
apps/client/src/app/services/data.service.ts

@ -464,13 +464,18 @@ export class DataService {
}
public fetchPortfolioHoldings({
filters
filters,
range
}: {
filters?: Filter[];
} = {}) {
range: DateRange;
}) {
let params = this.buildFiltersAsQueryParams({ filters });
params = params.append('range', range);
return this.http
.get<PortfolioHoldingsResponse>('/api/v1/portfolio/holdings', {
params: this.buildFiltersAsQueryParams({ filters })
params
})
.pipe(
map((response) => {

Loading…
Cancel
Save