-
Martin French authored
*
(reports) fix incorrect cashflow balance Fixing a small typo here where multiple transfers across different payees on the same day fail to be summed up resulting in significant balance errors. * release notes * Update 1518.mdMartin French authored*
(reports) fix incorrect cashflow balance Fixing a small typo here where multiple transfers across different payees on the same day fail to be summed up resulting in significant balance errors. * release notes * Update 1518.md
util.js 907 B
import { runQuery } from 'loot-core/src/client/query-helpers';
export function fromDateRepr(date) {
return date.slice(0, 7);
}
export async function runAll(queries, cb) {
let data = await Promise.all(
queries.map(q => {
return runQuery(q).then(({ data }) => data);
}),
);
cb(data);
}
export function index(data, field, mapper) {
const result = {};
data.forEach(item => {
result[mapper ? mapper(item[field]) : item[field]] = item;
});
return result;
}
export function indexCashFlow(data, date, isTransfer) {
const results = {};
data.forEach(item => {
let findExisting = results[item.date]
? results[item.date][item.isTransfer]
? results[item.date][item.isTransfer]
: 0
: 0;
let result = { [item[isTransfer]]: item.amount + findExisting };
results[item[date]] = { ...results[item[date]], ...result };
});
return results;
}