diff --git a/src/common/tables.js b/src/common/tables.js index 59d6ca127..59c50dff7 100644 --- a/src/common/tables.js +++ b/src/common/tables.js @@ -16,6 +16,7 @@ export const TABLES = { CASHFLOW_Transactions: 'cashflow_transactions', CREDIT_NOTES: 'credit_notes', VENDOR_CREDITS: 'vendor_credits', + WAREHOUSE_TRANSFERS:'warehouse_transfers' }; export const TABLE_SIZE = { diff --git a/src/containers/Drawers/WarehouseTransferDetailDrawer/WarehouseTransferDetailDrawerProvider.js b/src/containers/Drawers/WarehouseTransferDetailDrawer/WarehouseTransferDetailDrawerProvider.js index 371131568..b470c954f 100644 --- a/src/containers/Drawers/WarehouseTransferDetailDrawer/WarehouseTransferDetailDrawerProvider.js +++ b/src/containers/Drawers/WarehouseTransferDetailDrawer/WarehouseTransferDetailDrawerProvider.js @@ -9,10 +9,10 @@ const WarehouseTransferDetailDrawerContext = React.createContext(); * Warehouse transfer detail drawer provider. */ function WarehouseTransferDetailDrawerProvider({ - warehouseTransferId = 5, + warehouseTransferId, ...props }) { - // Handle fetch invoice detail. + // Handle fetch warehouse transfer detail. const { data: warehouseTransfer, isLoading: isWarehouseTransferLoading } = useWarehouseTransfer(warehouseTransferId, { enabled: !!warehouseTransferId, diff --git a/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferForm.js b/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferForm.js index 1d172e6c4..760a8e306 100644 --- a/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferForm.js +++ b/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferForm.js @@ -53,8 +53,8 @@ function WarehouseTransferForm({ // Form initial values. const initialValues = React.useMemo( () => ({ - ...(!isEmpty(null) - ? { ...transformToEditForm(null) } + ...(!isEmpty(warehouseTransfer) + ? { ...transformToEditForm(warehouseTransfer) } : { ...defaultWarehouseTransfer, entries: orderingLinesIndexes(defaultWarehouseTransfer.entries), diff --git a/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormPage.js b/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormPage.js index b9862488c..e7a622010 100644 --- a/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormPage.js +++ b/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormPage.js @@ -1,6 +1,7 @@ import React from 'react'; +import { useParams } from 'react-router-dom'; -import '../../../style/pages/WarehouseTransfers/PageForm.scss' +import '../../../style/pages/WarehouseTransfers/PageForm.scss'; import WarehouseTransferForm from './WarehouseTransferForm'; import { WarehouseTransferFormProvider } from './WarehouseTransferFormProvider'; @@ -8,8 +9,10 @@ import { WarehouseTransferFormProvider } from './WarehouseTransferFormProvider'; * WarehouseTransfer form page. */ export default function WarehouseTransferFormPage() { + const { id } = useParams(); + const idAsInteger = parseInt(id, 10); return ( - + ); diff --git a/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormProvider.js b/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormProvider.js index 5c57d645e..1570ad160 100644 --- a/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormProvider.js +++ b/src/containers/WarehouseTransfers/WarehouseTransferForm/WarehouseTransferFormProvider.js @@ -3,6 +3,7 @@ import DashboardInsider from 'components/Dashboard/DashboardInsider'; import { useItems, useWarehouses, + useWarehouseTransfer, useCreateWarehouseTransfer, useEditWarehouseTransfer, } from 'hooks/query'; @@ -24,6 +25,12 @@ function WarehouseTransferFormProvider({ warehouseTransferId, ...props }) { stringified_filter_roles: ITEMS_FILTER_ROLES_QUERY, }); + // Handle fetch warehouse transfer detail. + const { data: warehouseTransfer, isLoading: isWarehouseTransferLoading } = + useWarehouseTransfer(warehouseTransferId, { + enabled: !!warehouseTransferId, + }); + // Fetch warehouses list. const { data: warehouses, @@ -47,7 +54,7 @@ function WarehouseTransferFormProvider({ warehouseTransferId, ...props }) { const provider = { items, warehouses, - warehouseTransfer: [], + warehouseTransfer, isItemsFetching, isWarehouesFetching, @@ -58,9 +65,12 @@ function WarehouseTransferFormProvider({ warehouseTransferId, ...props }) { createWarehouseTransferMutate, editWarehouseTransferMutate, }; + return ( diff --git a/src/containers/WarehouseTransfers/WarehouseTransfersLanding/WarehouseTransfersActionsBar.js b/src/containers/WarehouseTransfers/WarehouseTransfersLanding/WarehouseTransfersActionsBar.js index 048a7151f..c0ad7a97e 100644 --- a/src/containers/WarehouseTransfers/WarehouseTransfersLanding/WarehouseTransfersActionsBar.js +++ b/src/containers/WarehouseTransfers/WarehouseTransfersLanding/WarehouseTransfersActionsBar.js @@ -18,6 +18,11 @@ import { } from 'components'; import DashboardActionsBar from 'components/Dashboard/DashboardActionsBar'; +import { useWarehouseTranfersListContext } from './WarehouseTransfersListProvider'; + +import withWarehouseTransfers from './withWarehouseTransfers'; +import withWarehouseTransfersActions from './withWarehouseTransfersActions'; +import withSettings from '../../Settings/withSettings'; import withSettingsActions from 'containers/Settings/withSettingsActions'; import { compose } from 'utils'; @@ -26,11 +31,24 @@ import { compose } from 'utils'; * Warehouse Transfers actions bar. */ function WarehouseTransfersActionsBar({ + // #withWarehouseTransfers + warehouseTransferFilterRoles, + + // #withWarehouseTransfersActions + setWarehouseTransferTableState, + + // #withSettings + warehouseTransferTableSize, + // #withSettingsActions addSetting, }) { const history = useHistory(); + // credit note list context. + const { WarehouseTransferView, fields, refresh } = + useWarehouseTranfersListContext(); + // Handle new warehouse transfer button click. const handleClickNewWarehouseTransfer = () => { history.push('/warehouses-transfers/new'); @@ -38,14 +56,19 @@ function WarehouseTransfersActionsBar({ // Handle click a refresh warehouse transfers const handleRefreshBtnClick = () => { - // refresh(); + refresh(); }; // Handle views tab change. - const handleTabChange = (view) => {}; + const handleTabChange = (view) => { + setWarehouseTransferTableState({ viewSlug: view ? view.slug : null }); + }; // Handle table row size change. - const handleTableRowSizeChange = (size) => {}; + const handleTableRowSizeChange = (size) => { + addSetting('warehouseTransfer', 'tableSize', size); + }; + return ( @@ -63,6 +86,22 @@ function WarehouseTransfersActionsBar({ onClick={handleClickNewWarehouseTransfer} /> + + { + setWarehouseTransferTableState({ filterRoles: filterConditions }); + }, + }} + > + + +