Files
bigcapital/packages/server/src/services/FinancialStatements/PurchasesByItems/PurchasesByItemsMeta.ts
2024-02-17 23:36:29 +02:00

37 lines
1.0 KiB
TypeScript

import moment from 'moment';
import { Inject, Service } from 'typedi';
import { FinancialSheetMeta } from '../FinancialSheetMeta';
import {
IPurchasesByItemsReportQuery,
IPurchasesByItemsSheetMeta,
} from '@/interfaces/PurchasesByItemsSheet';
@Service()
export class PurchasesByItemsMeta {
@Inject()
private financialSheetMeta: FinancialSheetMeta;
/**
* Retrieve the purchases by items meta.
* @param {number} tenantId -
* @returns {IBalanceSheetMeta}
*/
public async meta(
tenantId: number,
query: IPurchasesByItemsReportQuery
): Promise<IPurchasesByItemsSheetMeta> {
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: 'Purchases By Items',
formattedFromDate,
formattedToDate,
formattedDateRange,
};
}
}