|
@ -107,12 +107,14 @@ export class PortfolioController { |
|
|
public async getDetails( |
|
|
public async getDetails( |
|
|
@Headers('impersonation-id') impersonationId: string, |
|
|
@Headers('impersonation-id') impersonationId: string, |
|
|
@Query('accounts') filterByAccounts?: string, |
|
|
@Query('accounts') filterByAccounts?: string, |
|
|
|
|
|
@Query('assetClasses') filterByAssetClasses?: string, |
|
|
@Query('range') range?: DateRange, |
|
|
@Query('range') range?: DateRange, |
|
|
@Query('tags') filterByTags?: string |
|
|
@Query('tags') filterByTags?: string |
|
|
): Promise<PortfolioDetails & { hasError: boolean }> { |
|
|
): Promise<PortfolioDetails & { hasError: boolean }> { |
|
|
let hasError = false; |
|
|
let hasError = false; |
|
|
|
|
|
|
|
|
const accountIds = filterByAccounts?.split(',') ?? []; |
|
|
const accountIds = filterByAccounts?.split(',') ?? []; |
|
|
|
|
|
const assetClasses = filterByAssetClasses?.split(',') ?? []; |
|
|
const tagIds = filterByTags?.split(',') ?? []; |
|
|
const tagIds = filterByTags?.split(',') ?? []; |
|
|
|
|
|
|
|
|
const filters: Filter[] = [ |
|
|
const filters: Filter[] = [ |
|
@ -122,6 +124,12 @@ export class PortfolioController { |
|
|
type: 'ACCOUNT' |
|
|
type: 'ACCOUNT' |
|
|
}; |
|
|
}; |
|
|
}), |
|
|
}), |
|
|
|
|
|
...assetClasses.map((assetClass) => { |
|
|
|
|
|
return <Filter>{ |
|
|
|
|
|
id: assetClass, |
|
|
|
|
|
type: 'ASSET_CLASS' |
|
|
|
|
|
}; |
|
|
|
|
|
}), |
|
|
...tagIds.map((tagId) => { |
|
|
...tagIds.map((tagId) => { |
|
|
return <Filter>{ |
|
|
return <Filter>{ |
|
|
id: tagId, |
|
|
id: tagId, |
|
|