Browse Source

Fix hasErrors

pull/701/head
Reto Kaul 3 years ago
parent
commit
21a2b17104
  1. 10
      apps/api/src/app/portfolio/portfolio-calculator-new.ts

10
apps/api/src/app/portfolio/portfolio-calculator-new.ts

@ -230,7 +230,7 @@ export class PortfolioCalculatorNew {
const initialValues: { [symbol: string]: Big } = {}; const initialValues: { [symbol: string]: Big } = {};
const positions: TimelinePosition[] = []; const positions: TimelinePosition[] = [];
let hasErrorsInSymbolMetrics = false; let hasAnySymbolMetricsErrors = false;
for (const item of lastTransactionPoint.items) { for (const item of lastTransactionPoint.items) {
const marketValue = marketSymbolMap[todayString]?.[item.symbol]; const marketValue = marketSymbolMap[todayString]?.[item.symbol];
@ -248,8 +248,7 @@ export class PortfolioCalculatorNew {
symbol: item.symbol symbol: item.symbol
}); });
hasErrorsInSymbolMetrics = hasErrorsInSymbolMetrics || hasErrors; hasAnySymbolMetricsErrors = hasAnySymbolMetricsErrors || hasErrors;
initialValues[item.symbol] = initialValue; initialValues[item.symbol] = initialValue;
positions.push({ positions.push({
@ -274,12 +273,13 @@ export class PortfolioCalculatorNew {
transactionCount: item.transactionCount transactionCount: item.transactionCount
}); });
} }
const overall = this.calculateOverallPerformance(positions, initialValues); const overall = this.calculateOverallPerformance(positions, initialValues);
return { return {
...overall, ...overall,
positions, positions,
hasErrors: hasErrorsInSymbolMetrics || overall.hasErrors hasErrors: hasAnySymbolMetricsErrors || overall.hasErrors
}; };
} }
@ -939,7 +939,7 @@ export class PortfolioCalculatorNew {
initialValue, initialValue,
grossPerformancePercentage, grossPerformancePercentage,
netPerformancePercentage, netPerformancePercentage,
hasErrors: !initialValue || !unitPriceAtEndDate, hasErrors: totalUnits.gt(0) && (!initialValue || !unitPriceAtEndDate),
netPerformance: totalNetPerformance, netPerformance: totalNetPerformance,
grossPerformance: totalGrossPerformance grossPerformance: totalGrossPerformance
}; };

Loading…
Cancel
Save