Browse Source

Respect the accounts' currencies

pull/391/head
Thomas 4 years ago
parent
commit
37244425e4
  1. 42
      apps/api/src/services/exchange-rate-data.service.ts

42
apps/api/src/services/exchange-rate-data.service.ts

@ -168,28 +168,34 @@ export class ExchangeRateDataService {
private async prepareCurrencies(): Promise<string[]> { private async prepareCurrencies(): Promise<string[]> {
const currencies: string[] = []; const currencies: string[] = [];
const settings = await this.prismaService.settings.findMany({ (
distinct: ['currency'], await this.prismaService.account.findMany({
orderBy: [{ currency: 'asc' }], distinct: ['currency'],
select: { currency: true } orderBy: [{ currency: 'asc' }],
}); select: { currency: true }
})
settings.forEach((settingsItem) => { ).forEach((account) => {
if (settingsItem.currency) { currencies.push(account.currency);
currencies.push(settingsItem.currency);
}
}); });
const symbolProfiles = await this.prismaService.symbolProfile.findMany({ (
distinct: ['currency'], await this.prismaService.settings.findMany({
orderBy: [{ currency: 'asc' }], distinct: ['currency'],
select: { currency: true } orderBy: [{ currency: 'asc' }],
select: { currency: true }
})
).forEach((userSettings) => {
currencies.push(userSettings.currency);
}); });
symbolProfiles.forEach((symbolProfile) => { (
if (symbolProfile.currency) { await this.prismaService.symbolProfile.findMany({
currencies.push(symbolProfile.currency); distinct: ['currency'],
} orderBy: [{ currency: 'asc' }],
select: { currency: true }
})
).forEach((symbolProfile) => {
currencies.push(symbolProfile.currency);
}); });
return uniq(currencies).sort(); return uniq(currencies).sort();

Loading…
Cancel
Save