feat(server): financial sheet meta

This commit is contained in:
Ahmed Bouhuolia
2024-02-17 13:17:18 +02:00
parent 7690789031
commit d2e6cc0036
16 changed files with 181 additions and 130 deletions

View File

@@ -82,6 +82,7 @@ export default class BalanceSheetStatementService
const models = this.tenancy.models(tenantId);
const balanceSheetRepo = new BalanceSheetRepository(models, filter);
// Loads all resources.
await balanceSheetRepo.asyncInitialize();
// Balance sheet report instance.
@@ -95,7 +96,7 @@ export default class BalanceSheetStatementService
const data = balanceSheetInstanace.reportData();
// Balance sheet meta.
const meta = await this.balanceSheetMeta.meta(tenantId);
const meta = await this.balanceSheetMeta.meta(tenantId, filter);
return {
query: filter,

View File

@@ -1,6 +1,7 @@
import { Inject, Service } from 'typedi';
import { FinancialSheetMeta } from '../FinancialSheetMeta';
import { IBalanceSheetMeta } from '@/interfaces';
import { IBalanceSheetMeta, IBalanceSheetQuery } from '@/interfaces';
import moment from 'moment';
@Service()
export class BalanceSheetMetaInjectable {
@@ -12,12 +13,21 @@ export class BalanceSheetMetaInjectable {
* @param {number} tenantId -
* @returns {IBalanceSheetMeta}
*/
public async meta(tenantId: number): Promise<IBalanceSheetMeta> {
public async meta(
tenantId: number,
query: IBalanceSheetQuery
): Promise<IBalanceSheetMeta> {
const commonMeta = await this.financialSheetMeta.meta(tenantId);
const formattedToDate = moment(query.toDate).format('YYYY/MM/DD');
const formattedFromDate = moment(query.fromDate).format('YYYY/MM/DD');
const formattedDateRange = `From ${formattedFromDate} | To ${formattedToDate}`;
return {
...commonMeta,
sheetName: 'Balance Sheet',
formattedFromDate,
formattedToDate,
formattedDateRange
};
}
}

View File

@@ -27,7 +27,7 @@ export class BalanceSheetPdfInjectable {
tenantId,
table.table,
table.meta.sheetName,
table.meta.baseCurrency
table.meta.formattedDateRange
);
}
}