Added Multi-Company Support
This commit is contained in:
@@ -4,7 +4,7 @@ const { annualSchedule, money, monthlyFromAnnual } = require('../depreciation');
|
||||
const { assetExportRows, assetFromRow } = require('./assets');
|
||||
const { ruleSetForBook } = require('./ruleSets');
|
||||
|
||||
function depreciationReport(year, bookType) {
|
||||
function depreciationReport(year, bookType, companyId) {
|
||||
const rules = ruleSetForBook(bookType);
|
||||
const rows = all(`
|
||||
SELECT a.*, b.book_type, b.active, b.cost, b.depreciation_method, b.convention, b.useful_life_months AS book_life,
|
||||
@@ -13,9 +13,9 @@ function depreciationReport(year, bookType) {
|
||||
FROM assets a
|
||||
JOIN asset_books b ON b.asset_id = a.id
|
||||
LEFT JOIN entities e ON e.id = a.entity_id
|
||||
WHERE b.active = 1 AND b.book_type = ?
|
||||
WHERE b.active = 1 AND b.book_type = ? AND (? IS NULL OR a.entity_id = ?)
|
||||
ORDER BY a.asset_id
|
||||
`, [bookType]);
|
||||
`, [bookType, companyId || null, companyId || null]);
|
||||
|
||||
const reportRows = rows.map((row) => {
|
||||
const asset = assetFromRow(row);
|
||||
@@ -54,9 +54,9 @@ function depreciationReport(year, bookType) {
|
||||
};
|
||||
}
|
||||
|
||||
function monthlyDepreciationReport(year, bookType) {
|
||||
function monthlyDepreciationReport(year, bookType, companyId) {
|
||||
const rules = ruleSetForBook(bookType);
|
||||
const assets = all('SELECT * FROM assets ORDER BY asset_id').map(assetFromRow);
|
||||
const assets = all('SELECT * FROM assets WHERE (? IS NULL OR entity_id = ?) ORDER BY asset_id', [companyId || null, companyId || null]).map(assetFromRow);
|
||||
const rows = assets.flatMap((asset) => {
|
||||
const book = one('SELECT * FROM asset_books WHERE asset_id = ? AND book_type = ? AND active = 1', [asset.id, bookType]);
|
||||
if (!book) return [];
|
||||
@@ -72,8 +72,8 @@ function monthlyDepreciationReport(year, bookType) {
|
||||
return { year, book: bookType, months };
|
||||
}
|
||||
|
||||
function writeDepreciationPdf(res, year, book) {
|
||||
const rows = assetExportRows();
|
||||
function writeDepreciationPdf(res, year, book, companyId) {
|
||||
const rows = assetExportRows(companyId);
|
||||
const doc = new PDFDocument({ margin: 36, size: 'LETTER' });
|
||||
res.setHeader('Content-Type', 'application/pdf');
|
||||
res.setHeader('Content-Disposition', `attachment; filename="deprecore-${book}-${year}.pdf"`);
|
||||
|
||||
Reference in New Issue
Block a user