From 31fef21362a1fcea5f6c4b70bf47bb4d48ab4199 Mon Sep 17 00:00:00 2001 From: elforjani13 <39470382+elforjani13@users.noreply.github.com> Date: Thu, 30 Jun 2022 22:05:35 +0200 Subject: [PATCH] feat: add purchases & sales tables. --- src/common/tables.js | 2 + .../ProjectDetailActionsBar.tsx | 18 ++-- .../ProjectDetails/ProjectDetailTabs.tsx | 26 ++++-- .../Purchases/PurchasesTable.tsx | 71 ++++++++++++++ .../ProjectDetails/Purchases/components.tsx | 92 +++++++++++++++++++ .../ProjectDetails/Purchases/index.tsx | 35 +++++++ .../ProjectDetails/Sales/SalesTable.tsx | 71 ++++++++++++++ .../ProjectDetails/Sales/components.tsx | 92 +++++++++++++++++++ .../containers/ProjectDetails/Sales/index.tsx | 18 ++++ .../TimesheetsHeader.tsx | 0 .../TimesheetsTable.tsx | 11 +-- .../components.tsx | 3 +- .../index.tsx | 10 +- .../components/FinancialSection.tsx | 8 +- .../containers/ProjectFormDialog/index.tsx | 1 + .../TaskFormDialog/TaskFormFields.tsx | 15 +-- src/containers/Settings/withSettings.js | 4 +- src/lang/en/index.json | 51 +++++++++- src/store/settings/settings.reducer.js | 6 ++ 19 files changed, 496 insertions(+), 38 deletions(-) create mode 100644 src/containers/Projects/containers/ProjectDetails/Purchases/PurchasesTable.tsx create mode 100644 src/containers/Projects/containers/ProjectDetails/Purchases/components.tsx create mode 100644 src/containers/Projects/containers/ProjectDetails/Purchases/index.tsx create mode 100644 src/containers/Projects/containers/ProjectDetails/Sales/SalesTable.tsx create mode 100644 src/containers/Projects/containers/ProjectDetails/Sales/components.tsx create mode 100644 src/containers/Projects/containers/ProjectDetails/Sales/index.tsx rename src/containers/Projects/containers/ProjectDetails/{ProjectTimesheet => Timesheets}/TimesheetsHeader.tsx (100%) rename src/containers/Projects/containers/ProjectDetails/{ProjectTimesheet => Timesheets}/TimesheetsTable.tsx (96%) rename src/containers/Projects/containers/ProjectDetails/{ProjectTimesheet => Timesheets}/components.tsx (98%) rename src/containers/Projects/containers/ProjectDetails/{ProjectTimesheet => Timesheets}/index.tsx (70%) diff --git a/src/common/tables.js b/src/common/tables.js index c6927fad7..b34020d99 100644 --- a/src/common/tables.js +++ b/src/common/tables.js @@ -19,6 +19,8 @@ export const TABLES = { WAREHOUSE_TRANSFERS: 'warehouse_transfers', PROJECTS: 'projects', TIMESHEETS: 'timesheets', + PURCHASES: 'purchases', + SALES: 'sales', }; export const TABLE_SIZE = { diff --git a/src/containers/Projects/containers/ProjectDetails/ProjectDetailActionsBar.tsx b/src/containers/Projects/containers/ProjectDetails/ProjectDetailActionsBar.tsx index 09608d960..23e666949 100644 --- a/src/containers/Projects/containers/ProjectDetails/ProjectDetailActionsBar.tsx +++ b/src/containers/Projects/containers/ProjectDetails/ProjectDetailActionsBar.tsx @@ -40,7 +40,13 @@ function ProjectDetailActionsBar({ // Handle new transaction button click. const handleNewTransactionBtnClick = ({ path }) => { - history.push(`/${path}`); + switch (path) { + case 'expense': + openDialog('expense-form', { projectId }); + break; + case 'estimatedExpense': + openDialog('estimated-expense-form', { projectId }); + } }; const handleEditProjectBtnClick = () => { @@ -50,7 +56,9 @@ function ProjectDetailActionsBar({ }; // Handle table row size change. const handleTableRowSizeChange = (size) => { - addSetting('timesheets', 'tableSize', size); + addSetting('timesheets', 'tableSize', size) && + addSetting('sales', 'tableSize', size) && + addSetting('purchases', 'tableSize', size); }; const handleTimeEntryBtnClick = () => { @@ -67,8 +75,8 @@ function ProjectDetailActionsBar({ @@ -105,8 +113,6 @@ function ProjectDetailActionsBar({ initialValue={timesheetsTableSize} onChange={handleTableRowSizeChange} /> - -