feat(webapp): wip printing financial reports

This commit is contained in:
Ahmed Bouhuolia
2024-02-17 00:15:20 +02:00
parent d67189587e
commit 27fed5f18a
62 changed files with 303 additions and 244 deletions

View File

@@ -85,7 +85,6 @@ function BalanceSheetActionsBar({
active={balanceSheetDrawerFilter}
/>
<NavbarDivider />
<Popover
content={
<NumberFormatDropdown
@@ -118,7 +117,6 @@ function BalanceSheetActionsBar({
</Popover>
<NavbarDivider />
<Button
className={Classes.MINIMAL}
onClick={handlePdfPrintBtnSubmit}

View File

@@ -1,5 +1,5 @@
// @ts-nocheck
import React, { createContext, useContext } from 'react';
import { createContext, useContext, useMemo } from 'react';
import FinancialReportPage from '../FinancialReportPage';
import { useBalanceSheet } from '@/hooks/query';
@@ -9,9 +9,7 @@ const BalanceSheetContext = createContext();
function BalanceSheetProvider({ filter, ...props }) {
// Transformes the given filter to query.
const query = React.useMemo(() => transformFilterFormToQuery(filter), [
filter,
]);
const httpQuery = useMemo(() => transformFilterFormToQuery(filter), [filter]);
// Fetches the balance sheet report.
const {
@@ -19,15 +17,14 @@ function BalanceSheetProvider({ filter, ...props }) {
isFetching,
isLoading,
refetch,
} = useBalanceSheet(query, { keepPreviousData: true });
} = useBalanceSheet(httpQuery, { keepPreviousData: true });
const provider = {
balanceSheet,
isFetching,
isLoading,
refetchBalanceSheet: refetch,
query,
httpQuery,
filter,
};
return (

View File

@@ -96,7 +96,7 @@ export const BalanceSheetExportMenu = () => {
isCloseButtonShown: true,
timeout: 2000,
};
const { query } = useBalanceSheetContext();
const { httpQuery } = useBalanceSheetContext();
const openProgressToast = (amount: number) => {
return (
@@ -114,7 +114,7 @@ export const BalanceSheetExportMenu = () => {
};
// Export the report to xlsx.
const { mutateAsync: xlsxExport } = useBalanceSheetXlsxExport(query, {
const { mutateAsync: xlsxExport } = useBalanceSheetXlsxExport(httpQuery, {
onDownloadProgress: (xlsxExportProgress: number) => {
if (!toastKey.current) {
toastKey.current = AppToaster.show({
@@ -132,8 +132,9 @@ export const BalanceSheetExportMenu = () => {
}
},
});
// Export the report to csv.
const { mutateAsync: csvExport } = useBalanceSheetCsvExport(query, {
const { mutateAsync: csvExport } = useBalanceSheetCsvExport(httpQuery, {
onDownloadProgress: (xlsxExportProgress: number) => {
if (!toastKey.current) {
toastKey.current = AppToaster.show({

View File

@@ -1,3 +1,4 @@
// @ts-nocheck
import {
DialogContent,
PdfDocumentPreview,
@@ -5,9 +6,11 @@ import {
} from '@/components';
import { useBalanceSheetPdf } from '@/hooks/query';
import { AnchorButton } from '@blueprintjs/core';
import { useBalanceSheetContext } from '../../BalanceSheetProvider';
export default function BalanceSheetPdfDialogContent() {
const { isLoading, pdfUrl } = useBalanceSheetPdf();
const { httpQuery } = useBalanceSheetContext();
const { isLoading, pdfUrl } = useBalanceSheetPdf({ ...httpQuery });
return (
<DialogContent>