From 27fed5f18a46391a1e7801e14799320ded37b43a Mon Sep 17 00:00:00 2001 From: Ahmed Bouhuolia Date: Sat, 17 Feb 2024 00:15:20 +0200 Subject: [PATCH] feat(webapp): wip printing financial reports --- .../APAgingSummary/APAgingSummaryProvider.tsx | 10 ++--- .../APAgingSummary/components.tsx | 11 ++---- .../APAgingSummaryPdfDialogContent.tsx | 5 ++- .../ARAgingSummary/ARAgingSummary.tsx | 4 +- .../ARAgingSummary/ARAgingSummaryProvider.tsx | 10 ++--- .../ARAgingSummary/components.tsx | 6 +-- .../ARAgingSummaryPdfDialog.tsx | 2 +- .../ARAgingSummaryPdfDialogContent.tsx | 5 ++- .../BalanceSheet/BalanceSheetActionsBar.tsx | 2 - .../BalanceSheet/BalanceSheetProvider.tsx | 11 ++---- .../BalanceSheet/components.tsx | 7 ++-- .../BalanceSheetPdfDialogContent.tsx | 5 ++- .../CashFlowStatementProvider.tsx | 12 +++--- .../CashflowSheetPdfDialogContent.tsx | 5 ++- .../CashFlowStatement/components.tsx | 38 ++++++++++--------- ...CustomerBalanceSummaryPdfDialogContent.tsx | 7 +++- .../CustomersBalanceSummaryProvider.tsx | 4 +- .../CustomersTransactionsProvider.tsx | 9 ++--- .../CustomerTransactionsPdfDialogContent.tsx | 7 +++- .../GeneralLedger/GeneralLedgerProvider.tsx | 7 ++-- .../GeneralLedger/components.tsx | 37 +++++++++--------- .../GeneralLedgerPdfDialogContent.tsx | 7 +++- .../InventoryItemDetailsProvider.tsx | 2 +- .../InventoryItemDetailsPdfDialogContent.tsx | 7 +++- .../InventoryValuationProvider.tsx | 7 ++-- ...nventoryValuationSheetPdfDialogContent.tsx | 7 +++- .../Journal/JournalProvider.tsx | 7 ++-- .../JournalPdfDialogContent.tsx | 5 ++- .../ProfitLossSheet/ProfitLossProvider.tsx | 17 +++------ .../ProfitLossSheetPdfDialogContent.tsx | 5 ++- .../ProfitLossSheet/components.tsx | 8 ++-- .../PurchasesByItemsProvider.tsx | 15 +++----- .../PurchasesByItems/components.tsx | 12 ++---- .../PurchasesByItemsPdfDialogContent.tsx | 5 ++- .../SalesByItems/SalesByItemProvider.tsx | 15 +++----- .../SalesByItems/components.tsx | 18 +++------ .../SalesByItemsPdfDialogContent.tsx | 5 ++- .../SalesTaxLiabilityPdfDialogContent.tsx | 7 +++- .../SalesTaxLiabilitySummaryActionsBar.tsx | 1 - .../TrialBalanceProvider.tsx | 14 +++---- .../TrialBalanceSheetPdfDialogContent.tsx | 5 ++- .../VendorsBalanceSummaryProvider.tsx | 13 +++---- .../VendorBalancePdfDialogContent.tsx | 5 ++- .../VendorsTransactions.tsx | 4 +- .../VendorsTransactionsProvider.tsx | 7 ++-- .../FinancialReports/use-AP-aging-summary.ts | 9 +++-- .../FinancialReports/use-AR-aging-summary.ts | 7 +++- .../FinancialReports/use-balance-sheet.ts | 7 +++- .../FinancialReports/use-cashflow-sheet.ts | 9 +++-- .../use-customer-balance-summary.ts | 9 +++-- .../use-customer-transactions.ts | 10 ++++- .../FinancialReports/use-general-ledger.ts | 7 +++- .../use-inventory-item-details.ts | 7 +++- .../use-inventory-valuation.ts | 17 +++++---- .../FinancialReports/use-journal-sheet.ts | 5 ++- .../FinancialReports/use-profit-loss-sheet.ts | 9 +++-- .../use-purchases-by-items.ts | 10 +++-- .../FinancialReports/use-sales-by-items.ts | 7 +++- .../use-sales-tax-liabilities-summary.ts | 9 +++-- .../use-trial-balance-sheet.ts | 7 +++- .../use-vendor-balance-summary.ts | 7 +++- .../use-vendor-transactions.ts | 9 +++-- 62 files changed, 303 insertions(+), 244 deletions(-) diff --git a/packages/webapp/src/containers/FinancialStatements/APAgingSummary/APAgingSummaryProvider.tsx b/packages/webapp/src/containers/FinancialStatements/APAgingSummary/APAgingSummaryProvider.tsx index 28611a13d..844a2b904 100644 --- a/packages/webapp/src/containers/FinancialStatements/APAgingSummary/APAgingSummaryProvider.tsx +++ b/packages/webapp/src/containers/FinancialStatements/APAgingSummary/APAgingSummaryProvider.tsx @@ -1,5 +1,5 @@ // @ts-nocheck -import React, { useMemo, createContext, useContext } from 'react'; +import { useMemo, createContext, useContext } from 'react'; import FinancialReportPage from '../FinancialReportPage'; import { useAPAgingSummaryReport } from '@/hooks/query'; @@ -12,22 +12,22 @@ const APAgingSummaryContext = createContext(); */ function APAgingSummaryProvider({ filter, ...props }) { // Transformers the filter from to the Url query. - const query = useMemo(() => transformFilterFormToQuery(filter), [filter]); + const httpQuery = useMemo(() => transformFilterFormToQuery(filter), [filter]); const { data: APAgingSummary, isLoading: isAPAgingLoading, isFetching: isAPAgingFetching, refetch, - } = useAPAgingSummaryReport(query, { keepPreviousData: true }); + } = useAPAgingSummaryReport(httpQuery, { keepPreviousData: true }); const provider = { APAgingSummary, - isAPAgingLoading, isAPAgingFetching, refetch, - query, + query: httpQuery, + httpQuery, }; return ( diff --git a/packages/webapp/src/containers/FinancialStatements/APAgingSummary/components.tsx b/packages/webapp/src/containers/FinancialStatements/APAgingSummary/components.tsx index b313bab50..408057c22 100644 --- a/packages/webapp/src/containers/FinancialStatements/APAgingSummary/components.tsx +++ b/packages/webapp/src/containers/FinancialStatements/APAgingSummary/components.tsx @@ -49,11 +49,8 @@ export function APAgingSummarySheetLoadingBar() { */ export function APAgingSummaryExportMenu() { const toastKey = useRef(null); - const commonToastConfig = { - isCloseButtonShown: true, - timeout: 2000, - }; - const { query } = useAPAgingSummaryContext(); + const commonToastConfig = { isCloseButtonShown: true, timeout: 2000 }; + const { httpQuery } = useAPAgingSummaryContext(); const openProgressToast = (amount: number) => { return ( @@ -70,7 +67,7 @@ export function APAgingSummaryExportMenu() { ); }; // Export the report to xlsx. - const { mutateAsync: xlsxExport } = useAPAgingSheetXlsxExport(query, { + const { mutateAsync: xlsxExport } = useAPAgingSheetXlsxExport(httpQuery, { onDownloadProgress: (xlsxExportProgress: number) => { if (!toastKey.current) { toastKey.current = AppToaster.show({ @@ -89,7 +86,7 @@ export function APAgingSummaryExportMenu() { }, }); // Export the report to csv. - const { mutateAsync: csvExport } = useAPAgingSheetCsvExport(query, { + const { mutateAsync: csvExport } = useAPAgingSheetCsvExport(httpQuery, { onDownloadProgress: (xlsxExportProgress: number) => { if (!toastKey.current) { toastKey.current = AppToaster.show({ diff --git a/packages/webapp/src/containers/FinancialStatements/APAgingSummary/dialogs/APAgingSummaryPdfDialog/APAgingSummaryPdfDialogContent.tsx b/packages/webapp/src/containers/FinancialStatements/APAgingSummary/dialogs/APAgingSummaryPdfDialog/APAgingSummaryPdfDialogContent.tsx index eea72599d..de94494bd 100644 --- a/packages/webapp/src/containers/FinancialStatements/APAgingSummary/dialogs/APAgingSummaryPdfDialog/APAgingSummaryPdfDialogContent.tsx +++ b/packages/webapp/src/containers/FinancialStatements/APAgingSummary/dialogs/APAgingSummaryPdfDialog/APAgingSummaryPdfDialogContent.tsx @@ -1,3 +1,4 @@ +// @ts-nocheck import { DialogContent, PdfDocumentPreview, @@ -5,9 +6,11 @@ import { } from '@/components'; import { useAPAgingSummaryPdf } from '@/hooks/query'; import { AnchorButton } from '@blueprintjs/core'; +import { useAPAgingSummaryContext } from '../../APAgingSummaryProvider'; export default function APAgingSummaryPdfDialogContent() { - const { isLoading, pdfUrl } = useAPAgingSummaryPdf(); + const { httpQuery } = useAPAgingSummaryContext(); + const { isLoading, pdfUrl } = useAPAgingSummaryPdf(httpQuery); return ( diff --git a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummary.tsx b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummary.tsx index 336bfb4e0..f56ba5a00 100644 --- a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummary.tsx +++ b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummary.tsx @@ -1,5 +1,5 @@ // @ts-nocheck -import React, { useState, useCallback, useEffect } from 'react'; +import { useCallback, useEffect } from 'react'; import moment from 'moment'; import ARAgingSummaryHeader from './ARAgingSummaryHeader'; @@ -13,9 +13,9 @@ import { ARAgingSummaryBody } from './ARAgingSummaryBody'; import withARAgingSummaryActions from './withARAgingSummaryActions'; import { useARAgingSummaryQuery } from './common'; -import { compose } from '@/utils'; import { ARAgingSummaryPdfDialog } from './dialogs/ARAgingSummaryPdfDialog'; import { DialogsName } from '@/constants/dialogs'; +import { compose } from '@/utils'; /** * A/R aging summary report. diff --git a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummaryProvider.tsx b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummaryProvider.tsx index 1b9577900..1698870a5 100644 --- a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummaryProvider.tsx +++ b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/ARAgingSummaryProvider.tsx @@ -1,5 +1,5 @@ // @ts-nocheck -import React, { useMemo, createContext, useContext } from 'react'; +import { useMemo, createContext, useContext } from 'react'; import FinancialReportPage from '../FinancialReportPage'; import { useARAgingSummaryReport } from '@/hooks/query'; import { transformFilterFormToQuery } from '../common'; @@ -11,10 +11,7 @@ const ARAgingSummaryContext = createContext(); */ function ARAgingSummaryProvider({ filter, ...props }) { // Transformes the filter from to the url query. - const requestQuery = useMemo( - () => transformFilterFormToQuery(filter), - [filter], - ); + const httpQuery = useMemo(() => transformFilterFormToQuery(filter), [filter]); // A/R aging summary sheet context. const { @@ -22,13 +19,14 @@ function ARAgingSummaryProvider({ filter, ...props }) { isLoading: isARAgingLoading, isFetching: isARAgingFetching, refetch, - } = useARAgingSummaryReport(requestQuery, { keepPreviousData: true }); + } = useARAgingSummaryReport(httpQuery, { keepPreviousData: true }); const provider = { ARAgingSummary, isARAgingLoading, isARAgingFetching, refetch, + httpQuery, }; return ( diff --git a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/components.tsx b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/components.tsx index 19166c101..6039fbfc5 100644 --- a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/components.tsx +++ b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/components.tsx @@ -53,7 +53,7 @@ export function ARAgingSummaryExportMenu() { isCloseButtonShown: true, timeout: 2000, }; - const { query } = useARAgingSummaryContext(); + const { httpQuery } = useARAgingSummaryContext(); const openProgressToast = (amount: number) => { return ( @@ -71,7 +71,7 @@ export function ARAgingSummaryExportMenu() { }; // Export the report to xlsx. - const { mutateAsync: xlsxExport } = useARAgingSheetXlsxExport(query, { + const { mutateAsync: xlsxExport } = useARAgingSheetXlsxExport(httpQuery, { onDownloadProgress: (xlsxExportProgress: number) => { if (!toastKey.current) { toastKey.current = AppToaster.show({ @@ -90,7 +90,7 @@ export function ARAgingSummaryExportMenu() { }, }); // Export the report to csv. - const { mutateAsync: csvExport } = useARAgingSheetCsvExport(query, { + const { mutateAsync: csvExport } = useARAgingSheetCsvExport(httpQuery, { onDownloadProgress: (xlsxExportProgress: number) => { if (!toastKey.current) { toastKey.current = AppToaster.show({ diff --git a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/dialogs/ARAgingSummaryPdfDialog/ARAgingSummaryPdfDialog.tsx b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/dialogs/ARAgingSummaryPdfDialog/ARAgingSummaryPdfDialog.tsx index ed89fc30c..5ae8d9998 100644 --- a/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/dialogs/ARAgingSummaryPdfDialog/ARAgingSummaryPdfDialog.tsx +++ b/packages/webapp/src/containers/FinancialStatements/ARAgingSummary/dialogs/ARAgingSummaryPdfDialog/ARAgingSummaryPdfDialog.tsx @@ -20,7 +20,7 @@ function ARAgingSummaryPdfDialogRoot({ dialogName, payload, isOpen }) { return ( diff --git a/packages/webapp/src/containers/FinancialStatements/BalanceSheet/BalanceSheetActionsBar.tsx b/packages/webapp/src/containers/FinancialStatements/BalanceSheet/BalanceSheetActionsBar.tsx index d268b4127..75d1a3236 100644 --- a/packages/webapp/src/containers/FinancialStatements/BalanceSheet/BalanceSheetActionsBar.tsx +++ b/packages/webapp/src/containers/FinancialStatements/BalanceSheet/BalanceSheetActionsBar.tsx @@ -85,7 +85,6 @@ function BalanceSheetActionsBar({ active={balanceSheetDrawerFilter} /> - -