fix(sales): Filter only sellable items.

fix(queries): Invalidate queries after mutations.
This commit is contained in:
a.bouhuolia
2021-03-14 16:31:21 +02:00
parent 88eaaa3968
commit 0b59a44a4c
25 changed files with 911 additions and 464 deletions

View File

@@ -32,13 +32,6 @@ function CustomerFormProvider({ customerId, ...props }) {
enabled: !!contactId,
},
);
// Handle fetch customers data table
const {
data: { customers },
isFetching: isCustomersLoading,
} = useCustomers();
// Handle fetch Currencies data table
const { data: currencies, isFetching: isCurrenciesLoading } = useCurrencies();
@@ -54,14 +47,12 @@ function CustomerFormProvider({ customerId, ...props }) {
const provider = {
customerId,
customer,
customers,
currencies,
contactDuplicate,
submitPayload,
isNewMode,
isCustomerLoading,
isCustomersLoading,
isCurrenciesLoading,
setSubmitPayload,

View File

@@ -25,11 +25,19 @@ function BillFormProvider({ billId, ...props }) {
isFetching: isVendorsLoading,
} = useVendors({ page_size: 10000 });
// Filter all purchasable items only.
const stringifiedFilterRoles = React.useMemo(() => JSON.stringify(
[{ "fieldKey": "purchasable", "value":true, "condition":"equals"}]
), []);
// Handle fetch Items data table or list
const {
data: { items },
isFetching: isItemsLoading,
} = useItems({ page_size: 10000 });
} = useItems({
page_size: 10000,
stringified_filter_roles: stringifiedFilterRoles
});
// Handle fetch bill details.
const { data: bill, isFetching: isBillLoading } = useBill(billId, {

View File

@@ -19,11 +19,19 @@ function EstimateFormProvider({ estimateId, ...props }) {
estimateId, { enabled: !!estimateId }
);
// Filter all sellable items only.
const stringifiedFilterRoles = React.useMemo(() => JSON.stringify(
[{ "fieldKey": "sellable", "value":true, "condition":"equals"}]
), []);
// Handle fetch Items data table or list
const {
data: { items },
isFetching: isItemsFetching,
} = useItems({ page_size: 10000 });
} = useItems({
page_size: 10000,
stringified_filter_roles: stringifiedFilterRoles
});
// Handle fetch customers data table or list
const {

View File

@@ -38,11 +38,19 @@ function InvoiceFormProvider({ invoiceId, ...props }) {
})
: [];
// Filter all sellable items only.
const stringifiedFilterRoles = React.useMemo(() => JSON.stringify(
[{ "fieldKey": "sellable", "value":true, "condition":"equals"}]
), []);
// Handle fetching the items table based on the given query.
const {
data: { items },
isLoading: isItemsLoading,
} = useItems({ page_size: 10000 });
} = useItems({
page_size: 10000,
stringified_filter_roles: stringifiedFilterRoles
});
// Handle fetch customers data table or list
const {

View File

@@ -32,11 +32,19 @@ function ReceiptFormProvider({ receiptId, ...props }) {
isFetching: isCustomersLoading,
} = useCustomers({ page_size: 10000 });
// Filter all sellable items only.
const stringifiedFilterRoles = React.useMemo(() => JSON.stringify(
[{ "fieldKey": "sellable", "value":true, "condition":"equals"}]
), []);
// Handle fetch Items data table or list
const {
data: { items },
isFetching: isItemsLoading,
} = useItems({ page_size: 10000 });
} = useItems({
page_size: 10000,
stringified_filter_roles: stringifiedFilterRoles
});
// Fetch receipt settings.
const { isLoading: isSettingLoading } = useSettingsReceipts();