2
0
mirror of https://github.com/frappe/books.git synced 2024-09-20 11:29:00 +00:00
books/reports/TrialBalance/TrialBalance.js
2019-08-14 13:22:45 +05:30

26 lines
670 B
JavaScript

const frappe = require('frappejs');
const {
getTrialBalance
} = require('../FinancialStatements/FinancialStatements');
module.exports = class TrialBalance {
async run({ fromDate, toDate }) {
if (!fromDate && !toDate) {
return { rows: [] };
}
const promises = ['Asset', 'Expense', 'Income', 'Liability', 'Equity'].map(
rootType => {
return getTrialBalance({ rootType, fromDate, toDate });
}
);
const values = await Promise.all(promises);
let rows = values.reduce((acc, curr) => {
return [...acc, ...curr];
}, []);
rows = rows.filter(r => r.debit !== 0 || r.credit !== 0);
return { rows };
}
};