From d67189587e31f5126629b37f6ee44ef72494eb2c Mon Sep 17 00:00:00 2001 From: Ahmed Bouhuolia Date: Tue, 13 Feb 2024 19:42:11 +0200 Subject: [PATCH] feat(server): financial reports meta --- .../TransactionsByCustomers/index.ts | 10 ++++++++++ .../CustomerBalanceSummaryService.ts | 1 + .../CustomerBalanceSummaryTableInjectable.ts | 3 ++- .../SalesByItems/SalesByItemsApplication.ts | 1 - .../TransactionsByCustomersService.ts | 1 + .../TransactionsByCustomersTableInjectable.ts | 1 + .../TransactionsByVendorInjectable.ts | 1 + .../TransactionsByVendorTableInjectable.ts | 1 + .../VendorBalanceSummaryService.ts | 1 + .../VendorBalanceSummaryTableInjectable.ts | 10 ++++++---- 10 files changed, 24 insertions(+), 6 deletions(-) diff --git a/packages/server/src/api/controllers/FinancialStatements/TransactionsByCustomers/index.ts b/packages/server/src/api/controllers/FinancialStatements/TransactionsByCustomers/index.ts index 42a619ec8..c10eeea16 100644 --- a/packages/server/src/api/controllers/FinancialStatements/TransactionsByCustomers/index.ts +++ b/packages/server/src/api/controllers/FinancialStatements/TransactionsByCustomers/index.ts @@ -104,6 +104,16 @@ export default class TransactionsByCustomersReportController extends BaseFinanci ); return res.send(buffer); // Retrieve the json format. + } else if (ACCEPT_TYPE.APPLICATION_PDF === acceptType) { + const pdfContent = await this.transactionsByCustomersApp.pdf( + tenantId, + filter + ); + res.set({ + 'Content-Type': 'application/pdf', + 'Content-Length': pdfContent.length, + }); + return res.send(pdfContent); } else { const sheet = await this.transactionsByCustomersApp.sheet( tenantId, diff --git a/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryService.ts b/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryService.ts index 78afc3bb2..45345d931 100644 --- a/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryService.ts +++ b/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryService.ts @@ -100,6 +100,7 @@ export class CustomerBalanceSummaryService return { data: report.reportData(), query: filter, + meta: {} }; } } diff --git a/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryTableInjectable.ts b/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryTableInjectable.ts index 56450d4ca..be42a7417 100644 --- a/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryTableInjectable.ts +++ b/packages/server/src/services/FinancialStatements/CustomerBalanceSummary/CustomerBalanceSummaryTableInjectable.ts @@ -26,7 +26,7 @@ export class CustomerBalanceSummaryTableInjectable { filter: ICustomerBalanceSummaryQuery ): Promise { const i18n = this.tenancy.i18n(tenantId); - const { data, query } = + const { data, query, meta } = await this.customerBalanceSummaryService.customerBalanceSummary( tenantId, filter @@ -39,6 +39,7 @@ export class CustomerBalanceSummaryTableInjectable { rows: tableRows.tableRows(), }, query, + meta, }; } } diff --git a/packages/server/src/services/FinancialStatements/SalesByItems/SalesByItemsApplication.ts b/packages/server/src/services/FinancialStatements/SalesByItems/SalesByItemsApplication.ts index 498e3eb66..2b0ffc959 100644 --- a/packages/server/src/services/FinancialStatements/SalesByItems/SalesByItemsApplication.ts +++ b/packages/server/src/services/FinancialStatements/SalesByItems/SalesByItemsApplication.ts @@ -2,7 +2,6 @@ import { Inject, Service } from 'typedi'; import { ISalesByItemsReportQuery, ISalesByItemsSheet, - ISalesByItemsSheetData, ISalesByItemsTable, } from '@/interfaces'; import { SalesByItemsReportService } from './SalesByItemsService'; diff --git a/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersService.ts b/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersService.ts index 3fbf8cf06..ed4483d61 100644 --- a/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersService.ts +++ b/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersService.ts @@ -163,6 +163,7 @@ export class TransactionsByCustomersSheet return { data: reportInstance.reportData(), query: filter, + meta: {}, }; } } diff --git a/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersTableInjectable.ts b/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersTableInjectable.ts index fb1c61311..2f2aa0277 100644 --- a/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersTableInjectable.ts +++ b/packages/server/src/services/FinancialStatements/TransactionsByCustomer/TransactionsByCustomersTableInjectable.ts @@ -39,6 +39,7 @@ export class TransactionsByCustomersTableInjectable { columns: table.tableColumns(), }, query: customersTransactions.query, + meta: customersTransactions.meta }; } } diff --git a/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorInjectable.ts b/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorInjectable.ts index a24041929..6738979a1 100644 --- a/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorInjectable.ts +++ b/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorInjectable.ts @@ -168,6 +168,7 @@ export class TransactionsByVendorsInjectable return { data: reportInstance.reportData(), query: filter, + meta: {}, }; } } diff --git a/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorTableInjectable.ts b/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorTableInjectable.ts index 5b42b88e7..5c5243059 100644 --- a/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorTableInjectable.ts +++ b/packages/server/src/services/FinancialStatements/TransactionsByVendor/TransactionsByVendorTableInjectable.ts @@ -39,6 +39,7 @@ export class TransactionsByVendorTableInjectable { columns: table.tableColumns(), }, query, + meta: sheet.meta, }; } } diff --git a/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryService.ts b/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryService.ts index b1a361b87..dfc529ab3 100644 --- a/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryService.ts +++ b/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryService.ts @@ -101,6 +101,7 @@ export class VendorBalanceSummaryService return { data: reportInstance.reportData(), query: filter, + meta: {} }; } } diff --git a/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryTableInjectable.ts b/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryTableInjectable.ts index aec97e6f1..19f0c889c 100644 --- a/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryTableInjectable.ts +++ b/packages/server/src/services/FinancialStatements/VendorBalanceSummary/VendorBalanceSummaryTableInjectable.ts @@ -27,10 +27,11 @@ export class VendorBalanceSummaryTableInjectable { ): Promise { const i18n = this.tenancy.i18n(tenantId); - const { data } = await this.vendorBalanceSummarySheet.vendorBalanceSummary( - tenantId, - query - ); + const { data, meta } = + await this.vendorBalanceSummarySheet.vendorBalanceSummary( + tenantId, + query + ); const table = new VendorBalanceSummaryTable(data, query, i18n); return { @@ -39,6 +40,7 @@ export class VendorBalanceSummaryTableInjectable { rows: table.tableRows(), }, query, + meta, }; } }