mirror of
https://github.com/marcogll/TaxHacker_s23.git
synced 2026-01-13 21:35:19 +00:00
15 lines
640 B
TypeScript
15 lines
640 B
TypeScript
import { Transaction } from "@prisma/client"
|
|
|
|
export function calcTotalPerCurrency(transactions: Transaction[]): Record<string, number> {
|
|
return transactions.reduce((acc, transaction) => {
|
|
if (transaction.convertedCurrencyCode) {
|
|
acc[transaction.convertedCurrencyCode.toUpperCase()] =
|
|
(acc[transaction.convertedCurrencyCode.toUpperCase()] || 0) + (transaction.convertedTotal || 0)
|
|
} else if (transaction.currencyCode) {
|
|
acc[transaction.currencyCode.toUpperCase()] =
|
|
(acc[transaction.currencyCode.toUpperCase()] || 0) + (transaction.total || 0)
|
|
}
|
|
return acc
|
|
}, {} as Record<string, number>)
|
|
}
|