feat(branches & warehouses): fix api.

This commit is contained in:
elforjani13
2022-03-08 15:47:28 +02:00
parent 0f4176ae79
commit 2d34baa7a5
26 changed files with 233 additions and 60 deletions

View File

@@ -1,6 +1,7 @@
import React, { createContext, useState } from 'react';
import {isEqual, isUndefined } from 'lodash';
import { isEqual, isUndefined } from 'lodash';
import { Features } from 'common';
import { useFeatureCan } from 'hooks/state';
import DashboardInsider from 'components/Dashboard/DashboardInsider';
import {
useAccounts,
@@ -38,6 +39,11 @@ const stringifiedFilterRoles = JSON.stringify([
* Bill form provider.
*/
function BillFormProvider({ billId, baseCurrency, ...props }) {
// Features guard.
const { featureCan } = useFeatureCan();
const isWarehouseFeatureCan = featureCan(Features.Warehouses);
const isBranchFeatureCan = featureCan(Features.Branches);
// Handle fetch accounts.
const { data: accounts, isLoading: isAccountsLoading } = useAccounts();
@@ -66,14 +72,14 @@ function BillFormProvider({ billId, baseCurrency, ...props }) {
data: warehouses,
isLoading: isWarehouesLoading,
isSuccess: isWarehousesSuccess,
} = useWarehouses();
} = useWarehouses({}, { enabled: isWarehouseFeatureCan });
// Fetches the branches list.
const {
data: branches,
isLoading: isBranchesLoading,
isSuccess: isBranchesSuccess,
} = useBranches();
} = useBranches({}, { enabled: isBranchFeatureCan });
// Handle fetching bill settings.
const { isFetching: isSettingLoading } = useSettings();

View File

@@ -3,6 +3,8 @@ import { useLocation } from 'react-router-dom';
import { isEmpty, pick, isEqual, isUndefined } from 'lodash';
import DashboardInsider from 'components/Dashboard/DashboardInsider';
import { transformToEditForm } from './utils';
import { Features } from 'common';
import { useFeatureCan } from 'hooks/state';
import {
useCreateVendorCredit,
useEditVendorCredit,
@@ -26,9 +28,13 @@ function VendorCreditNoteFormProvider({
...props
}) {
const { state } = useLocation();
const billId = state?.billId;
// Features guard.
const { featureCan } = useFeatureCan();
const isBranchFeatureCan = featureCan(Features.Branches);
const isWarehouseFeatureCan = featureCan(Features.Warehouses);
// Handle fetching the items table based on the given query.
const {
data: { items },
@@ -62,14 +68,14 @@ function VendorCreditNoteFormProvider({
data: warehouses,
isLoading: isWarehouesLoading,
isSuccess: isWarehousesSuccess,
} = useWarehouses();
} = useWarehouses({}, { enabled: isWarehouseFeatureCan });
// Fetches the branches list.
const {
data: branches,
isLoading: isBranchesLoading,
isSuccess: isBranchesSuccess,
} = useBranches();
} = useBranches({}, { enabled: isBranchFeatureCan });
// Form submit payload.
const [submitPayload, setSubmitPayload] = React.useState();