From eb03a38553b412d8ad404e052c182e1bca112924 Mon Sep 17 00:00:00 2001 From: Ahmed Bouhuolia Date: Fri, 1 Sep 2023 20:50:22 +0200 Subject: [PATCH] feat(webapp): wip sales tax summary report --- .../SalesTaxLiabilitySummaryActionsBar.tsx | 2 +- .../SalesTaxLiabilitySummaryBody.tsx | 13 +------------ .../SalesTaxLiabilitySummaryHeader.tsx | 19 ++++++++----------- ...sTaxLiabilitySummaryHeaderGeneralPanel.tsx | 13 +++++++++++++ .../SalesTaxLiabilitySummary/components.tsx | 2 +- .../dynamicColumns.ts | 2 +- .../withSalesTaxLiabilitySummaryActions.ts | 4 ++-- .../financialStatements.actions.tsx | 13 +++++++++++++ .../financialStatements.reducer.tsx | 7 +++++++ .../financialStatements.selectors.tsx | 2 +- .../financialStatements.types.tsx | 1 + 11 files changed, 49 insertions(+), 29 deletions(-) create mode 100644 packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeaderGeneralPanel.tsx diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryActionsBar.tsx b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryActionsBar.tsx index 2fc716be0..1ffc90c18 100644 --- a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryActionsBar.tsx +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryActionsBar.tsx @@ -27,7 +27,7 @@ function SalesTaxLiabilitySummaryActionsBar({ salesTaxLiabilitySummaryFilter, // #withSalesTaxLiabilitySummaryActions - toggleBalanceSheetFilterDrawer: toggleFilterDrawer, + toggleSalesTaxLiabilitySummaryFilterDrawer: toggleFilterDrawer, // #ownProps numberFormat, diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryBody.tsx b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryBody.tsx index 0fadde2d6..6c7b5606f 100644 --- a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryBody.tsx +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryBody.tsx @@ -5,18 +5,13 @@ import { FinancialReportBody } from '../FinancialReportPage'; import { FinancialSheetSkeleton } from '@/components'; import { SalesTaxLiabilitySummaryTable } from './SalesTaxLiabilitySummaryTable'; -import withCurrentOrganization from '@/containers/Organization/withCurrentOrganization'; import { useSalesTaxLiabilitySummaryContext } from './SalesTaxLiabilitySummaryBoot'; -import { compose } from '@/utils'; /** * Sales tax liability summary body. * @returns {React.JSX} */ -function SalesTaxLiabilitySummaryBodyRoot({ - // #withCurrentOrganization - organizationName, -}) { +export function SalesTaxLiabilitySummaryBody() { const { isLoading } = useSalesTaxLiabilitySummaryContext(); return ( @@ -29,9 +24,3 @@ function SalesTaxLiabilitySummaryBodyRoot({ ); } - -export const SalesTaxLiabilitySummaryBody = compose( - withCurrentOrganization(({ organization }) => ({ - organizationName: organization.name, - })), -)(SalesTaxLiabilitySummaryBodyRoot); diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeader.tsx b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeader.tsx index df362738f..5ca3e1d2e 100644 --- a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeader.tsx +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeader.tsx @@ -2,14 +2,11 @@ import React from 'react'; import styled from 'styled-components'; import moment from 'moment'; -import { Tabs, Tab, Button, Intent } from '@blueprintjs/core'; +import { Button, Intent, Tab, Tabs } from '@blueprintjs/core'; import { Formik, Form } from 'formik'; import { FormattedMessage as T } from '@/components'; import { useFeatureCan } from '@/hooks/state'; -import { Features } from '@/constants'; - -import BalanceSheetHeaderGeneralPanal from './BalanceSheetHeaderGeneralPanal'; import FinancialStatementHeader from '../../FinancialStatements/FinancialStatementHeader'; import { compose, transformToForm } from '@/utils'; @@ -19,6 +16,7 @@ import { } from './utils'; import withSalesTaxLiabilitySummary from './withSalesTaxLiabilitySummary'; import withSalesTaxLiabilitySummaryActions from './withSalesTaxLiabilitySummaryActions'; +import { SalesTaxLiabilitySummaryHeaderGeneral } from './SalesTaxLiabilitySummaryHeaderGeneralPanel'; /** * Sales tax liability summary header. @@ -65,10 +63,9 @@ function SalesTaxLiabilitySummaryHeader({ }; // Detarmines the given feature whether is enabled. const { featureCan } = useFeatureCan(); - const isBranchesFeatureCan = featureCan(Features.Branches); return ( -
- {/* + } - panel={} + panel={} /> - */} +
-
+ ); } @@ -109,7 +106,7 @@ export default compose( withSalesTaxLiabilitySummaryActions, )(SalesTaxLiabilitySummaryHeader); -const BalanceSheetFinancialHeader = styled(FinancialStatementHeader)` +const SalesTaxSummaryFinancialHeader = styled(FinancialStatementHeader)` .bp3-drawer { max-height: 520px; } diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeaderGeneralPanel.tsx b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeaderGeneralPanel.tsx new file mode 100644 index 000000000..071372eec --- /dev/null +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/SalesTaxLiabilitySummaryHeaderGeneralPanel.tsx @@ -0,0 +1,13 @@ +// @ts-nocheck +import React from 'react'; +import FinancialStatementDateRange from '../FinancialStatementDateRange'; +import RadiosAccountingBasis from '../RadiosAccountingBasis'; + +export function SalesTaxLiabilitySummaryHeaderGeneral() { + return ( +
+ + +
+ ); +} diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/components.tsx b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/components.tsx index 8a3c1d793..6e4221b60 100644 --- a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/components.tsx +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/components.tsx @@ -5,7 +5,7 @@ import { useSalesTaxLiabilitySummaryContext } from './SalesTaxLiabilitySummaryBo import FinancialLoadingBar from '../FinancialLoadingBar'; /** - * Balance sheet loading bar. + * Sales tax liability summary loading bar. */ export function SalesTaxLiabilitySummaryLoadingBar() { const { isFetching } = useSalesTaxLiabilitySummaryContext(); diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/dynamicColumns.ts b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/dynamicColumns.ts index 76c51f811..54caae5fd 100644 --- a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/dynamicColumns.ts +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/dynamicColumns.ts @@ -1,5 +1,5 @@ // @ts-nocheck -import React, { useMemo } from 'react'; +import React from 'react'; import * as R from 'ramda'; import { getColumnWidth } from '@/utils'; import { Align } from '@/constants'; diff --git a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/withSalesTaxLiabilitySummaryActions.ts b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/withSalesTaxLiabilitySummaryActions.ts index 3ce7d3046..5453b2aa4 100644 --- a/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/withSalesTaxLiabilitySummaryActions.ts +++ b/packages/webapp/src/containers/FinancialStatements/SalesTaxLiabilitySummary/withSalesTaxLiabilitySummaryActions.ts @@ -1,10 +1,10 @@ // @ts-nocheck import { connect } from 'react-redux'; -import { toggleBalanceSheetFilterDrawer } from '@/store/financialStatement/financialStatements.actions'; +import { toggleSalesTaxLiabilitySummaryFilterDrawer } from '@/store/financialStatement/financialStatements.actions'; const mapDispatchToProps = (dispatch) => ({ toggleSalesTaxLiabilitySummaryFilterDrawer: (toggle) => - dispatch(toggleBalanceSheetFilterDrawer(toggle)), + dispatch(toggleSalesTaxLiabilitySummaryFilterDrawer(toggle)), }); export default connect(null, mapDispatchToProps); diff --git a/packages/webapp/src/store/financialStatement/financialStatements.actions.tsx b/packages/webapp/src/store/financialStatement/financialStatements.actions.tsx index c2dc6003e..091608213 100644 --- a/packages/webapp/src/store/financialStatement/financialStatements.actions.tsx +++ b/packages/webapp/src/store/financialStatement/financialStatements.actions.tsx @@ -244,3 +244,16 @@ export function toggleProjectProfitabilitySummaryFilterDrawer(toggle) { }, }; } + +/** + * Toggles display of the sales tax liablilty summary filter drawer. + * @param {boolean} toggle + */ +export function toggleSalesTaxLiabilitySummaryFilterDrawer(toggle) { + return { + type: `${t.SALES_TAX_LIABILITY_SUMMARY}/${t.DISPLAY_FILTER_DRAWER_TOGGLE}`, + payload: { + toggle, + }, + }; +} diff --git a/packages/webapp/src/store/financialStatement/financialStatements.reducer.tsx b/packages/webapp/src/store/financialStatement/financialStatements.reducer.tsx index 2a5bc6c9d..0c1589074 100644 --- a/packages/webapp/src/store/financialStatement/financialStatements.reducer.tsx +++ b/packages/webapp/src/store/financialStatement/financialStatements.reducer.tsx @@ -61,6 +61,9 @@ const initialState = { projectProfitabilitySummary: { dispalyFilterDrawer: false, }, + salesTaxLiabilitySummary: { + displayFilterDrawer: false, + } }; /** @@ -124,4 +127,8 @@ export default createReducer(initialState, { t.PROJECT_PROFITABILITY_SUMMARY, 'projectProfitabilitySummary', ), + ...financialStatementFilterToggle( + t.SALES_TAX_LIABILITY_SUMMARY, + 'salesTaxLiabilitySummary', + ) }); diff --git a/packages/webapp/src/store/financialStatement/financialStatements.selectors.tsx b/packages/webapp/src/store/financialStatement/financialStatements.selectors.tsx index b46241aa1..1c44babfd 100644 --- a/packages/webapp/src/store/financialStatement/financialStatements.selectors.tsx +++ b/packages/webapp/src/store/financialStatement/financialStatements.selectors.tsx @@ -87,7 +87,7 @@ export const projectProfitabilitySummaryFilterDrawerSelector = (state) => { }; export const salesTaxLiabilitySummaryFilterDrawerSelector = (state) => { - return filterDrawerByTypeSelector('projectProfitabilitySummary')(state); + return filterDrawerByTypeSelector('salesTaxLiabilitySummary')(state); }; /** diff --git a/packages/webapp/src/store/financialStatement/financialStatements.types.tsx b/packages/webapp/src/store/financialStatement/financialStatements.types.tsx index 88da7d11d..eeaeb01f1 100644 --- a/packages/webapp/src/store/financialStatement/financialStatements.types.tsx +++ b/packages/webapp/src/store/financialStatement/financialStatements.types.tsx @@ -20,4 +20,5 @@ export default { PROJECT_PROFITABILITY_SUMMARY: 'PROJECT PROFITABILITY SUMMARY', REALIZED_GAIN_OR_LOSS: 'REALIZED GAIN OR LOSS', UNREALIZED_GAIN_OR_LOSS: 'UNREALIZED GAIN OR LOSS', + SALES_TAX_LIABILITY_SUMMARY: 'SALES TAX LIABILITY SUMMARY', };